SkillGridInformatik durch Machen lernen

Wenn schon etwas schiefgegangen ist

Vorfall gegen Datenpanne, warum man nicht auf das reagieren kann, was man nie bemerkt hat, Eindämmung vor Beseitigung, warum die Wiederherstellung aus dem backup nicht immer die Antwort ist, Beweise, die man durch einen Neustart vernichtet, und Nachbereitungen, die nicht nach einem Schuldigen suchen.

17 Min. · 55 XP

Bisher ging es immer um Verhinderung. Diese Lektion behandelt die andere Hälfte, und genau sie trennt ein Sicherheitsinteresse von einem Sicherheitsberuf: was zwischen dem Moment passiert, in dem etwas schiefgeht, und dem Moment, in dem es vorbei ist. Das ist eher eine Prozesslektion als eine technische, und der Prozess ist der Teil, der unter Druck am häufigsten versagt, weil die richtige Handlung oft die am wenigsten entschlossen wirkende ist. Eine Auswertung ist der Teil des Prozesses, der den nächsten Vorfall billiger macht, und sie funktioniert nur, wenn Menschen die Wahrheit sagen. Schuldzuweisung und Wahrheit stehen in direktem Wettbewerb: Die erste Frage einer Untersuchung, die einen Schuldigen sucht, ist, ob danach noch jemand Informationen freiwillig nennt. Der Ersatz für Schuldzuweisung ist keine Unverbindlichkeit, sondern eine andere Frage. Statt zu fragen, wer den falschen Befehl ausgeführt hat, fragt man, was den falschen Befehl richtig aussehen ließ und was das falsche Ergebnis unmöglich statt bloß unerwünscht gemacht hätte. Ein Punkt, der lautet, man solle sorgfältiger sein, ist kein Punkt. Ein Punkt, der lautet, das Deploy-Skript weigert sich nun, gegen Produktion zu laufen, solange kein ausdrückliches Bestätigungsflag gesetzt ist, ist einer, weil er nicht davon abhängt, dass sich jemand an etwas erinnert. Derselbe Vorfall zweimal aufgeschrieben. Nur die zweite Version erzeugt Massnahmen, die eine arbeitsreiche Woche ueberstehen. Die ehrliche Zusammenfassung ist, dass Prävention und Reaktion auf unterschiedliche Weise versagen. Prävention versagt, weil eine Maßnahme, an die man glaubte, nicht hielt, und sie versagt meist leise. Reaktion versagt wegen dessen, was Menschen unter Druck tun, und sie versagt laut: die Maschine mit den Beweisen neu starten, den Host löschen, weil die Symptome aufgehört haben, ein Backup einspielen, das nach Beginn des Eindringens erstellt wurde, oder einen Bericht schreiben, nach dem niemand den nächsten Vorfall meldet. Die unbequeme Schlussfolgerung ist, dass das Ergebnis eines Vorfalls weniger von der Raffinesse des Angreifers abhängt als davon, ob die Organisation aufgeschrieben und geübt hatte, was sie tun würde.

EventLogs and alertsResponderSystemsunusual login at 03:14 from a new countrydetection only happens if someone is watchingalert, qualifies as an incidentcontain first, do not rebootpreserve memory and disk before cleanuproot cause: a valid credential, no exploiteradicate, then restore from a known-good statewhat to watch for next time

Die erste und schwerste Stufe ist das Bemerken. Ein Ereignis ist alles Beobachtbare; ein Alarm ist ein Ereignis, das jemand für aufmerksamkeitswürdig hielt; ein Vorfall ist ein Alarm, den jemand für echt hielt. Jede dieser Umwandlungen kann scheitern. Logs, die niemand ansieht, sind Dekoration. Alarme, die viertausend Mal am Tag auslösen, erziehen alle dazu, sie zu ignorieren, und das ist schlimmer als gar keine Alarme, weil damit auch die Annahme verschwindet, dass jemand hinsieht. Die praktische Lehre: Erkennungsfähigkeit ist nicht die Zahl der Werkzeuge, sondern die Zahl der Signale, die ein Mensch tatsächlich ansieht. Alles Weitere in dieser Lektion steht einer Organisation nicht zur Verfügung, die diese Stufe nicht gelöst hat, denn man kann nicht eindämmen, was man nicht bemerkt hat. Grobe Branchenbild davon, wie lange Vorfälle unbemerkt bleiben. Die Streuung zwischen Organisationen ist weit groesser als die zwischen Jahren. Ein Alarm ist nützlich, wenn er drei Dinge enthält: eine Beschreibung des Beobachteten, genug Kontext zum Beurteilen und eine festgelegte Handlung. Ein Alarm, der nur meldet, dass etwas Anomales passiert ist, ist schlechter als Stille, denn er kostet Aufmerksamkeit und liefert nichts zurück. Die Grundlinie ist es, die Kontext überhaupt möglich macht. Man kann nicht sagen, dass eine Anmeldung um 03:14 ungewöhnlich ist, wenn man nicht weiß, wie eine normale Stunde für dieses Konto aussieht; die nützliche Arbeit beginnt also lange vor dem Vorfall, wenn jemand entscheidet, was aufgezeichnet wird.

