Node-RED Tanpa Login Dibajak (CVE-2026-58115): Cara Cek dan Amankan Port 1880
Oleh Tim APIPedia, Tim Engineering APIPedia · Terbit · 8 menit baca
Celah CVSS 10.0 di Node-RED IoT2050 sudah dieksploitasi lewat satu POST /flows. Cara cek port 1880, aktifkan adminAuth, dan deteksi bot/webshell.

CVE-2026-58115 adalah celah autentikasi pada antarmuka HTTP Node-RED di gateway Siemens SIMATIC IoT2050 Advanced (CVSS 10.0) yang kini sudah dieksploitasi. Penyerang cukup mengirim satu request untuk memasang flow jahat dan menjalankan perintah di server. Polanya mengenai semua Node-RED yang terbuka tanpa login.
Celah ini sebenarnya sudah diumumkan Siemens pada 11 Agustus 2026. Yang membuatnya ramai minggu ini adalah laporan VulnCheck (2 November) dan Help Net Security (3 November): serangan nyata pertama tertangkap pada 30 Oktober 2026, dengan payload berupa bot Linux dan webshell.
Node-RED populer di Indonesia. Banyak dipakai di Raspberry Pi untuk proyek IoT, dashboard pabrik, otomasi rumah, sampai integrasi bot WhatsApp sederhana. Jadi walau CVE-nya resmi untuk satu produk Siemens, pelajaran dan cara ceknya relevan untuk hampir semua pemakai Node-RED.
Apa sebenarnya celah CVE-2026-58115?
Menurut advisori Siemens SSA-834709, perangkat yang terdampak "tidak memberlakukan autentikasi pada antarmuka HTTP Node-RED". Akibatnya siapa pun yang bisa menjangkau perangkat dapat memakai node pemrograman yang mampu menjalankan perintah sistem. Siemens menyebut kode berjalan "dengan hak akses maksimum".
Klasifikasinya CWE-306 (Missing Authentication for Critical Function). Skornya 10.0 di CVSS 3.1 maupun CVSS 4.0, dengan vektor jaringan, tanpa login, dan tanpa interaksi pengguna.
Perlu dipahami: ini bukan bug memori atau parser yang rumit. Node-RED memang dirancang supaya editor bisa membuat flow, dan flow bisa menjalankan perintah shell lewat node exec. Masalahnya, editor dan Admin API Node-RED secara bawaan terbuka tanpa login dan mendengarkan di semua antarmuka (0.0.0.0:1880). Kalau port itu terjangkau dari internet, "deploy flow" sama artinya dengan "jalankan perintah apa pun".
Ringkasan fakta
| Item | Detail |
|---|---|
| CVE | CVE-2026-58115 (ditetapkan Siemens) |
| Jenis | CWE-306, tidak ada autentikasi di antarmuka HTTP Node-RED |
| Skor | CVSS 3.1: 10.0 · CVSS 4.0: 10.0 (Kritis) |
| Produk resmi terdampak | SIMATIC IoT2050 Advanced (6ES7647-0BA00-1YA2), semua versi < V4.3.4.1 dengan Industrial OS dan Node-RED terpasang |
| Versi aman | V4.3.4.1 atau lebih baru |
| Advisori | Siemens SSA-834709 (11 Agustus 2026), CISA ICSA-26-237-03 |
| Eksploitasi | Pertama terlihat 30 Oktober 2026 (canary VulnCheck), 16 kejadian sampai 1 November |
| Status KEV | Masuk VulnCheck KEV; belum di CISA KEV saat laporan ditulis |
Bagaimana serangannya berjalan?
VulnCheck merilis deteksi untuk celah ini pada 27 Oktober. Tiga hari kemudian canary mereka menangkap percobaan eksploitasi pertama. Rekonstruksi alurnya seperti ini:

