· 4 Minuten Lesezeit

Fehlerhaftes Update legt Millionen von Windows-Maschinen lahm: Was ist passiert? Eine Detailanalyse.

Ein fehlerhaftes CrowdStrike-Update legte am 19. Juli 2024 weltweit 8,5 Millionen Windows-Maschinen lahm. Lest hier unsere detaillierte Analyse.

Ein fehlerhaftes CrowdStrike-Update legte am 19. Juli 2024 weltweit 8,5 Millionen Windows-Maschinen lahm. Lest hier unsere detaillierte Analyse.

Am 19. Juli 2024 erlebte die IT-Welt eine massive Störung, als ein fehlerhaftes Update der Sicherheitssoftware Falcon vom Hersteller CrowdStrike (im folgenden allgemein CrowdStrike) weltweit ca. 8,5 Millionen Windows-Maschinen lahmlegte. Betroffene Systeme stürzten ab und konnten nicht wieder gestartet werden. Wie konnte es zu diesem Vorfall kommen, und was können wir als Administratoren tun, um besser vorbereitet zu sein? Diesen Fragen widmen wir uns in diesem Blogpost.

Einleitung: Aktuelle Ereignisse und Zusammenfassung

Am Morgen des 19. Juli 2024 wurden weltweit Millionen von Windows-Maschinen durch ein fehlerhaftes Update der CrowdStrike-Sicherheitssoftware unbrauchbar. Die Maschinen stürzten ab und konnten nicht wieder neu gestartet werden, was zu erheblichen Störungen in verschiedenen Branchen führte, darunter Airlines, Banken, Krankenhäuser und mehr. Diese Störung wurde als eine der größten in der Geschichte der Informationstechnologie bezeichnet, mit geschätzten weltweiten finanziellen Schäden in Höhe von 10 Milliarden US-Dollar. Innerhalb weniger Stunden wurde der Fehler identifiziert und ein Fix veröffentlicht, doch die manuelle Behebung auf Millionen von Maschinen zog sich über Tage hin.

Kernel-Level vs. User-Level Code: Ein Überblick

Um zu verstehen, wie ein Softwareupdate eine derartige Katastrophe auslösen kann, müssen wir zunächst verstehen, wie Code auf Computern ausgeführt wird. Hierbei unterscheiden wir zwischen Kernel-Level-Code und User-Level-Code. Der Kernel (Ring 0) ist der zentrale Bestandteil des Betriebssystems und hat uneingeschränkten Zugriff auf die Hardware. Sicherheitslösungen wie CrowdStrike arbeiten auf dieser Ebene, um einen uneingeschränkten Überblick über alle Anwendungen, Hardware und Speicher zu erhalten und um verhaltensbasierte Angriffe effektiv erkennen zu können.

Im Gegensatz dazu läuft User-Level-Code (Ring 1) auf einer niedrigeren Berechtigungsebene und hat keinen direkten Zugriff auf die Hardware. Fehler in dieser Ebene führen in der Regel nur zum Absturz der betreffenden Anwendung, nicht des gesamten Systems.

Warum Kernel-Fehler zu Systemabstürzen führen

Ein fehlerhafter Kernel-Code kann schwerwiegende Folgen haben, z.B. wenn benötigter Speicher doppelt freigegeben wird. Dies könnte dazu führen, dass Anwendungen und temporär gespeicherte Daten beschädigt werden oder verloren gehen. Der Kernel erkennt solche kritischen Fehler und bringt das System sofort zum Stillstand (Bluescreen), um größere Schäden zu verhindern. Diese Schutzmaßnahme dient der Integrität des Systems und verhindert, dass fehlerhafte Operationen irreversible Probleme verursachen.

Der Fehler im CrowdStrike-Update

Beim aktuellen Vorfall hat CrowdStrike fehlerhafte Channel-Dateien ausgeliefert, die normalerweise als Datenbank für bekannte Viren und Verhalten dienen. Diese Dateien wurden beim Start des Systems und der Treiber direkt geladen. Eine dieser Dateien oder der Mechanismus zum Laden dieser Dateien war fehlerhaft und wurde vom System nicht korrekt verarbeitet, was zu den massiven Abstürzen führte.

Es ist wichtig zu verstehen, dass CrowdStrike als Hardwaretreiber auf den Maschinen läuft, obwohl es keine Hardware ist. Durch diese Arbeitsweise erhält CrowdStrike uneingeschränkten Zugriff auf alle benötigten Daten. Diese Treiber sind durch Microsofts WHQL-Zertifikat (Windows Hardware Quality Labs) als stabil und zugelassen gekennzeichnet. Allerdings gilt dies nicht für die schnell austauschbaren Channel-Dateien, die nicht zertifiziert sind. Der zertifizierte Treiber ist somit in der Lage, nicht zertifizierten Code unkontrolliert nachzuladen. Diese Flexibilität ist im Kampf gegen Cyberangriffe wichtig, birgt jedoch das Risiko von Fehlern, die das gesamte System beeinträchtigen können.

Lösungsansätze und Empfehlungen

Sollte euer Unternehmen noch keine Lösung für das Problem haben, oder ihr zu den unglücklichen Admins gehören, die zu diesem Event aufgewacht sein. Hier die Lösung im Überblick:

  1. Starten Sie die betroffenen Maschinen im abgesicherten Modus oder in der Windows-Wiederherstellungsumgebung.

  2. Löschen Sie alle .sys-Dateien im Verzeichnis %windir%\System32\drivers\CrowdStrike\ mit dem Präfix C-00000291- und dem Zeitstempel 0409 UTC.

    EDIT Für Details schaut auch gerne unten ins Update

Ansonsten gelten hier natürlich die klassischen Empfehlungen wie Patchmanagement, Disaster Recovery bzw. Business Continuity Management, aber auch das Überdenken der eigenen Systemlandschaft und gegebenenfalls die Verteilung auf verschiedene Betriebsysteme. Das erhöht leider neben der Resilience auch den Aufwand für die Betreuung.

Abschluss

Die jüngsten Ereignisse haben die Fragilität unserer IT-Infrastruktur deutlich gemacht. Als Administratoren müssen wir uns ständig weiterbilden und unsere Systeme gegen solche unvorhergesehenen Ausfälle wappnen. Durch präventive Maßnahmen und robuste Reaktionsstrategien können wir die Auswirkungen solcher Vorfälle minimieren und die Resilienz unserer Systeme stärken.

Vielen Dank für die technischen Hintergründe an Dave’s Garage: Dave’s Garage auf YouTube

Update 1:

CrowdStrike hat auf seine Website angekündigt, dass sie gerade an einer automatisierten Lösung für diese Probleme arbeiten und Kunden die Möglichkeit bieten möchten, diese Behebung automatisch durchführen lassen zu können, lest hier dazu mehr. CrowdStrike Announcement

zurück zum Blog