Ein Exposed Host gibt doch ein komplettes Gerät für das Internet frei, also inklusive aller Ports etc., oder?
Jedenfalls hat jemand auf deinen Node-RED Editor zugegriffen und ein Script ausgeführt, normalerweise laden diese Scripts dann Programme runter, die dann wiederum versuchen Passwörter zu knacken oder sowas. Zum Beispiel Medusa, damit sind Standardpasswörter sehr schnell herausgefunden (Bruteforce), kleines Beispiel:
Kann man dann ja alles automatisieren und versuchen mit verschiedensten Protokollen (PcAnywhere, POP3, CVS, FTP, HTTP, IMAP, SMB, SMTP (VRFY), SNMP, SSHv2, MS-SQL, MySQL, NCP (NetWare), PostgreSQL, rexec, rlogin, rsh, Telnet, SVN, VNC, VmAuthd). Oder was weiß ich was Leute noch so anstellen wollen, gibt ja dann keine Grenzen mehr.
Soll heißen, eigentlich solltest du jetzt dein komplettes Netzwerk prüfen und bestenfalls alles komplett zurücksetzen und neu einrichten. Geräte die mit dem Netzwerk verbunden waren, könnten ebenfalls betroffen sein. Je nachdem was das Script gemacht hat.
Wenn man einen Raspberry vom Internet aus erreichbar macht, sollte man zumindest die folgenden Sicherheitsvorkehrungen treffen:
- Passwort und Benutzer ändern
- SSH Port ändern (auf irgendwas über 20.000)
- Node-RED mit Passwörtern versehen (Front- und Backend)
- fail2ban oder besser crowdsec benutzen um Bruteforce-Attacken zu verhindern
- NR Backend unter einer anderen URI abrufbar machen (z.B. /admin)
- NR Port ändern
- Zugriff auf den Raspberry nur aus dem lokalen Netzwerk erlauben
- (Dienste wie Cloudflare ZeroTrust, Tailscale, Wireguard benutzen)
Gibt da noch viele andere Sachen, aber das gehört eigentlich zu den Standarddingen die man vornimmt, wenn man einen Server einrichtet.
Man muss sich auch bewusst sein, was man mit NR alles machen kann, sobald man Zugriff hat. Nämlich so ziemlich alles. Deswegen müssen NR Installationen (bzw. Raspis und Server allgemein) mit Maßnahmen geschützt werden, sobald sie von außen erreichbar sind.
https://nodered.org/docs/user-guide/runtime/securing-node-red#http-node-security