- Pindai. Penyerang memindai internet secara massal untuk mencari Node-RED yang tidak memakai
adminAuth. - Deploy. Satu request
POST /flows(user agentcurl/8.5.0) mengirim flow berisi nodeinjectyang menyala sekali setelah 1 detik, tersambung ke nodeexec. Server membalas HTTP 200 plus hash revisi flow baru, tanda deploy berhasil. - Eksekusi. Node exec menjalankan
echo <base64> | base64 -d | sh. Perintahnya dibungkus tiga lapis encoding. - Menetap. Dropper mengunduh
bot-linux-amd64dengan wget (cadangannya curl), menyimpannya di/dev/shm/.b, lalu menjalankannya di latar belakang dengansetsidataunohup.
Pada pembaruan 1 November, VulnCheck melihat variasi payload dari IP yang sama: skrip bertahap di /tmp/.s, implan dari server kedua yang disimpan sebagai /tmp/.kworker (menyamar jadi thread kernel), dan webshell. Webshell dibuat dengan node http in (misalnya path /cmd) yang tersambung ke node exec, sehingga penyerang bisa mengirim perintah lewat parameter query kapan saja.
Ada beberapa hal yang tidak diketahui. VulnCheck tidak mengambil sampel bot-nya, jadi fungsinya (mining, DDoS, atau lainnya) belum jelas. Bot di /dev/shm hilang saat reboot, tetapi webshell di dalam flow tetap ada setelah restart.
IP penyerang (4.201.105.116) berada di jaringan Microsoft (AS8075) dan tergeolokasi ke Brasil. IP yang sama juga menembak 125 kali ke 8 CVE lain di Apache Solr, Camunda, Gitea, MLflow, Traefik, dan Joomla. VulnCheck menilainya sebagai pemindaian massal oportunistik, kemungkinan dari VM sewaan atau yang dibobol, bukan serangan tertarget.
Siapa saja yang terdampak?
Secara formal, CVE ini hanya untuk SIMATIC IoT2050 Advanced. Tetapi teknik serangannya berlaku untuk semua Node-RED yang:
- editor/Admin API-nya bisa dijangkau dari jaringan yang tidak tepercaya (internet, Wi-Fi tamu, VPN bersama), dan
- belum mengaktifkan
adminAuthdisettings.js.
Contoh yang sering ditemui di lapangan: Raspberry Pi dengan port 1880 di-forward lewat router rumah atau kantor, VPS murah yang menjalankan container nodered/node-red dengan -p 1880:1880, dan gateway industri di pabrik yang terhubung ke jaringan kantor. VulnCheck juga mencatat bahwa Emerson mendokumentasikan pemakaian Node-RED di lini produknya, tetapi belum memvalidasi apakah produk itu terdampak.
Ostorlab mencatat skala pemakaiannya: sekitar 92.432 unduhan npm per minggu dan lebih dari 327 juta pull Docker Hub (dicek 3 November 2026). Belum ada sumber yang menerbitkan angka pasti berapa instans yang terbuka di internet.
Kronologi singkat

