Stuxnet - Ein Überblick über die Entwicklung
Stuxnet lieferte mir zuletzt vor 3 Wochen das Thema, als es um die Frage "Stuxnet - Der erste Schritt zum Cyberwar?" ging. Seitdem hat sich einiges getan, und wenn auch noch immer nicht geklärt ist, wer mit Stuxnet wen angegriffen hat, gibt es zumindest über die ersten Fakten hinausgehende Informationen.
Die 0-Day-Schwachstellen
Stuxnet nutzte gleich 4 0-Day-Schwachstellen zur Verbreitung bzw. Privilegieneskalation. Zur Verbreitung diente zu einen die Anfang August von Microsoft außer der Reihe behobene "Shortcut-Lücke", zum anderen eine Schwachstelle im Printspooler, die am September-Patchday behoben wurde. Dabei handelt es sich um keine 0-Day-Schwachstelle im herkömmlichen Sinne, denn sie wurde bereits 2009 erstmals beschrieben, Microsoft aber nicht mitgeteilt. Zur Privilegieneskalation nutzt Stuxnet zwei weitere 0-Day-Schwachstellen. Eine tritt beim Verarbeiten von Tastaturlayouts auf und wurde von Microsoft am Oktober-Patchday behoben, die andere befindet sich im Task-Scheduler und wird später behoben.
Stuxnets Besonderheiten
Stuxnet hatte nicht von Anfang an alle Fähigkeiten des jetzt sein
Unwesen treibenden Wurms. Die Verbreitung über USB-Sticks erfolgt erst
seit März 2010 über die
"Shortcut-Lücke",
davor versuchte der Wurm, sich ganz herkömmlich über die AutoRun-Funktion
zu verbreiten.
Auch dabei gingen die Entwickler aber bereits raffiniert vor: Sie
präparierten die autorun.inf
-Datei so, dass sie sowohl die
AutoRun-Anweisungen als auch das einzuschleusende Schadprogramm enthielt.
Zusätzlich fügten sie zum Kontext-Menü für befallene Massenspeicher einen
zweiten "Open"-Eintrag hinzu, der den Wurm startete. Öffnete ein Benutzer
den Massenspeicher über das Kontextmenü und verwendete er dabei den
falschen "Open"-Eintrag, startete er den Wurm, unabhängig davon, ob die
AutoRun-Funktion aktiviert war oder nicht. Aber wieso sollte man ein
Laufwerk überhaupt über das Kontextmenü öffnen, statt einfach über einen
Doppelklick?
Wie sich der Wurm über die "Shortcut-Lücke" und USB-Sticks verbreitet, hat Sophos in einem Video demonstriert:
Ein weiterer Ansatz zur Verbreitung von Stuxnet besteht in der Manipulation von "Step 7"-Projekten (die zum Programmieren der speicherprogrammierbaren Steuerungen der Siemens-SCADA-Systeme verwendet werden): Eine eingefügte DLL-Datei wird beim Öffnen des Projekts ausgeführt, vergleichbar mit DLL-Preloading-Angriffen.
Für den Fall, dass die Command&Control-Infrastruktur des Wurms nicht mehr zur Verfügung steht, kann er sich auch über ein Peer-to-Peer-Netzwerk aktualisieren und darüber z.B. an neue C&C-Server angepasst werden. Die mit Stuxnet infizierten PCs verbinden sich dazu miteinander und stellen fest, welcher Rechner die aktuellste Version besitzt. Diese wird dann auf den anderen Rechnern installiert.
Eine weitere Eigenheit von Stuxnet, die für Schadsoftware erst seit
kurzem "in Mode kommt": Ein vom Wurm verwendeter Treiber trug eine korrekte
Signatur.
Anfangs
von Realtek,
später von JMicron Technology. Die verwendeten Zertifikate wurden zwar
inzwischen zurückgezogen, das verhindert aber nur, dass nach dem Zeitpunkt
des Zurückziehens signierte Treiber von Windows geladen werden. Alle
vorher signierten Treiber werden weiterhin geladen, was natürlich auch auf
die damit signierten Stuxnet-Versionen zutrifft.
Um an die zum Signieren notwendigen privaten Schlüssel zu gelangen,
setzen die Cyberkriminellen u.a. auf spezielle
Schadsoftware:
Einer dieser Spezialisten heißt bei Symantec
Infostealer.Nimkey
und hat es auf PKCS#12-Zertifikate abgesehen. Die zum Zugriff notwendige
Passphrase späht ein enthaltener Keylogger aus. In Zukunft ist also
vermehrt mit korrekt signierter Schadsoftware zu rechnen, die sich damit
einem seriösen Anstrich gibt.
Mike Wood von Sophos hat auf der Konferenz
"Virus Bulletin 2010"
den Missbrauch digitaler Signaturen durch Schadsoftware
beschrieben.
Eigentliches Ziel von Stuxnet ist nicht die Infektion der Windows-Rechner, sondern der darüber kontrollierten SCADA-Systeme. Dazu manipuliert der Wurm deren Programmable Logic Controller (PLC) und fügt ein Rootkit ein. Dabei geht Stuxnet den Weg über das schon oben erwähnte Step 7: Schadcode zur Manipulation der Kommunikation zwischen Step 7 und PLC wird in eine DLL der Programmierumgebung eingefügt, danach kann der Wurm darüber auf den PLC zugreifen und das Rootkit einschleusen.
Ach ja: Die SCADA-Systeme machen es Stuxnet besonders leicht, da deren Default-Passwort laut Siemens nicht geändert werden soll. Eine Software, die beim Ändern des Default-Passworts nicht mehr oder nicht mehr richtig funktioniert - das klingt doch unheimlich vertrauenserweckend.
Die Funktionsweise - inzwischen kein Geheimnis mehr
Stuxnet kam gerade passend zur Konferenz "Virus Bulletin 2010": Sowohl Symantec als auch Microsoft und Kaspersky nutzten die günstige Gelegenheit und stellten dort ihrer Forschungsergebnisse vor. Sowohl Symantecs "W32.Stuxnet Dossier" (Paper als PDF, Präsentation als PDF) als auch Kasperskys "Unraveling Stuxnet" (PowerPoint-Präsentation als ZIP und PDF) stehen inzwischen als Download zur Verfügung.
Liam O'Murchu von Symantec hat die Wirkungsweise von Stuxnet mit Proof-of-Concept-Code am Beispiel einer Luftpumpe gezeigt (Video der Demonstration)
Unabhängig von der Konferenz gibt es von ESET die Analyse "Stuxnet under the Microscope" (PDF), die als bisher letzte Ergänzung um Informationen über die Privilegieneskalation beim Laden von Tastaturbelegungen erweitert wurde.
Von F-Secure gibt es eine ausführliche FAQ mit Stand vom 1. Oktober, Ralph Langner führt ein "Stuxnet logbook", und Bruce Schneier hat ein interessantes Essay zu Stuxnet geschrieben.
Das Ziel - weiter unbekannt!
Zwar hat der Iran bestätigt, dass " the IP addresses of 30,000 industrial computer systems infected by this malware have been detected", aber das Problem hatten auch andere Staaten, zuletzt z.B. China. Es ist prinzipiell völlig egal, wie viele oder auch wenige Rechner in einem Staat mit Stuxnet infiziert wurden, interessant sind nur die infizierten SCADA-Systeme, und davon hat Siemens bis zum 1. Oktober lediglich 15 registriert, davon sollen sich fünf in Deutschland befinden. Das eigentliche Ziel war sehr wahrscheinlich nicht darunter, da die Infektionen keine Folgen für die Systeme gehabt haben (sollen, denn im Zweifelsfall wird kein Unternehmen zugeben, das Dritte ihre Produktionsanlagen steuern könnten).
Berichte, dass der iranische Atomreaktor in Bushehr oder Uranzentrifugen in Natanz Ziel des Angriffs waren, basieren nur auf Vermutungen. Und wenn ein ehemaliges israelisches Kabinettsmitglied sagt
"We came to the conclusion that, for our purposes, a key Iranian vulnerability is in its on-line information. We have acted accordingly.",
dann ist das in erster Linie die Aussage eines Politikers, und denen darf man ja nie glauben.
Die Schwierigkeiten beim Interpretieren der Verbreitungszahlen fasst ein Eintrag im Analytiker-Tagebuch von Kaspersky gut zusammen:
"Jede Einschätzung der Anzahl infizierter Rechner jedoch kann ausschließlich auf Grundlage der Daten erfolgen, welche die AV-Unternehmen von den Computern ihrer Kunden erhalten. Und diese Daten können nur aus solchen Ländern geliefert werden, in denen ein Unternehmen auch wirklich Kunden hat. Sind dort nun keine Kunden vorhanden oder findet das fragliche Antiviren-Produkt keine breite Anwendung, muss bei sämtlichen Berechnungen von einer erheblichen Fehlerquote ausgegangen werden."
Kaspersky zu Folge gibt es die höchste Infektionszahl in Indien, gefolgt von Indonesien und erst am dritter Stelle folgt der Iran. Weitere Zahlenspielereien gibt es im verlinkten Text. Aussagen über das Angriffsziel lassen sich daraus aber nicht ableiten. Zumal z.B. ESET ganz andere Zahlen nennt, denen zu Folge der Iran auf Platz 1 steht, gefolgt von Indonesien und Indien. Und bei Sophos lautet die Reihenfolge wieder Indien, Indonesien, Iran. Statistiken eben - denen darf man halt nicht mal dann vertrauen, wenn man sie selbst gefälscht hat, oder so ähnlich...
Egal wem der Angriff nun galt, zumindest die EU und die NATO werden nun nervös. Während die European Network and Information Security Agency ENISA allgemein vor weiteren Angriffen warnt, will man bei der NATO bei einem Cyberangriff in Zukunft den Bündnisfall ausrufen. Mehr als eine lächerliche Geste wird daraus aber nicht, da sich der Urheber eines Cyberangriffs nicht mit letzter Sicherheit ermitteln lässt. Wem will man also dann mit Vergeltung drohen? Und wie soll die Vergeltung aussehen? Naja, Hauptsache, man kann mal wieder mit dem Säbel rasseln...
Was bleibt, wenn der Hype vorbei ist?
Chester Wisniewski von Sophos befasst sich in einem Blogbeitrag mit "Stuxnet minus the hype - What you actually need to know" und konzentriert sich dabei auf die Verbreitung über (USB-)Massenspeicher. Und damit hat er völlig recht, denn was ist an Stuxnet denn überhaupt besonderes (außer dass er SCADA-Systeme angreift)? Ohne den SCADA-Teil ist es ein ganz normaler Windows-Wurm.
Wir haben dann einen Schädling, der sich über (USB-)Massenspeicher verbreitet - wie so viele andere vor ihm auch. Wir haben einen Schädling, der eine 0-Day-Schwachstelle zur Verbreitung nutzt - wie andere vor ihm auch. Wir haben einen Schädling, der 0-Day-Schwachstellen zur Privilegieneskalation nutzt - so wie viele andere vor ihm. Neu ist nur die Kombination von gleich vier 0-Day-Schwachstellen. Aber im Grunde gibt es keinen Grund, warum dieser Wurm etwas besonderes sein sollte. Würden mobile Massenspeicher allgemein als Angriffsvektor betrachtet und die Systeme ausreichend geschützt, hätte dieser Wurm sich nie weit verbreiten können. Der Druckerspooler ist aus dem Internet i.A. nicht zu erreichen und meist auch ausgeschaltet, und ohne "Fuß in der Tür" nutzen dem Wurm auch die Privielegieneskalations-Schwachstellen nichts, 0-Day hin oder her.
Risiken und Nebenwirkungen
Stuxnet ist nur ein Problem, weitere entstehen aus der Berichterstattung darüber: Immer, wenn etwas das Interesse der Benutzer weckt, springen Cyberkriminelle auf den Zug auf und nutzen das Thema, um über Suchmaschinenoptimierung Benutzer auf Seiten mit Schadsoftware zu locken. So auch im Fall von Stuxnet, wie z.B. Trend Micro berichtet. Und Symantec warnt vor einem angeblichen "Microsoft Stuxnet Cleaner", der auf dem Rechner jede Menge Schaden anrichtet und u.A. alle Dateien auf Laufwerk C: löscht, aber nicht Stuxnet entfernt (es sei denn, der fällt dem Löschen von C: zum Opfer).
Übersicht über alle Artikel zum Thema
- Stuxnet - Ein paar Fakten
- Standpunkt: Stuxnet - Wer will da wem an die Produktion?
- Standpunkt: Stuxnet - Der erste Schritt zum Cyberwar?
- Standpunkt: Stuxnet - Ein Überblick über die Entwicklung
- Standpunkt: Stuxnet: Kaum neue Fakten, ein neues Gerücht
- Standpunkt: Stuxnet - Stand der Dinge
- Standpunkt: Der Wink mit dem Stuxnet
- Standpunkt: Neues zu Stuxnet, Android-Trojanern, USB-Keyloggern und Facebook
- Standpunkt: Conficker ist wieder da. Und was macht Stuxnet?
- Das RAT, das aus dem Stuxnet kam
- Standpunkt: Clickjacking gegen Flash, urchin.js und Duqu - nichts als Wiederholungen!
- Standpunkt: Neues zu SSL und Duqu
- Standpunkt: Wie gefährlich ist die Duqu-0-Day-Schwachstelle?
- Standpunkt: Neues zu Duqu
Trackbacks
Dipl.-Inform. Carsten Eilers am : 2010 - Ein Rückblick auf ein ereignisreiches Jahr
Vorschau anzeigen
Dipl.-Inform. Carsten Eilers am : Ein weiterer bekannter Advanced Persistent Threat: Stuxnet
Vorschau anzeigen
Dipl.-Inform. Carsten Eilers am : Code Signing - Auch Schadsoftware kann signiert sein
Vorschau anzeigen
Dipl.-Inform. Carsten Eilers am : Kommentare zu diesem und jenem, aber alle mit Sicherheitsbezug!
Vorschau anzeigen
Dipl.-Inform. Carsten Eilers am : USB-Sicherheit 2015: Ein 0-Day-Exploit für Windows - auf USB-Sticks
Vorschau anzeigen