Hauptmenü

Angriffsversuch auf fhem?

Begonnen von MichaelO, 07 Juni 2020, 21:47:31

Vorheriges Thema - Nächstes Thema

MichaelO

Moin,
ich habe seit lange fhem auf einem Raspi laufen und für GeoFency einen Port zwecks Webhook auf den pi weitergeleitet. Dazu allowed mit BasicAuth... und dachte, dass sei sicher. Ansonsten gehe ich nur per VPN auf den Pi. Nun hatte ich vor kurzem erstmals eine Menge komischer Einträge im Log (Auszug daraus)...

2020.06.01 04:50:06 1: FHEMWEB SSL/HTTPS error:  SSL accept attempt failed error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number (peer: 34.89.208.72)
2020.06.01 04:50:06 1: FHEMWEB SSL/HTTPS error: Das Argument ist ungültig SSL wants a read first (peer: 34.89.208.72)
2020.06.01 04:50:52 1: FHEMWEB SSL/HTTPS error:  SSL connect accept failed because of handshake problems (peer: 34.89.208.72)
2020.06.01 04:51:47 1: FHEMWEB SSL/HTTPS error:  SSL connect accept failed because of handshake problems (peer: 34.89.208.72)
...
2020.06.01 05:06:27 1: FHEMWEB SSL/HTTPS error:  SSL accept attempt failed error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number (peer: 34.89.208.72)
2020.06.01 05:06:27 1: FHEMWEB SSL/HTTPS error:  SSL accept attempt failed error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number (peer: 34.89.208.72)
2020.06.01 05:06:33 1: FHEMWEB SSL/HTTPS error:  SSL accept attempt failed error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number (peer: 34.89.208.72)
...
2020.06.01 05:06:34 1: FHEMWEB SSL/HTTPS error: Das Argument ist ungültig SSL wants a read first (peer: 34.89.208.72)
2020.06.01 05:06:40 3: WEBhook_34.89.208.72_55794: unsupported HTTP method , rejecting it.
2020.06.01 05:10:13 3: WEBhook_34.89.208.72_45461: unsupported HTTP method TRACE, rejecting it.
2020.06.01 05:10:14 3: WEBhook_34.89.208.72_45461: unsupported HTTP method TRACK, rejecting it.
2020.06.01 05:12:20 3: WEBhook_34.89.208.72_54689: unsupported HTTP method Host:, rejecting it.
2020.06.01 05:12:21 1: FHEMWEB SSL/HTTPS error:  SSL connect accept failed because of handshake problems (peer: 34.89.208.72)
2020.06.01 05:14:19 3: WEBhook_34.89.208.72_39009: unsupported HTTP method Secure, rejecting it.
2020.06.01 05:14:23 3: WEBhook_34.89.208.72_49583: unsupported HTTP method HEAD, rejecting it.
2020.06.01 05:14:24 3: WEBhook_34.89.208.72_47873: unsupported HTTP method PUT, rejecting it.
2020.06.01 05:14:25 3: WEBhook_34.89.208.72_50725: unsupported HTTP method OPENVAS-VT, rejecting it.
2020.06.01 05:14:26 3: WEBhook_34.89.208.72_60375: unsupported HTTP method HEAD, rejecting it.
2020.06.01 05:14:26 3: WEBhook_34.89.208.72_45127: unsupported HTTP method PUT, rejecting it.
2020.06.01 05:14:29 3: WEBhook_34.89.208.72_43235: unsupported HTTP method OPENVAS-VT, rejecting it.
...
2020.06.01 05:21:54 3: WEBhook_34.89.208.72_60031: unsupported HTTP method ------WebKitFormBoundarybzq9yiXANBqlqUBo, rejecting it.
2020.06.01 05:21:54 3: WEBhook_34.89.208.72_60031: unsupported HTTP method pload-Vulnerability-Test, rejecting it.
2020.06.01 05:21:54 3: WEBhook_34.89.208.72_60031: unsupported HTTP method Upload, rejecting it.
2020.06.01 05:22:26 1: FHEMWEB SSL/HTTPS error:  SSL accept attempt failed error:14094085:SSL routines:SSL3_READ_BYTES:ccs received early (peer: 34.89.208.72)
2020.06.01 05:23:46 3: Login denied for user >root< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:46 3: Login denied for user >root< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:46 3: Login denied for user >root< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:46 3: Login denied for user >MGR< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:46 3: Login denied for user >MAIL< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:46 3: Login denied for user >storwatch< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:46 3: Login denied for user >admin< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:47 3: Login denied for user >user< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:47 3: Login denied for user >MGR< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:47 3: Login denied for user >at4400< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:47 3: Login denied for user >FIELD< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:47 3: Login denied for user >root< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:47 3: Login denied for user >HELLO< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:47 3: Login denied for user >mtch< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:47 3: Login denied for user >User< via WEBhook_34.89.208.72_45565
2020.06.01 05:23:47 3: Login denied for user >device< via WEBhook_34.89.208.72_45565
...
2020.06.01 05:25:51 3: WEBhook_34.89.208.72_53481: unsupported HTTP method PUT, rejecting it.
2020.06.01 05:26:11 3: Login denied for user >support< via WEBhook_34.89.208.72_43611
2020.06.01 05:26:16 1: FHEMWEB SSL/HTTPS error:  SSL connect accept failed because of handshake problems (peer: 34.89.208.72)
...


