Wie man ein Post-Mortem eines Server-Hack macht

29

Ich habe einen Windows Server 2003 SP2-Computer mit IIS6, SQL Server 2005, MySQL 5 und PHP 4.3 installiert. Dies ist keine Produktionsmaschine, aber sie ist der Welt über einen Domainnamen ausgesetzt. Auf dem Computer ist der Remotedesktop aktiviert und zwei Administratorkonten sind auf dem Computer aktiv.

Heute Morgen stellte ich fest, dass der Computer mit einem unbekannten Benutzernamen noch im Anmeldetextfeld abgemeldet war. Bei weiteren Untersuchungen habe ich festgestellt, dass zwei Windows-Benutzer erstellt wurden, Anti-Virus deinstalliert wurde und einige .exe-Dateien auf dem Laufwerk C: abgelegt wurden.

Was ich wissen möchte, ist, welche Schritte ich unternehmen muss, um sicherzustellen, dass dies nicht wieder geschieht, und Bereiche, auf die ich mich konzentrieren sollte, um die Einreisemöglichkeiten zu bestimmen. Ich habe bereits netstat -a überprüft, um festzustellen, welche Ports geöffnet sind, und nichts erscheint dort seltsam. Ich habe im Datenordner für MySQL unbekannte Dateien gefunden, von denen ich denke, dass sie der Einstiegspunkt waren, aber ich bin mir nicht sicher.

Ich würde die Schritte zur Durchführung eines guten Post-Mortem eines Server-Hack wirklich begrüßen, damit ich dies in Zukunft vermeiden kann.

Überprüfung nach der Untersuchung

Nach einigen Nachforschungen habe ich herausgefunden, was passiert ist. Erstens war die Maschine im Zeitraum von August '08 bis Oktober '09 nicht online. In diesem Zeitraum wurde eine Sicherheitsanfälligkeit entdeckt, die Sicherheitsanfälligkeit MS08-067 . "Dies ist eine Sicherheitsanfälligkeit bezüglich Remotecodeausführung. Ein Angreifer, der diese Sicherheitsanfälligkeit erfolgreich ausnutzt, kann die vollständige Kontrolle über ein betroffenes System aus der Ferne erlangen. Auf Microsoft Windows 2000-, Windows XP- und Windows Server 2003-Systemen kann ein Angreifer diese Sicherheitsanfälligkeit ausnutzen." Diese Sicherheitsanfälligkeit über RPC ohne Authentifizierung kann beliebigen Code ausführen. " Diese Sicherheitsanfälligkeit wurde mit dem Sicherheitsupdate KB958644 behoben, das im Oktober 2008 veröffentlicht wurde.

Da der Computer zu diesem Zeitpunkt offline war und dieses Update verpasst hat, wurde diese Sicherheitsanfälligkeit meines Erachtens bald ausgenutzt, nachdem der Computer im Oktober '09 wieder online ging. Ich fand Hinweise auf ein bycnboy.exe-Programm, das als Backdoor-Programm beschrieben wurde, das dann viel Chaos auf einem infizierten System anrichtet. Kurz nachdem die Maschine online war, installierten automatische Updates den Patch, der die Fernsteuerung des Systems unmöglich machte. Da die Hintertür nun geschlossen war, hat der Angreifer vermutlich physische Konten auf dem Computer erstellt und konnte den Computer eine weitere Woche lang nutzen, bis ich bemerkte, was passierte.

Nachdem der böswillige Code, die EXE- und DLL-Dateien, entfernt wurden und sich selbst hostende Websites und Benutzerkonten entfernt wurden, befindet sich der Computer wieder in einem funktionsfähigen Zustand. In naher Zukunft werde ich das System überwachen und die Serverprotokolle überprüfen, um festzustellen, ob sich der Vorfall wiederholt.

Vielen Dank für die bereitgestellten Informationen und Schritte.

Chris
quelle

Antworten:

28

