In den letzten Tagen habe ich mich beruflich und privat wieder mit IT-Sicherheit beschäftigt. Hierbei habe ich privat nach offenen ElasticSearch- und Kibana-Instanzen sowie banalen Netzwerk-Druckern gesucht. Dabei habe ich mich auf die Datenbank Shodan verlassen und nicht selbst aktiv gescannt.
Das Ergebnis war insofern frustrierend, weil ich doch einige offene und fehlkonfigurierte Systeme fand. Manche offenbarten keine vertraulichen Daten, aber dafür den kompletten, maschinenlesbaren Katalog ihrer Produkte. Andere erfassten auch sämtliche Kundenattribute wie Anschrift, Handynummern, Geburtsdaten in ElasticSearch – entweder weil ElasticSearch als Suchmaschine eingesetzt wird oder im Rahmen einer Log-Aggregierung (z.B. mit Logstash und dem Frontend Kibana).
Ich habe alle betroffenen Unternehmen informiert (darunter auch ein großes, altes, renomiertes Schweizer Informatik-Unternehmen, das für seine insbesondere bei Kulturbetrieben in Frankreich verbreitete Ticketing-Anwendung Kundendaten im Rahmen eines Logs der Bonitätsabfrage „veröffentlicht“ – immerhin Klarnamen und Geburtsdaten)
Nur wenige haben sich zurückgemeldet oder gar bedankt. Ich hoffe trotzdem, dass man sich überall Gedanken über die IT-Sicherheit macht und zu blauäugige Cloud-Deployments in Zukunft unterlässt. In mindestens zwei Fällen waren Altsysteme offen für die es „keine Mitarbeiter“ mehr gab. In einem Falle konnte innerhalb des Unternehmens aus den Niederlanden ein Mitarbeiter die Altsyteme offline nehmen, in einem anderen Falle eines deutschen Fachverlages half nicht einmal eine Meldung an den Abuse-Kontakt des Hosting-Providers (QSC) um betroffene (und augenscheinlich schon von Dritten kompromittierten Systeme) offline zu nehmen.
Ich bin dann dazu übergegangen, diese Systeme und offene Systeme ohne Daten oder offensichtlich seit Monaten laufende „Test“-Systeme in einer Liste zu erfassen und diese demm BSI bzw. CERT-Bund mit Bitte um Eskalation/Kommunikation zukommen lassen. Das BSI hatte schon vor fast 2 Jahren vor den Gefahren ungesicherter ElasticSearch-Instanzen gewarnt, aber diese Warnung wurde und wird leider ignoriert.
Weiterhin kann ich meine Recherchen nicht monetarisieren, d.h. offene Systeme zu finden unterhält mich zwar, aber den oft inkompetenten und undankbaren Admins hinterherzulaufen ist nicht sinnvoll. Falls jemand eine plausible und ethische Möglichkeit einfällt, zumindest einen Unkosten-Obulus darüber zu realisieren, bitte ich um Rückmeldung.
Weiterhin habe ich auch noch nach offenen, fehlerhaften Docker-Deployments gesucht, bei denen die REST-Schnittstelle ohne Zugangsprüfung im Netz erreichbar ist. Hierbei bin ich auf ein VMWare-Container-Host-Deployment der Uni Trondheim gestoßen, auf dem bereits Angreifer CPU-Mining-Software gestartet hatten. Die Nodes wurden binnen 24h nach Mail offline genommen, eine Antwort habe ich jedoch nicht erhalten. Auch einige deutsche Webagenturen und Privatpersonen haben ihre Konfiguration verbockt: docker –tls -H <ip>:2376 ps
Ein Trauerspiel ist jedoch die Tatsache, dass auch 2019 noch so viele offene Multifunktionsgeräte/Drucker im Netz ansprechbar sind (ports 515/lpd, 631/ipp, 9100/jetdirect). Zwar sind die meisten Geräte wenigstens mit einem „Administratorpasswort“ gesichert (oder es waren schlicht andere Leute schneller…) doch anonyme Druckaufträge werden anstandslos akzeptiert.
So finden sich beispielsweise noch immer im IP-Netz der Universität Freiburg ca 60-80 offene Drucker mit teils abenteuerlicher Konfiguration (vermutlich Gebrauchtgeräte deren Altkonfiguration nicht gelöscht wurde). Richtig traurig finde ich hier die Tatsache, dass die zuständige RZ-Mitarbeiter eine inhaltlich sehr starke Website zu dem Thema veröffentlicht haben, aber nicht befugt oder willens sind, durch IP-Filter oder „aktive Verfolgung“ der einzelnen Geräte den Sachverhalt in kurzer Zeit zu klären.
Es ist zudem keine Neuheit, dass Sicherheit auch bedeutet, dass man sich „von innen“ nicht ungeschützt aufstellen darf. Spätestens seit BYOD und insbesondere in Netzen mit vielen und wechselnden Nutzern (Uni, Konzernen, etc) muss man Segmentiere und aktiv die Netze managen. Also bei Malware-Wellen ggf. eine Weiterverbreitung durch infizierte Systeme verhindern, bestimmte Dienste und Ports sperren, ein IDS betreiben und Traffic-Anomalien auswerten. Selbst in großen, dezentralen Organisationen gibt es keine Ausreden: Man muss die Aufgabe eben delegieren.
Für so triviale Dinge wie offene Drucker kann man sich mit ein paar Zeilen Bash einen Cronjob schreiben, der täglich eine Übersicht der Übeltäter per Mail erstellt. Oder auf externe Services wie eben Shodan zurückgreifen und sich kostenpflichtig informieren lassen. Letztlich muss man dann aber auch die Durchführungsgewalt haben und durchgreifen können, sollten sich Unterbereiche oder Endnutzer (wiederholt) den Anweisungen widersetzen.
Zum Schluss noch ein Abschnitt zu Obskuritäten: Uralt-Cisco-Router und Debian-Nodes mit 15-20 Jahre alter Firmware/Release. Während man insbesondere in Afrik noch ein paar steinalte Cisco-Router finden kann, so sind auch bei uns in Deutschland einige Legacy-Webhosting-Systeme aus den frühen 0er-Jahren online, z.B. ein System mit in 2003 abgelaufenen TLS-Zertifikaten. Somit ist auch davon auszugehen, dass seitdem keine Wartung mehr stattgefunden hat, worauf auch uralte Software-Versionen bei SSH und „Confixx“ hindeuten.
TL;DR
Obwohl mittels Shodan.io offensichtliche Konfigurationsfehler und Verwundbarkeiten in kürzester Zeit entdeckt/monitort werden können, sind noch immer verwundbare Systeme auffindbar. Hierzu reicht ein Browser und minimale Kenntnisse zur Ermittlung und „Exploitation“ aus.