Das Leiben und Leben des Computerwurms Stuxnet

Onkel_Dithmeyer

Redaktion
☆☆☆☆☆☆
Mitglied seit
22.04.2008
Beiträge
12.939
Renomée
4.009
Standort
Zlavti
  • BOINC Pentathlon 2011
  • BOINC Pentathlon 2012
  • BOINC Pentathlon 2013
  • BOINC Pentathlon 2014
  • BOINC Pentathlon 2015
  • BOINC Pentathlon 2016
  • BOINC Pentathlon 2017
  • BOINC Pentathlon 2018
  • BOINC Pentathlon 2019
  • SETI@Home Intel-Race II
  • BOINC Pentathlon 2020
  • THOR Challenge 2020
  • BOINC Pentathlon 2021
  • BOINC Pentathlon 2022
  • BOINC Pentathlon 2023
<center><img src="http://www.planet3dnow.de/photoplog/file.php?n=12111&w=o" alt="" border="1"></center>
Das Internet ist voll von Viren, Würmern und Trojanern. Dennoch sind alle paar Jahre Vertreter dieser Gattung dabei, die es bis in die Allgemein- und Boulevard-Presse schaffen wie etwa "I love you", Blaster, Sasser oder Conficker. Aktuell macht ein Virus - genauer gesagt ein Wurm - Schlagzeilen, der unter dem Namen Stuxnet bekannt geworden ist. Was ihn so besonders macht, will der heutige Artikel aufzeigen, den Community-Mitglied und damit Gast-Autor "Onkel_Dithmeyer" für uns geschrieben hat.

Entdeckung​

Den ersten Kontakt verzeichnete am 16 Juni 2010 die weißrussische Firma VirusBlokAda nach einem Hinweis eines iranischen Vertragsnehmers. Das Erscheinen wurde durch Systemabstürze und anderen Störungen begleitet. VirusBlokAda bezeichnete den Wurm als W32.Stuxnet und klassifizierte ihn als Rootkit.Tmphider. [1]
[BREAK=Fortbewegung]

Fortbewegung​

Der Wurm nutzt dazu eine einzigartige Fähigkeit sich über *.Ink-Dateien zu starten. Das heißt, es reicht aus, einen USB-Stick in Windows-Explorer oder jedem anderen Explorer der Icons anzeigen kann zu öffnen, um den Wurm in ein System zu locken. Dabei richtet Stuxnet zwei Treiber ein: mrxnet.sys und mrxcls.sys. Diese injizieren den Schadcode in System-Prozesse und verhindern die Erkennung der Malware. Das heißt auf dem USB-Stick ist keine Malware zu finden. [2] Das dazu genutzte Zero-Day-Exploit wird später als „Vulnerability in Windows Shell Could Allow Remote Code Execution MS10-046“ bezeichnet. (Die Sicherheitslücke scheint schon seit Windows 2000 zu existieren) [1] Beide installierten Treiber sind dabei mit dem digitalen Zertifikat der Realtek Semiconductor Corporation signiert. [2]

Einen Monat später am 17. Juli 2010 identifiziert Eset einen weiteren Treiber jmidebs.sys, der mit dem Zertifikat der JMicron Technology Corp. versehen ist. Beide Firmen (Realtek und JMicron) haben eine Niederlassung im Hsinchu Science and Industrial Park in Taiwan. Der erwähnte Treiber verfügt dabei über sehr ähnliche Funktionen wie die beiden Ersten. Er soll dafür verantwortlich sein, Code in laufende Prozesse zu schleusen und offenbar Informationen zu stehlen. Desweiteren lässt sich das Datum des Compilierens ableiten, der 14 Juli 2010. Damit ist der Code deutlich jünger als der Vorherige, der auf den 25. Januar 2010 zurückgeht. Die digitalen Signaturen weisen auf erhebliche Ressourcen der Erschaffer von Stuxnet hin. [3]

