Grundlegende Schritte zur Vorfallsbearbeitung

Es gibt eine Reihe guter Gründe sich mit Incident Response zu beschäftigen und Sicherheitsvorfälle nicht zu ignorieren. Hinter den Vorfällen stecken normalerweise keine Dumme-Jungen-Streiche, sondern harte finanzielle Interessen - eine kleine Auswahl als Beispiel:

  • Handel mit Kreditkarten-Informationen, illegalen Kopien von Software und Medien, Registrierungs-Daten und dergleichen,
  • Verschicken von SPAM und Phishing Mails,
  • Denial of Service Angriffe und Website Defacements auf Bestellung,
  • Ausspähen von Web-Verbindungen zu Banken, Bezahldiensten, Online-Auktionen und ähnliches.

Ohne kompetente Bearbeitung eines Vorfalls ist es unmöglich, schwere kriminelle Machenschaften zu erkennen. Nur dann kann man aber die Entscheidung treffen, ob ein Vorfall weiter verfolgt werden soll und ob es z.B. sinnvoll ist, Anzeige zu erstatten.

Die Vorfallsbearbeitung kann in sechs Schritte gegliedert werden:

1. Vorbereitung

Kontakt-Listen mit Ansprechpartnern, Telefonnummern und ähnlichen Daten sollten zusammengestellt werden. Die Dokumentation der betreuten Systeme sollte möglichst vollständig sein und auch offline in gedruckter Form vorliegen. Idealerweise wurden Pläne für verschiedene Arten von Notfällen vorbereitet - Beispielszenarien: "Unser Fileserver wurde kompromittiert" oder "Unsere Upstream Leitung wird durch einen DoS blockiert". Diese sollten angeben, wer wann alarmiert werden muss und jeweils eine spezifische Checkliste enthalten. Es ist sinnvoll, die Pläne möglichst konkret mit allen Beteiligten durchzuspielen und regelmäßig zu aktualisieren.

2. Entdeckung

Bei der Behandlung von Sicherheitsvorfällen stellt sich am Anfang die Frage, ob überhaupt ein Vorfall vorliegt. Manchmal sind die ersten Anzeichen schon eindeutig (z.B. ein neues Design der eigenen Startseite - ein so genanntes "Defacement" - oder ein Denial of Service Angriff verhindert eine Verbindung ins Internet). Oft ist es nicht sofort eindeutig entscheidbar, ob ein Vorfall vorliegt.

Ob ein Vorfall vorliegt, sollte man möglichst systematisch und am besten anhand einer Checkliste feststellen. Im Folgenden zwei Leitfäden, die als Ausgangspunkt für eine eigene Checkliste verwendet werden können:

  • Suche nach Hinweisen auf Kompromittierung am Beispiel von UNIX / Linux
  • Suche nach Hinweisen auf Kompromittierung am Windows-Beispiel

3. Analyse

Nachdem feststeht, dass wirklich ein Vorfall vorliegt, sollte das weitere Vorgehen mit allen Beteiligten abgesprochen werden. Dazu gehören neben den Kollegen auch Vorgesetzte, Kunden sowie Betreuer und Benutzer der betroffenen Systeme und Anwendungen. Weitere Beteiligte sind ggfs. ihr Rechtsbeistand bzw. Ermittlungsbehörden (speziell, wenn juristische Schritte unternommen oder Anzeige erstattet werden soll), die Pressestelle, ISP(s), Hersteller (z.B. für Patches) und natürlich die CERTs.

Die eigentliche Analyse befasst sich mit zwei Bereichen: Einmal die näheren Umstände des Vorfalls aufzuklären:

  • Wann und wo ist der Vorfall passiert?
  • Was genau ist passiert?
  • Wer ist beteiligt und wer ist der Angreifer?
  • Wie ging er vor? Welche Schwachstelle wurde ausgenutzt?
  • Welcher Schaden ist bisher entstanden? Welcher weitere Schaden droht?

Daneben soll das weitere Vorgehen festgelegt werden, d.h. wie der Vorfall einzudämmen ist und wie die Kontrolle über die angegriffenen Systeme wieder erlangt werden kann.

4. Eindämmung

Oft ist eine abschließende Lösung des Problems nicht sofort möglich. So ist z.B. das Einspielen von Patches während des Betriebs nicht gestattet (Service Level Agreements) oder man möchte laufende Jobs / Experimente nicht abbrechen. Dennoch gilt es, weiteren Schaden, speziell bei Dritten, zu verhindern (z.B. durch Würmer, DDoS-Angriffe, usw.). Manchmal ist Eindämmen sogar die einzige verbleibende Option, weil es keine "endgültige" Lösung gibt, z.B. während eines DDoS Angriffs.