$ sudo dd if=/dev/sda1 of=/mnt/evidence/disk.img bs=4M conv=noerror,sync
$ sha256sum /mnt/evidence/disk.img | tee /mnt/evidence/disk.img.sha256

$ date -u +"%Y-%m-%dT%H:%M:%SZ" | tee -a /mnt/evidence/chain-of-custody.txt

# every later look works on a copy, never on the original
$ cp /mnt/evidence/disk.img /tmp/work.imgEin Abbild der Platte sichern und eine Nachweiskette beginnen. Der Hash ist der Punkt: Er erlaubt es spaeter zu sagen, dass die Kopie nicht veraendert wurde.

Ein Vorfall ist ein Ereignis, das Richtlinien, Vertraulichkeit, Integrität oder Verfügbarkeit bedroht oder verletzt. Eine Datenschutzverletzung ist eine bestimmte Art von Vorfall: eine, bei der Daten tatsächlich von jemandem eingesehen oder entwendet wurden, der sie nicht hätte haben dürfen. Der Unterschied ist keine Haarspalterei, er ändert das Vorgehen. Eine Phishing-Kampagne, auf die niemand geklickt hat, ist ein Vorfall ohne Datenschutzverletzung, und die Reaktion ist, den Absender zu blockieren und Leute zu warnen. Ein falsch konfigurierter öffentlicher Speicher, der eine Woche offen stand, ist potenziell eine Datenschutzverletzung, obwohl technisch nichts kaputtging, und die Reaktion schließt die Frage ein, ob jemand hineingesehen hat. Beides zu vermengen führt dazu, dass Organisationen entweder auf Rauschen überreagieren oder eine echte Exposition unterschätzen.

Eindämmung stoppt den Schaden. Beseitigung entfernt die Ursache. Wiederherstellung bringt den Dienst zurück. Das sind drei verschiedene Ziele, und sie werden häufig als eines ausgeführt, und dort beginnt der Ärger. Der Instinkt unter Druck ist neu starten, neu installieren und wiederherstellen, weil das die Symptome beseitigt. Ein Neuaufbau, der beginnt, bevor man verstanden hat, wie der Angreifer hineinkam, liefert eine saubere Maschine und ein dauerhaftes Rätsel, und wenn der Einstiegsweg nicht geschlossen wurde, ist der nächste Aufbau auf dieselbe Weise kompromittiert. Die Reihenfolge zählt, und ebenso die Bereitschaft, eine kompromittierte Maschine eine Zeit lang isoliert und laufend zu halten, statt sie sofort zu löschen. Die drei Stufen und die Handlung, die jede erlauben darf. Beachte: Die Beweissicherung liegt innerhalb der Eindaemmung, bevor die Beseitigung die Maschine loescht. Aus dem Backup wiederherzustellen ist eine hervorragende Antwort auf einen Hardwareausfall und eine gefährliche Antwort auf ein Eindringen. Entscheidend ist nicht, wie gut das Backup ist, sondern wann der Angreifer ankam relativ zu dem Zeitpunkt, an dem es erstellt wurde. Wurde das Backup nach Beginn des Eindringens erstellt, kann der eingerichtete Persistenzmechanismus darin stecken, und man stellt die Kompromittierung zusammen mit den Daten wieder her. Deshalb kommt die Eindämmung vor der Wiederherstellung: Man muss die Zeitlinie gut genug verstehen, um einen Wiederherstellungspunkt vor dem ersten Anzeichen des Einstiegs zu wählen, und man muss den Einstiegsweg geschlossen haben, bevor irgendetwas wieder online geht. Beweise haben eine Lebensdauer, und sie läuft in der umgekehrten Reihenfolge ab, die man erwartet. Alles im Speicher, in einem laufenden Prozess, in einer Netzwerkverbindung oder in einer temporären Datei ist weg, sobald die Maschine den Strom verliert oder neu startet. Alles auf der Platte übersteht einen Neustart, aber keine Neuinstallation. Alles, was bereits an einen zentralen Logspeicher geschickt wurde, übersteht beides, weshalb zentrales Logging eine forensische Maßnahme ist und nicht nur ein operativer Komfort. Die ersten Handlungen einer Reaktion sind daher fast mechanisch: die aktuelle Uhrzeit notieren, das Flüchtige erfassen, bevor es verschwindet, und erst dann entscheiden, was mit der Maschine geschehen soll. Die Regel, die daraus folgt, ist kurz, und sie wird in den ersten fünf Minuten am häufigsten gebrochen: nicht neu starten. Ein Neustart leert den Speicher, trennt Netzwerkverbindungen, stoppt laufende Prozesse und überschreibt einen Teil des benötigten Zustands, und der Angreifer kann einen Autostart-Eintrag hinterlassen haben, den der Neustart auslöst. Muss die Maschine isoliert werden, zieht man das Netzwerkkabel statt den Strom. Das ist gerade deshalb unintuitiv, weil Aus- und Einschalten bei fast jedem anderen Computerproblem die richtige Antwort ist.