Das sieht mir irgendwie nach einem Angriffsversuch aus?!? Brute Force und sonstwas?

Ist die Zahl hinter der IP und dem Unterstrich der Ziel-Port? Das wäre komisch, die sollten nämlich alle nicht beim Pi landen, da nur 8088 offen ist. Muss ich mir Gedanken machen und wenn ja, welche? Eigentlich sollte PFSense alles bis auf den 8088 vom Pi fern halten, und den muss ich doch zwangsläufig wegen GeoFency offen halten... Hat wer Tipps für mich?

Danke
Michael

viegener

Ich sage jetzt mal nichts zu "basic auth und sicher"  :o - aber ja sieht aus wie ein klassischer script-angriff - offener port und dann alles durchprobieren. Eher kein professioneller Angriff.

Es gibt Anleitungen wie ma zumindest einen reverseproy (nginx oder apache) aufsetzt, das finde ich persönlich zwar auch nur maximal einen Kompromiss aber schonmal besser,

Und Nein der Port ist natürlich der Ursprungsport...



Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

steffen83

Ich hatte es Mal so eingestellt, das wenn ich von extern auf die GUI möchte, das ich zuvor etwas per Telegramm an den Pi schicken musste. Der hat den Port dann quasi aufgemacht.

Gesendet von meinem MI 8 mit Tapatalk

Raspberry Pi 3 (Noobs, aktuelle Fhem und Pilight) | FHEMduino | HM-OCCU-SDK | HM-Sec-SCo | HM-Sec-SD-2 | HM-CC-RT-DN | HM-LC-Bl1PBU-FM

laserrichi

also seitdem ein Kollege einen Einbruch in sein Heimnetz hatte (vermutlich über QNAP NAS oder Raspberry)  habe ich alles abgeriegelt, kein Portforwarding!! Und ich kann es nur Empfehlen, keine Ports zu öffnen.
Nur mit VPN und das kann ja mitlerweile jedes Handy.
Und wenn man mal beobachtet was alles so versucht "und täglich grüßt das Murmeltier" ins Heimnetz zu kommen das ist schier unglaublich.

Aber die Gefahr sitzt meist innen, da von innen ja alles geöffnet werden kann. Eine Firewall zusätzlich wird bald auch in Heimnetzen üblich sein, denn es gibt gefühlt mehr Hacker als seriöse Geldverdiener.
Ich beschäftige mich momentan mit OPNSense und PFsense. Gibt hier und da aber dinge die mir noch nicht gefallen.

Grundsätzlich sollte man sich wirklich Gedanken machen über jeden einzelnen notwendigen Port und dessen Zugriffsmöglichkeiten. Die Heimnetze wachsen ohne ende, ich hab schon extra Excel Tabelle für das ganze zeugs, aber mir reicht noch das subnet ;)

RaspberryPi 4 Bullseye,Homematic,Z-Wave,Rademacher Duofern,Signalduino,Fritz7590,ESPEasy,Tasmota,Robonect,Kameras,1-Wire,Modbus,Solar,Maranz,VU+,ulanzi tc001 mit awtrix light

MichaelO

Moin,
@all: danke für die Antworten. Grundsätzlich hab ich alle Ports zu, brauche aber den einen wegen GeoFency, da sonst der Webhook nicht funktioniert. Mal sehen, ob das nochmal vorkommt, war nur insbesondere wegen der Portnummern etwas verunsichert.

Gruß
Michael

Jamo

Du kanbst geofency auch über VPN einbinden, dein Handy muss dann nur den VPN Tunnel "on-demand" aufmachen, sobald geofency seinen request senden will. Unter iOS geht das Betriebsystemseitig, unter Android weiss ich nicht ob/wie es geht.
Bullseye auf iNUC, Homematic + HMIP(UART/HMUSB), Debmatic, HUEBridge, Zigbee/Conbee III, FB7690, Alexa (fhem-lazy), Livetracking, LaCrosse JeeLink, LoRaWan / TTN / Chirpstack, Sonos, ESPresence

Wernieman