<center><a href="http://www.planet3dnow.de/photoplog/index.php?n=12110"><img src="http://www.planet3dnow.de/photoplog/file.php?n=12110" border="1" alt="Das Leiben und Leben des Computerwurms Stuxnet"></a></center>

Um die Chancen zur Ausführung zu verbessern, wird zudem Autorun außer Funktion gesetzt und ein neuer Befehl im Kontext-Menü hinzugefügt (%Windir%\System32\shell32.dll,-8496). Der Nutzer dieses Systems wird beim Aufrufen des Kontext-Menüs zwei Öffnen-Einträge finden. Einer der beiden wird Stuxnet ausführen, dieser wiederum öffnet den Datenträger, damit keine Verwirrung entsteht.

<center><a href="http://www.planet3dnow.de/photoplog/index.php?n=12108"><img src="http://www.planet3dnow.de/photoplog/file.php?n=12108" border="1" alt="Das Leiben und Leben des Computerwurms Stuxnet"></a></center>

Verbreitung​

Am 20 Juli 2010 richtet Symantec ein System ein, das den Verkehr zu den Befehls- und Kontrollservern (C&C) von Stuxnet aufzeichnet. Damit konnte erstmals die tatsächliche Verbreitung des Wurms aufgezeigt werden. Der Stuxnet-Wurm bevorzugt dabei warmes Klima in Ländern mit umstrittenen Atomprogrammen. Gelegentlich ist er aber auch in anderen Gebieten anzutreffen.

<center><a href="http://www.planet3dnow.de/photoplog/index.php?n=12106"><img src="http://www.planet3dnow.de/photoplog/file.php?n=12106" border="1" alt="Das Leiben und Leben des Computerwurms Stuxnet"></a>
Prozentuale Verteilung</center>

Insgesamt hatte der Wurm am 29. September 2010 rund 100.000 Heime gefunden. Durch die hohe Verbreitung im Iran sieht man im Iran das Ursprungsland bzw. das Land, in dem er ausgesetzt wurde. Symantec geht davon aus, dass der Iran das Ziel des Wurmes ist. Andere bewohnte Systeme können als „Kollateralschaden“ bezeichnet werden. Seit dem 22. August 2010 werden keine neuen Infektionen aus dem Iran gemeldet. Dies steht im direkten Zusammenhang mit dem Blockieren der Verbindungen zu den C&C von Seiten des Irans. In den übrigen Ländern kann sich der Wurm aber weiter nach belieben ausbreiten:

<center><a href="http://www.planet3dnow.de/photoplog/index.php?n=12107"><img src="http://www.planet3dnow.de/photoplog/file.php?n=12107" border="1" alt="Das Leiben und Leben des Computerwurms Stuxnet"></a></center>
[BREAK=Nestbau]

Nestbau​

Stuxnet ist sehr speziell, wenn es um den Nestbau geht. Nur wenn er ganz bestimmte Bedingungen vorfindet, beginnt er sich einzurichten. Als erstes überprüft er, ob im potentiellen Heim ein anderer Stux lebt. Danach, ob es sich um ein 32-bit- oder 64-bit-System handelt. Der Wurm scheint sich in 64-bit-Systemen nicht wohl zu fühlen. Danach überprüft er das Betriebssystem auf die genaue Version. Er mag nämlich nur 7 Versionen:
  • Windows 2000
  • Windows XP
  • Windows 2003
  • Windows Vista
  • Windows Server 2008
  • Windows 7
  • Windows Server 2008 R2
Danach überprüft er, ob er Admin-Rechte hat. Wenn er keine hat wird je nach System einer von zwei Zero-Day-Exploits ausgeführt. Bei Win2000 & XP wird „Windows Win32k.sys Local Privilege Escalation vulnerability (MS10- 073)" genutzt, welche am 12. Oktober gepatcht wurde. Die Andere genutzte Lücke in den anderen BS wurde noch nicht gepatcht, weshalb noch keine genaueren Details vorhanden sind.

Mit den Zero-Day-Exploits (vorher unbekannte, erstmals genutzte Sicherheitslücken) startet der Wurm einen bestimmten System-Prozess neu und startet sich mit ihm um die Einrichtung vorzunehmen.