Praxis

  1. Ein Server ist bestätigt kompromittiert. Das Team will ihn sofort aus einem als sauber bekannten Image neu aufbauen, um den Angriff zu stoppen. Was ist der Hauptgrund, den Neuaufbau aufzuschieben?

    Hinweise
    • Frage, was jede Handlung mit den Beweisen macht. Alles, was Speicher leert oder Zustand überschreibt, vernichtet die einzige Aufzeichnung darüber, wie der Angreifer hineinkam.
    • Neu installieren wirkt entschlossen, beantwortet aber die falsche Frage. Dass der Dienst kaputt ist, weißt du schon; warum, weißt du nicht.
  2. Bringe die Phasen der Incident Response in die richtige Reihenfolge.

    1. 1eradicate: den Einstiegsweg schließen und entfernen, was der Angreifer hinterlassen hat
    2. 2detect: etwas wird beobachtet und jemand entscheidet, dass es ein echter Vorfall ist
    3. 3contain: die betroffenen Systeme isolieren und die verwendeten Zugangsdaten widerrufen
    4. 4preserve: Arbeitsspeicher und aktuellen Zustand sichern, bevor irgendetwas ihn verändert
    5. 5review: aufschreiben, was passiert ist und was es früher erkannt hätte
    6. 6restore: den Dienst aus einem Stand zurückbringen, der nachweislich vor dem Eindringen liegt
    Hinweise
    • Der allererste Schritt ist gar nicht technisch: Jemand muss es bemerken, und jemandem muss es gemeldet werden.
    • Die Ausbreitung zu stoppen kommt vor dem Entfernen der Ursache, und beides kommt vor jedem Neuaufbau, denn ein zu früh begonnener Neuaufbau wirft die Antwort weg.
  3. Ordne jede Beweisart zu, wie lange sie ueberlebt und was sie zerstoert.

    Hinweise
    • Sortiere danach, wie lange die Sache überlebt. Register und Prozessspeicher sind weg, sobald der Strom weg ist, eine Datei auf der Platte kann warten.
    • Frage bei jedem Punkt, ob ein Neustart oder eine Neuinstallation ihn zerstören würde. Alles, was das täte, wird zuerst gesichert.

Fragen zu dieser Lektion

Ist das kostenlos?

Ja. Die erste Ebene jedes Fachs ist kostenlos und braucht kein Konto. Tiefere Ebenen und die höheren Stufen sind kostenpflichtig — genau das hält das Projekt am Leben.

Für welches Alter ist das gedacht?

Für neugierige Jugendliche ab etwa 12 Jahren und für Erwachsene, die bei null anfangen. Programmiererfahrung wird nicht vorausgesetzt; die Lektionen zu Netzwerken und Physik brauchen keine Mathematik über Schulniveau.

Muss ich schon programmieren können?

Nein. Logik, Physik und Netzwerke beginnen bei null. Code schreibst du im Bereich Programmiersprachen — und auch der fängt vorne an.

Muss ich etwas installieren?

Nein. Alles läuft im Browser: Theorie, Übungen und die interaktiven Simulationen. Es gibt nichts herunterzuladen und nichts einzurichten.

Wie lange dauert ein Fach?

Eine Lektion dauert 10 bis 15 Minuten. Eine Junior-Stufe umfasst etwa 12 bis 20 Lektionen, also einige Wochen regelmäßiger Übung statt eines Abends.

Muss ich der Reihenfolge folgen?

Innerhalb einer Stufe öffnen sich die Ebenen nacheinander, weil jede auf der vorherigen aufbaut. Zwischen den Fächern bist du frei: beginne mit Logik, Physik oder Netzwerken.