Bagaimana cara mengecek apakah Node-RED saya terbuka?
Lakukan dari mesin di luar jaringan (misalnya dari VPS atau tethering HP), lalu ulangi dari dalam jaringan. Ganti HOST dengan IP atau domain Node-RED Anda.
# 1) Apakah Admin API mau membaca flow tanpa login?
# 200 = TERBUKA (bahaya), 401 = sudah butuh login
curl -s -o /dev/null -w "%{http_code}\n" http://HOST:1880/flows
# 2) Skema login yang dipakai editor
# {} berarti tidak ada autentikasi sama sekali
curl -s http://HOST:1880/auth/login
Lalu periksa langsung di host yang menjalankan Node-RED:
# Node-RED mendengarkan di mana? 0.0.0.0:1880 = semua antarmuka
ss -tlnp | grep ':1880 '
# adminAuth aktif? Baris yang masih diawali // berarti belum aktif
grep -n "adminAuth" ~/.node-red/settings.js
# Versi firmware IoT2050 (aman bila >= V4.3.4.1)
cat /etc/os-release
Mitigasi: apa yang harus dilakukan sekarang?
1. Pengguna SIMATIC IoT2050 Advanced
Perbarui ke V4.3.4.1 atau lebih baru sesuai SSA-834709. Ostorlab mengingatkan bahwa memperbarui paket npm Node-RED saja tidak menutup celah di perangkat ini. Kalau belum bisa update, Siemens menyarankan memperkuat instalasi Node-RED atau mencopotnya.
2. Semua instalasi Node-RED: aktifkan adminAuth
Buat hash password dengan perintah bawaan:
node-red admin hash-pw
# Masukkan password, salin hash yang diawali $2b$...
Lalu isi di ~/.node-red/settings.js dan restart Node-RED:
module.exports = {
// Hanya dengarkan di localhost bila editor diakses lewat reverse proxy/SSH tunnel
uiHost: "127.0.0.1",
adminAuth: {
type: "credentials",
users: [{
username: "admin",
password: "$2b$08$GANTI_DENGAN_HASH_ANDA",
permissions: "*"
}]
},
// Di server produksi yang tidak butuh editor sama sekali:
// httpAdminRoot: false,
};
3. Kurangi permukaan serangan
- Jangan forward port 1880 di router. Akses editor lewat VPN, SSH tunnel, atau reverse proxy ber-HTTPS dengan login.
- Untuk Docker, bind ke localhost:
-p 127.0.0.1:1880:1880. - Batasi TCP 1880 hanya untuk IP admin di firewall.
- Lindungi juga endpoint
http indan Dashboard dengan basic auth atau OAuth, karena itu jalur favorit webshell. - Jalankan Node-RED sebagai user biasa, bukan root.
Deteksi: bagaimana tahu sudah dibobol?
Indikator di bawah berasal dari VulnCheck dan Ostorlab. Tidak menemukan apa-apa bukan jaminan aman, karena percobaan yang gagal bisa tidak meninggalkan jejak. Sebaliknya, cocok dengan indikator juga perlu dikonfirmasi.
# File yang dijatuhkan payload
ls -la /dev/shm/.b /tmp/.s /tmp/.kworker 2>/dev/null
# Node exec dan http in di flow (cek apakah memang Anda yang membuat)
grep -nE '"type": ?"exec"' ~/.node-red/flows*.json
grep -nE '"type": ?"http in"' ~/.node-red/flows*.json
# Proses mencurigakan dan koneksi ke server payload
ps -eo pid,user,cmd | grep -E '\.b$|kworker|bot-linux' | grep -v grep
ss -tnp | grep -E '85\.215\.73\.250|45\.194\.90\.57'
# Log reverse proxy: POST /flows dari IP asing
grep -E 'POST /flows' /var/log/nginx/access.log*
Indikator jaringan yang dirilis VulnCheck:
| Jenis | Indikator | Keterangan |
|---|---|---|
| IP | 4.201.105.116 | Sumber serangan (AS8075) |
| IP:port | 85.215.73.250:8080 | Server payload bot-linux-amd64 dan wget.sh |
| IP:port | 45.194.90.57:38472 | Server .sys_update → /tmp/.kworker |
| File | /dev/shm/.b, /tmp/.s, /tmp/.kworker | Payload yang dijatuhkan |
Kalau menemukan tanda kompromi: simpan dulu flows.json, settings.js, dan log journald sebagai bukti, cabut perangkat dari internet, hapus flow asing, ganti semua kredensial yang tersimpan di node (token API, password database, kunci MQTT), lalu pertimbangkan instal ulang. Kalau Node-RED Anda menyimpan token layanan seperti kunci API di console.apipedia.id, cabut dan buat kunci baru.
Pola "layanan admin terbuka tanpa login" ini mirip dengan kasus yang pernah kami bahas di celah GitLab CVSS 10.0 dan Node2Shell di Node.js: begitu terekspos, pemindai massal biasanya menemukannya dalam hitungan hari.
FAQ
Saya pakai Node-RED di Raspberry Pi, bukan Siemens. Apakah saya terdampak CVE-2026-58115?
Secara formal tidak, karena CVE ini ditetapkan untuk SIMATIC IoT2050 Advanced. Tetapi kalau editor Anda terbuka ke internet tanpa adminAuth, serangan yang sama persis tetap berhasil. Penyerang tidak memeriksa merek perangkat, mereka mencari Node-RED yang mau menerima POST /flows.
Apakah update Node-RED ke versi terbaru menutup celah ini?
Tidak otomatis. Inti masalahnya adalah konfigurasi tanpa autentikasi. Di IoT2050, perbaikannya ada di firmware V4.3.4.1. Di instalasi lain, yang menutup celah adalah adminAuth dan tidak mengekspos port 1880.
Apakah CVE-2026-58115 sudah masuk CISA KEV?
Per laporan VulnCheck (2 November 2026) dan Help Net Security (3 November 2026), belum. Celah ini sudah masuk katalog KEV milik VulnCheck karena ada bukti eksploitasi.
Bot yang dipasang penyerang itu untuk apa?
Belum diketahui. VulnCheck menyatakan tidak mengambil dan menganalisis binernya, jadi tidak membuat klaim soal kemampuannya. Yang pasti, penyerang punya eksekusi perintah penuh di host.
Bagaimana kalau editor Node-RED harus bisa diakses tim dari luar kantor?
Pakai VPN (WireGuard, Tailscale) atau reverse proxy HTTPS dengan login, tetap aktifkan adminAuth, dan beri tiap orang akun sendiri dengan permission seperlunya (misalnya "read" untuk yang hanya memantau).
Sumber
- VulnCheck: Exploitation Targeting Node-RED, a Tool Embedded in ICS Products (2 November 2026)
- Help Net Security: Attackers exploit critical Node-RED flaw to deploy Linux bot and backdoors (3 November 2026)
- Siemens ProductCERT: SSA-834709
- CVE Program: rekaman CVE-2026-58115
- Ostorlab: Siemens IoT2050 Node-RED RCE, Exploited in the Wild
- IoT Tech News: Node-RED admin API flaw exploited to drop Linux bots
Topik: #keamanan #cve #node-red #iot #linux
Tentang penulis
Tim APIPedia — Tim Engineering APIPedia
Tim engineering di balik APIPedia yang membangun dan memelihara API data Indonesia - ongkir, OCR KTP, data wilayah, BMKG, hingga server MCP - dan menulis panduan integrasinya dari pengalaman langsung.