Sollte er allerdings Adminrechte vorfinden, so bevorzugt er die Suche nach einem passendem Antiviren-Programm. Dazu gehören:
  • Kaspersky KAV (avp.exe)
  • Mcafee (Mcshield.exe)
  • AntiVir (avguard.exe)
  • BitDefender (bdagent.exe)
  • Etrust (UmxCfg.exe)
  • F-Secure (fsdfwd.exe)
  • Symantec (rtvscan.exe)
  • Symantec Common Client (ccSvcHst.exe)
  • Eset NOD32 (ekrn.exe)
  • Trend Pc-Cillin (tmpproxy.exe)
Dabei durchsucht er auch die Registry nach Einträgen von KAV v6 bis v9, McAfee und Trend PcCilin. Wird eines der Programme gefunden injiziert der Wurm in eines von ihnen den Schadcode.

Insgesamt wird man Stuxnet in seinem System als Lsass.exe, Winlogon.exe, Svchost.exe oder in einem der Virenprogramme wiederfinden. Interessant dabei ist, dass der Wurm noch vor der BS-Prüfung zwei Werte abfragt. Zum einen den Regkey NTV DM Trace nach dem Wert "19790509" und das System-Datum. Der erste Wert scheint keine genaue Funktion zu haben. Findet der Wurm diesen aber, dann wird er das System nicht infizieren. Es könnte also eine „Nicht infizieren“-Markierung sein. Die Zahl kann als Datum gelesen werden. Dabei kommt man auf den 9. Mai 1979. Dabei kann es sich um einen Geburtstag oder ähnliches handeln, bemüht man allerdings Wikipedia, so fällt einem ein Ereignis auf, das irgendwie im Zusammenhang mit dem Infektionsland steht. An diesem Tag wurde Habib Elghanian auf Befehl des neuen islamischen Regimes von einem Hinrichtungskomando in Teheran erschossen. Er war der Vertreter der Gemeinde im Iran lebender Juden. Der Tag beschreibt den Anfang des Exodus der im Iran lebenden Juden, der bis heute andauert.

Aber auch die Datumsabfrage ist interessant, denn ist das System-Datum älter als der 24. Juni 2012 wird es verschont. Dieses Datum wird während der Installation sogar noch ein zweites mal überprüft.

Abschließend schreibt er sich noch in die autorun.inf und richtet ein Rootkit ein, welches die Binärdaten versteckt.
[BREAK=Kommunikation und Fortpflanzung]

Kommunikation​

Stux kann Kontakt zu Verwandten und zu zwei zentralen Adressen im Netz aufbauen. Die beiden Internetseiten
  • mypremierfutbol.com
  • todaysfutbol.com
können genutzt werden um neuen Code nachzuladen, oder aber gesammelte Informationen zu übertragen. Die Server stehen in Malaysia und Dänemark. Diese Seiten sind mittlerweile dicht, aber der Wurm hat die Möglichkeit, sich mit neuen Adressen auszustatten. Dies wurde aber noch nicht beobachtet. Die übertragenen Informationen reichen von der BS-Version über die IP-Adresse bis hin zum Computernamen und noch einigen ungeklärten Werten.

Die Kommunikation zu Genossen via P2P erfolgt via 5 verschiedenen Schwachstellen. Dabei wird ein weiteres Zero-Day-Exploit in der Druckerwarteschlange genutzt (MS10-061). Ausgetauscht werden vor allem Versionsinformationen. Findet ein Wurm eine weiterentwickelte Variante fordert er ein Update an. Dieses erhält er dann in Form einer *.exe. Beachtlich dabei ist, dass Stux eigentlich eine *.dll ist und um dieses Update zu überführen erst eine ausführbare Version von sich selbst schreiben muss. Eine zweite Sicherheitslücke (MS08-067), die genutzt wird, ist bereits im April 2009 gefixt worden. Damit Stux unerkannt bleibt, überprüft er die Antiviren-Definitionen. Diese müssen vor dem ersten Januar 2009 und die Kernel-Dateien vor dem 12. Oktober 2008 (dem Patchday) erstellt sein.