Grundsätzlich steht hinter Eindämmungsmaßnahmen immer die Abwägung zwischen dem eigenen Schaden durch die Maßnahmen (z.B. durch Abschaltung von Diensten) und dem (potentiellen) Schaden anderer durch Untätigkeit. Einige Maßnahmen werden nur kurzfristig ergriffen, bis eine Wartung des Systems möglich ist.

Lokale Eindämmungsmaßnahmen können sein:

  • Entfernen gehosteter Daten (Malware, Warez),
  • Sperren kompromittierter Accounts,
  • Abschalten angegriffener / gefährdeter Dienste,
  • Oberflächliches Säubern des Systems mit Virenscannern, Anti-Spyware und Ähnlichem,
  • Entfernen erkannter Hintertüren im System.

Eindämmungsmaßnahmen im Netz umfassen:

  • Beschränken des betroffenen Systems auf ein Quarantänenetz,
  • Sperren bestimmter Dienste oder Protokolle,
  • Einsetzen eines Rate Limit für bestimmte IP-Adressen oder Protokolle (lokal oder beim ISP),
  • Sperren ausgewählter eigener IP-Adressen beim ISF oder Upstream-ISF.

5. Kontrolle gewinnen

Wiedererlangen der Kontrolle heißt in vielen Fällen: Neuinstallation. Speziell bei Befall durch Viren / Würmer oder bei Einbrüchen ins System ist dieser Schritt leider unvermeidlich. Die im vorigen Abschnitt beschriebenen Maßnahmen haben alle den Nachteil, dass die Ursache des Problems nicht entfernt wird. Das Entfernen von Hintertüren oder Würmern entfernt z.B. nicht die Schwachstelle, durch die der Einbruch ins System überhaupt erst möglich war. Auch kann man (besonders bei Kernel-Rootkits) nie ganz sicher sein, das sämtliche Hinterlassenschaften des Angreifers aus dem System entfernt wurden.

Die Neuinstallation sollte am besten offline, zumindest ohne Verbindung zum Internet durchgeführt werden. Das Risiko, dass das System schon während der Installation erneut angegriffen wird, ist zu groß. Auch sollte keine Upgrade-Installation durchgeführt werden, da evtl. Dateien des Angreifers erhalten bleiben. Die Partitionen sollten formatiert und anschliessend von Grund auf neu installiert werden. Man sollte sich versichert haben, dass ein funktionfähiges Backup des Systems existiert (so dass man den Status quo wieder herstellen kann) und nicht vom Angreifer zerstört wurde. Leider ist es immer möglich, dass Backdoors sich innerhalb der Userdaten etwa in Form von authorized_keys Dateien befinden. Deswegen sollten zumindest offensichtliche Kandidaten kontrolliert werden.

Neben der eigentlichen Neuinstallation sollte das Härten des Systems nicht vergessen werden. Dazu zählt nicht nur das Einspielen sämtlicher Sicherheitspatches, sondern auch die sichere Konfiguration der Dienste. Dabei darf Software von Fremdherstellern und auch selbstentwickelte Software nicht vergessen werden. Ganz besonders wichtig: Alle Passworte sollten geändert werden, sowohl lokal als auch innerhalb der Domäne, falls der Angreifer Zugriff auf die Passwort-Datenbank (LDAP-Server, KDC, Domain-Controller) hatte. Waren schwache Passworte die mögliche Ursache, sollte die Passwort-Policy entsprechend angepasst werden. Ebenso gefährdet sind Schlüssel zur Signatur oder Verschlüsselung, also X.509-, PGP- und SSH -Schlüssel. Werden diese nicht ebenfalls geändert, hat der Angreifer weiterhin Zugriff auf VPNs, E-mail, Web-Anwendungen oder GRID-Systeme.

6. Nachbereitung

Wenn Notfallpläne angewendet werden, funktioniert selten alles so, wie es sich die Planer vorgestellt haben. Deshalb sollten sich nach dem Vorfall die Beteiligten zu einer Nachbereitung des Vorfalls zusammensetzen und besprechen:

  • Was (welche Maßnahme) hat funktioniert?
  • Was hat nicht funktioniert?
  • Was hätte man besser machen können ?
  • Welche (Teil-)Pläne müssen geändert werden?
  • Wo ist die Dokumentation lückenhaft oder wofür wurden Pläne vergessen?

Das Ergebnis der Nachbereitung sind aktualisierte Notfallpläne und Dokumentationen, so dass man das nächste Mal hoffentlich besser vorbereitet ist.

Denn: Nach dem Vorfall ist vor dem Vorfall!