Also FHEM würde ich NIEMALS direkt ins Netz lassen. Mindestens einen Proxy davor oder (besser) VPN (als Minnimum per ssh ;o) ). Ich möchte hier keinen FHEM-Programmierer schlecht machen, aber FHEM ist auf solches, nötiges Sicherheitslevel nicht entwickelt worden.

Probiert wurde mit einer Google-VM (Laut IP). Zuerst verschiedene Protokolle, dann verschiedene User. Auch dagegen kann (und sollte) man sich schützen (Stichwort fail2ban oder ähnliche Tools).

Nur mal als Randanmerkung:
Mußte letzte Woche berufsmäßig einen neuen Server (im Netz) aufsetzen. Normalerweise braucht es 8 Minuten, bis das erste "Passwortaufprobier" Script gegen ssh ankommt .. diesmal wurde es noch deutlich getoppt.

Und was mir noch auffällt:
Gegen Port 80 habe ich noch niemals solche Angriffe gesehen (weder privat noch beruflich). Der Angreifer hat also gezielt dedizierte Nicht-Standard-Tools gesucht ....
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

viegener

Zitat von: MichaelO am 08 Juni 2020, 07:02:25
Moin,
@all: danke für die Antworten. Grundsätzlich hab ich alle Ports zu, brauche aber den einen wegen GeoFency, da sonst der Webhook nicht funktioniert. Mal sehen, ob das nochmal vorkommt, war nur insbesondere wegen der Portnummern etwas verunsichert.

Gruß
Michael

Es gibt einen guten Grund verunsichert zu sein, auch wenn das vermutlich nur ein geskripteter Angriff mit dem Ausprobieren von HTTP-Methods und Kennungen war. Diese Art ANgriffe auf offene Ports sind inzwischen ziemlicher Standard, da sich generell Tools zur Überprüfung der Sicherheit (z.B. OPENVAS) nicht nur zum Absichern sondern auch zum Einbrechen verwenden lassen.

"Grundsätzlich hab ich alle Ports zu, brauche aber den einen wegen GeoFency" - Der Unterschied liegt nicht zwischen 1 und mehr Ports offen sondern zwischen zu und auf - bei Dir ist AUF!

Ich kann nicht abschätzen inwieweit der FHEMWeb-Server sicher gegen Angriffe ist (OS command injection?) - man kann hoffen, dass Apache/nginx sicherer ist aber generell ist der bereits gegebene Tipp VPN zu bevorzugen. Ich halte pfsense übrigens nicht für eine Absicherung...

Aus dem logfile ist NICHT ersichtlich, dass der Angriffsversuch abgewehrt wurde. Wenn er erfolgreich war, würde das vermutlich gerade nicht im Logfile stehen - Also würde ich mir Sorgen machen, um die Angriffsversuche die nicht auftauchen



Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

MadMax-FHEM

Wobei man ja ehrlicherweise sagen muss: auch vpn bedingt mind. einen offenen Port ;)

Gruß (und weg), Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Wernieman

Alllerdings dürfte die Gängige VPN-Software besser sicherheits-getestet sein als FHEM ... aber ich stimme Dir zu, auch mit VPN kann man viel Mist bauen ...
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

MadMax-FHEM

Zitat von: Wernieman am 08 Juni 2020, 12:27:00
Alllerdings dürfte die Gängige VPN-Software besser sicherheits-getestet sein als FHEM ... aber ich stimme Dir zu, auch mit VPN kann man viel Mist bauen ...

Jep, stimme ich dir zu... :)

Mist bauen: z.B. nicht kontinuierlich (Sicherheits-) Updates "fahren"...

Ich wollte nur auf die "Diskrepanz" zwischen: KEINEN Port offen aber ich nutze vpn "hinweisen" ;)

Gruß, Joachim

P.S.: ich selbst nutze auch vpn mit fail2ban... Und nat. regelmäßigen Updates... ;)
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Wernieman

Naja .. wenn Du meinen Zugang Testen würdest, würdest Du ssh und http/https finden .... letzteres aber gegen einen proxy mit Passwortschutz. Fail2Ban (o.Ä.) sollte eigentlich Selbstverständlich sein ....
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

MadMax-FHEM

OT:

Zitat von: Wernieman am 08 Juni 2020, 12:43:25
Naja .. wenn Du meinen Zugang Testen würdest, würdest Du ssh und http/https finden .... letzteres aber gegen einen proxy mit Passwortschutz. Fail2Ban (o.Ä.) sollte eigentlich Selbstverständlich sein ....

Ah: schweizer Käse ;)

(mit Minenfeld dahinter ;)  )

Ende OT

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Wernieman

Der Unterschied: Ich mache so etwas beruflich ....
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

MadMax-FHEM

Zitat von: Wernieman am 08 Juni 2020, 13:11:36
Der Unterschied: Ich mache so etwas beruflich ....

Dachte ich mir schon, drum ja: ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)