Ein Post-Mortem zu machen ist eine schwarze Kunst für sich. Es ist jedes Mal ein bisschen anders, weil wirklich keine zwei Einbrüche gleich sind. In diesem Sinne folgt ein grundlegender Überblick über meinen empfohlenen Prozess mit einigen speziellen Hinweisen zu Ihrer Situation:

  1. Trennen Sie das Gerät physisch vom Netzwerk. (Wirklich. Tu es jetzt.)
  2. Optionaler Schritt: Erstellen Sie eine binäre Image-Kopie der Festplatte für die zukünftige Verwendung.
  3. Erstellen Sie eine Kopie aller Protokolldateien, wertvollen Daten usw. auf einer austauschbaren Festplatte
    • Kopieren Sie optional auch alle "Hacker-Tools", die Sie finden
  4. Beginnen Sie mit der eigentlichen Obduktion. In Ihrem Fall:
    • Notieren Sie alle neuen oder fehlenden Benutzerkonten. Überprüfen Sie, ob die privaten Ordner "interessante" Inhalte enthalten.
    • Notieren Sie alle neuen oder fehlenden Programme / Binärdateien / Datendateien.
    • Überprüfen Sie zuerst die MySQL-Protokolle - Suchen Sie nach "ungewöhnlichen" Elementen.
    • Überprüfen Sie die restlichen Serverprotokolle. Sehen Sie nach, ob Sie die neuen Benutzer, von denen sie sich angemeldet haben, usw. finden können.
    • Suchen Sie nach Hinweisen auf Datenschäden oder Diebstahl
  5. Wenn Sie die Ursache des Problems gefunden haben, notieren Sie, wie Sie verhindern können, dass das Problem erneut auftritt.
  6. Wischen Sie den Server sauber: Formatieren und installieren Sie alles neu, stellen Sie Ihre Daten wieder her und füllen Sie das ursprüngliche Loch mit Ihren Notizen aus # 5.

In der Regel führen Sie Schritt 2 aus, wenn Sie Strafverfolgungsbehörden einbeziehen. Sie führen Schritt 3 aus, damit Sie Informationen überprüfen können, nachdem der Server wiederhergestellt wurde, ohne die in Schritt 2 erstellte Image-Kopie lesen zu müssen.

Wie detailliert Schritt 4 wird, hängt von Ihren Zielen ab: Nur die Lücke zu schließen, ist eine andere Art der Untersuchung, als herauszufinden, wer wertvolle Daten gestohlen hat :)

Schritt 6 ist meiner Meinung nach kritisch. Sie "reparieren" einen kompromittierten Host nicht: Sie löschen ihn und gehen von einem bekannten guten Zustand aus. Dies stellt sicher, dass Sie kein Nugget böser Gegenstände verpassen, die als Zeitbombe auf der Box liegen.

Dies ist keineswegs eine vollständige Post-Mortem-Übersicht. Ich markiere dies als Community-Wiki, da ich immer nach Verbesserungen des Prozesses suche - ich benutze es nicht oft :-)

voretaq7
quelle
3
Ich habe keine Erfahrung damit, aber Security Monkey rät, wenn Sie sich ein Bild von einem Computer für eine Untersuchung machen wollen, das Netzkabel zu ziehen, die Festplatte abzubilden und dann mit der Untersuchung zu beginnen. (Security Monkey: it.toolbox.com/blogs/securitymonkey )
MattB
1
Security Monkey ist nicht mehr in Betrieb - Sie möchten die Maschine einfrieren (am Netzkabel ziehen), wenn Sie ein Bild davon erstellen. Herunterfahren und / oder Hochfahren können Selbstzerstörung oder Bereinigungscode auslösen und ein Ausschalten der Stromversorgung verhindert, dass dies geschieht, bevor Sie Ihr Image erstellen können.
Voretaq7
2
Außerdem - ich würde sagen, dass Sie den Ergebnissen von "eingebauten" Befehlen auf dem gehackten System wie netstat (oder dir usw.) nicht vertrauen sollten. Auch hier habe ich keine direkten Erfahrungen auf Unternehmensebene, aber ich erinnere mich, dass ich gehackt wurde auf Personalcomputern, bei denen ein Teil des Hacks darin bestand, eingebaute Werkzeuge zu ersetzen, um zu maskieren, was wirklich vor sich ging.
MattB
4
+1 Schritt 6 ist wichtig, Sie wissen nicht, ob netstat Ihnen die Wahrheit zeigt, ohne den tatsächlichen Netzwerkverkehr zu analysieren - und das kann an sich schon recht kompliziert und eine Geduldsprobe sein ... also, wischen Sie es ab. Es ist nicht mehr deine Kiste. Analysieren Sie das Bild, was Sie wollen, aber wischen Sie die verdammte Maschine;)
Oskar Duveborn
1
Ich würde sagen, Sie sind wahrscheinlich jedes Mal besser dran, wenn Sie Schritt 2 ausführen, da Sie nicht ganz sicher sind, was Sie bei Ihren Ermittlungen finden werden. Binäre Bilder zu haben bedeutet auch, dass Sie unterschiedliche Personen haben können, die unterschiedliche Dinge betrachten und jeweils eine Kopie verwenden.
Vatine