SQL Slammer: Der Wurm, der in 10 Minuten 90 % seiner Ziele infizierte
Im Januar 2003 infizierte ein nur 376 Byte großer Wurm in 10 Minuten mehr als 90 % der verwundbaren Microsoft-SQL-Server. Wie er sich verbreitete und was er traf.

Sofortmaßnahmen
- Installiere SQL Server 2000 Service Pack 3, das den Fix enthält, oder zumindest den Patch aus dem Microsoft-Bulletin MS02-039 oder seinem Nachfolger MS02-061.
- Such auch nach MSDE 2000: Es steckt auch in anderen Produkten, etwa in Visual Studio und der Office Developer Edition, und braucht denselben Fix.
- Sperre UDP-Port 1434 in deiner Firewall, damit der Resolution Service aus dem Internet nicht erreichbar ist.
- Jahr
- 2003
- CVSS-2.0-Wert
- 7,5 hoch
- bis mehr als 90 % der verwundbaren Server infiziert waren
- 10 min
- fiel das Safety Parameter Display System im Kernkraftwerk Davis-Besse aus
- 4 h 50 min
- Reichweite nicht erfüllt
Gezählt wurden mindestens 75.000 infizierte Computer; die tatsächliche Zahl kann höher liegen, doch keine Messung in den Quellen erreicht 100.000 (Inside the Slammer Worm, 2003).
- Massenausnutzung erfüllt
Slammer war ein sich selbst verbreitender Wurm, der in 10 Minuten mehr als 90 % der verwundbaren Computer infizierte (Inside the Slammer Worm, 2003).
- Schaden erfüllt
Im Kernkraftwerk Davis-Besse war das Safety Parameter Display System 4 Stunden und 50 Minuten nicht verfügbar; Steuerung und Schutzfunktionen der Anlage waren nicht betroffen (US-NRC).
- Außergewöhnliche Reaktion nicht erfüllt
Der Patch von Microsoft war seit dem 24. Juli 2002 verfügbar; darüber hinaus belegen die Quellen nur, dass Netzwerke UDP-Port 1434 sperrten (Microsoft, Inside the Slammer Worm).
| Betroffen | Datenbankserver Microsoft SQL Server 2000 und MSDE 2000 |
|---|---|
| CVE | CVE-2002-0649 |
| CVSS-Vektor | AV:N/AC:L/Au:N/C:P/I:P/A:P |
| Schwachstellentyp (CWE) | CWE-119 |
| Behoben in | Microsoft-Patch MS02-039 (24. Juli 2002); enthalten im SQL Server 2000 Service Pack 3 |
| Gefunden von | NGSSoftware (Next Generation Security Software, Großbritannien) |
- 1Patch verfügbar
- 2Microsoft nimmt MSDE 2000 in sein Bulletin auf+1 Tag
- 3Ausbruch beginnt+185 Tage
- 4Die US-Atomaufsicht NRC meldet den Wurm im Netzwerk des Kraftwerks Davis-Besse+401 Tage
Am frühen Morgen des 25. Januar 2003, einem Samstag, infizierte ein Wurm namens SQL Slammer, auch Sapphire genannt, in 10 Minuten mehr als 90 % der verwundbaren Computer im Internet. Ein Wurm ist ein Programm, das sich selbstständig von Computer zu Computer verbreitet. Slammer griff die Datenbanksoftware SQL Server 2000 von Microsoft über eine Sicherheitslücke an, die Microsoft sechs Monate zuvor behoben hatte, und schon sein Datenverkehr legte Netzwerke und andere Systeme lahm.
So funktionierte der Wurm
SQL Server 2000 kann auf einem Rechner mehrere Kopien des Datenbankservers betreiben, sogenannte Instanzen. Ein kleines Hilfsprogramm, der SQL Server Resolution Service, teilt Programmen mit, welchen Netzwerkport – eine Art nummerierte Tür – jede Instanz verwendet. Der Dienst selbst wartet auf UDP-Port 1434 auf Anfragen. UDP ist ein Verfahren, einzelne Datenpakete zu verschicken, ohne vorher eine Verbindung aufzubauen.
Ein Teil dieses Dienstes kopierte Daten aus einem eingehenden Paket in einen Speicherbereich fester Größe, einen sogenannten Puffer, ohne die Länge zu prüfen. Ein einziges präpariertes Paket konnte den Puffer überlaufen lassen und Code im Datenbankserver ausführen. Derselbe Dienst steckt auch in MSDE 2000, einer Datenbank-Engine, die Microsoft zudem in anderen Produkten auslieferte, etwa in Visual Studio.
Slammer war nichts anderes als ein solches Paket: 376 Byte Code, 404 Byte als vollständiges Paket. Er trug keine Schadfunktion, nur den Code, um sich zu verbreiten. Jeder infizierte Computer verschickte Kopien an zufällige Adressen, so schnell seine Netzwerkverbindung es zuließ. Weil UDP keine Antwort braucht, begrenzte nur die Bandbreite der Netze das Tempo. Der Wurm lebte nur im Arbeitsspeicher und hinterließ keine Datei. Ein Neustart entfernte ihn, doch ein nicht gepatchter Server war innerhalb weniger Minuten erneut infiziert.
- Infizierter Serververschickt Kopien, so schnell die Leitung es erlaubt
- Ein UDP-Paket404 Byte, ohne Verbindungsaufbau
- Resolution Servicekopiert das Paket in einen zu kleinen Puffer
- Neues Opferverschickt sofort selbst Kopien
Tempo und Reichweite
Forscher von CAIDA und anderen Instituten rekonstruierten den Ausbruch anhand von Daten zum Netzwerkverkehr und veröffentlichten 2003 ihre Studie „Inside the Slammer Worm“. Ein Scan ist in der Tabelle unten ein Versuch, eine zufällige Adresse zu erreichen.
| Zeit nach der Freisetzung | Was geschah |
|---|---|
| 0 | Slammer beginnt kurz vor 5:30 Uhr UTC, Computer zu infizieren |
| Erste Minute | Die Zahl der infizierten Computer verdoppelt sich alle 8,5 Sekunden |
| Etwa 3 Minuten | Infizierte Computer senden zusammen mehr als 55 Millionen Scans pro Sekunde |
| Etwa 10 Minuten | Mehr als 90 % der verwundbaren Computer sind infiziert |
| 30 Minuten | Die Forscher haben 74.856 verschiedene infizierte Adressen gesehen |
| Innerhalb einer Stunde | Viele Netzwerke beginnen, UDP-Port 1434 zu sperren |
Für den Ausbruch von Code Red im Jahr 2001 nennt die Studie eine Verdopplungszeit von etwa 37 Minuten. Slammer war laut der Studie zwei Größenordnungen schneller, also etwa hundertmal so schnell. Ein einzelner infizierter Computer schickte bis zu 26.000 Scans pro Sekunde; im Durchschnitt waren es etwa 4.000.
Die Forscher zählten mindestens 75.000 infizierte Computer, „vielleicht erheblich mehr“. Der größte Anteil entfiel auf die USA:
| USA | 42,9 % | |
|---|---|---|
| Südkorea | 11,8 % | |
| Standort unbekannt | 7,0 % | |
| China | 6,3 % | |
| Taiwan | 4,0 % | |
| Kanada | 2,9 % | |
| Australien | 2,4 % | |
| Vereinigtes Königreich | 2,0 % | |
| Japan | 1,7 % | |
| Niederlande | 1,5 % |
Anteil an den beobachteten infizierten Adressen, die zehn größten Werte. Quelle: Inside the Slammer Worm (2003).
Was der Datenverkehr traf
Slammer veränderte oder löschte keine Daten. Der Schaden entstand durch seinen Datenverkehr, der Netze überlastete und andere Systeme mit sich riss.
Der am besten dokumentierte Fall ist das Kernkraftwerk Davis-Besse in Ohio, USA. Nach Angaben der US-Atomaufsicht Nuclear Regulatory Commission (NRC) gelangte der Wurm am 25. Januar in das Netzwerk des Kraftwerks. Das Safety Parameter Display System, das wichtige Sicherheitswerte anzeigt, war 4 Stunden und 50 Minuten lang nicht verfügbar, der Prozessrechner des Kraftwerks 6 Stunden und 9 Minuten lang. Laut NRC waren die Steuerungs- und Schutzfunktionen des Kraftwerks nicht betroffen.
Presseberichte aus jener Zeit, die die Studie zitiert, nannten außerdem Geldautomaten, Notruf-Terminals und gestrichene Flüge. Eine verlässliche Zahl zu den Gesamtkosten gibt es nicht: Es liegen nur Schätzungen aus Presse und Branche vor.
Der Patch und die Reaktion
Das britische Unternehmen NGSSoftware hatte Microsoft die Sicherheitslücke gemeldet. Am 24. Juli 2002 veröffentlichte Microsoft das Sicherheitsbulletin MS02-039 mit einem Patch und der Empfehlung: „Systemadministratoren sollten den Patch unverzüglich installieren.“ Einen Tag später nahm Microsoft MSDE 2000 in das Bulletin auf, und der Fix wurde später Teil von SQL Server 2000 Service Pack 3. Laut Microsoft schützt der Patch „SQL Server 2000 und MSDE 2000 wirksam vor dem Wurm SQL Slammer“. Sechs Monate nach seiner Veröffentlichung fehlte er noch auf mindestens 75.000 Computern.
Während des Ausbruchs begannen viele Netzwerke binnen einer Stunde, in ihren Routern und Firewalls alle Pakete an UDP-Port 1434 zu sperren. Da hatte der Wurm fast alle verwundbaren Computer längst erreicht.
Die US-amerikanische National Vulnerability Database bewertet die Sicherheitslücke auf der älteren CVSS-Version 2 mit 7,5 von 10; einen Wert nach der neueren Version 3 gibt es nicht. Der Wert ist nicht höher, weil SQL Server standardmäßig mit den Rechten eines gewöhnlichen Benutzerkontos läuft, nicht mit vollen Systemrechten.
Quellen
- Inside the Slammer Worm, IEEE Security & Privacy (2003, PDF) css.csail.mit.edu
- CAIDA: die Ausbreitung des Sapphire/Slammer-Wurms www-old.caida.org
- Microsoft-Sicherheitsbulletin MS02-039 learn.microsoft.com
- NVD: CVE-2002-0649 nvd.nist.gov
- US-NRC, Information Notice 2003-14: Slammer im Netzwerk des Kernkraftwerks Davis-Besse (PDF) nrc.gov
Weiterlesen: Code RedZurück: ConfickerÜbersicht: Schwachstellen