Fortpflanzung​

Stux kopiert sich selber auf alle verfügbaren tragbaren Medien. Der Umstand, dass er aber auch Infektionsdaten von Wechselmedien entfernen kann, ist einmalig. Dabei entfernt er sich beispielsweise von Datenträgern, wenn diese schon 3 weitere Computer infiziert haben. Da Stux ungern alleine wohnt, bringt er meistens seine Artgenossen im Netzwerk in benachbarten Systemen unter.
[BREAK=Tagewerk und Zusammenfassung]

Tagewerk​

Nachdem wir jetzt geklärt haben, wie sich der Wurm verhält, wie er sich verbreitet und das ganze schon sehr bemerkenswert ist, kommen wir zu dem Zweck zu den Erschaffern, die Stux entwickelt haben. Denn auch hier finden wir ein Novum.
Er richtet wirklichen Schaden nur auf S7-315-2 CPUs mit bis zu 6 angeschlossenen CP-342-5 Modulen an, welche jeweils bis zu 31 Motoren ansteuern können. Die S7 gehören zu Siemens PLC-Systemen und stehen in den USA teilweise unter Exportbeschränkungen, da sie für schnelldrehende Zentrifugen nötig sind, die zur Urananreichung genutzt werden können. Was macht Stuxnet nun genau? Das konnte Symantec nun mit Hilfe eines Spezialisten für PLC-Systeme nachstellen. Er verändert die Ansteuerung möglicher angeschlossener Zentrifugen an der CP-342-5. Diese werden über einen Frequenzumrichter angesteuert. Dieser muss explizit von einem finnischen oder iranischen Hersteller stammen. Nun läuft Stux einen bestimmten Algorithmus ab. Erst ein mal wird rund 13 Tage lang der Produktionsvorgang beobachtet. Dabei erkennt der Wurm, ob die Anlage in Herz oder DeziHerz angesteuert wird. Nur wenn die Anlagen mit 807 bis 1210 Hz laufen erhöht Stux die Frequenz kurz auf 1410 Hz, um dann schlagartig auf 2 Hz abzubremsen und anschließend wieder auf die normale Arbeitsfrequenz zu gehen. Symantec bezeichnet dies als einen Sabotageakt, da durch das ständige Hochfahren und Abbremsen der Geräte außerhalb des Arbeitsbereiches der Verschleiß steigt. Zudem soll die Qualität des so gewonnen Urans abnehmen. Auch dieser Code wird mittels eines Rootkits auf den PLCs versteckt.

Zusammenfassung​

Was ist so besonders an Stuxnet? Er ist der erste seiner Gattung. Für seine Verbreitung und sein Arbeiten nutzt er vier Zero-Day-Exploits, zwei digitale Zertifikate, injiziert seinen Code in Kontrollsysteme von industriellen Anlagen und versteckt seinen Code. Er ist äußerst komplex und setzt erhebliche Ressourcen und Know-How voraus. Er verkörpert quasi den Albtraum, der in vielen Kino-Filmen gezeigt wird.

Symantec schreibt weiter, dass es eine sehr spannende Herausforderung war, den Wurm mittels Reverse-Engeneering zu verstehen. Man hoffe aber, nie wieder einen seiner Art zu finden.


[1] Symantec w32_stuxnet_dossier.pdf (http://www.symantec.com/content/en/..._response/whitepapers/w32_stuxnet_dossier.pdf)
[2] VirusBlokAda (http://anti-virus.by/en/tempo.shtml)
[3] Eset Threat Blog (http://blog.eset.com/2010/07/19/win32stuxnet-signed-binaries)
[4] h-online (http://www.h-online.com/security/news/item/Trojan-spreads-via-new-Windows-hole-1038992.html)
 
Zuletzt bearbeitet von einem Moderator:
Zurück
Oben Unten