Press "Enter" to skip to content

Entwicklung eines browserbasierten Keyloggers mit Steuerungsinterface (PoC, Download)

Im Rahmen meiner mündlichen Abschlussprüfung in Computertechnik (Abitur 2015) entwickelte ich diesen Proof of Concept für einen browserbasierten Keylogger. Der Keylogger beinhaltet ein umfangreiches Steuerungsinterface, womit die Nutzer verwaltet werden können. Ein Keylogger in Form von JavaScript Quellcode wird vom Webserver bereitgestellt und anschließend bei den Nutzern im Browser ausgeführt.

Es findet eine rund um die Uhr Überwachung der Cookies, der Texteingaben, sowie besuchten Seiten statt. Das Ausspähen der Cookies und Sessions ermöglicht es, die Identität des Nutzers, ohne das Wissen der eigentlichen Passwörter, anzunehmen. Der Keylogger kann modular um weitere Aufgaben erweitert werden und kann dynamisch Code nachladen. Somit existiert auch die Möglichkeit ein weiteres Modul, beispielsweise um DDos Angriffe auszuführen, hinzuzufügen.

Disclaimer

Das hier entwickelte Skript soll zeigen, wie gefährlich Userscripts und das Browser Add-On Greasemonkey ist, da Schadcode im Hintergrund geladen und ausgeführt wird. Es bestehen Möglichkeiten im Browser, geschützt vor gewöhnlichen Anti-Viren Programmen, unentdeckt zu agieren.

Mit der hier veröffentlichen Schulungsanwendung dürfen keine Straftaten begangen werden. Die Anwendung darf ausschließlich für Trainingszwecke verwendet werden.

Aufbau

  • Das JavaScript Add-On (JavaScript, jQuery)
    • Nachladen von JavaScript Code vom Command and Control Server
    • Ausführen des Keyloggers (modular weitere Aufgaben)
    • Absenden der aufgenommenen Daten an das Steuerungsinterface
  • Steuerungsinterface / Cn’C (PHP, MySql)
    • Modulares Bereitstellen des JavaScript Codes je nach aktivierten Aufgaben
    • Verwaltung der Aufgaben
    • Anzeige der aufgenommenen Nutzerdaten
    • Auswahl der Nutzer

Screenshots des Steuerungsinterfaces

Im Steuerungsinterface befindet sich zunächst eine Liste der Nutzer, mit der aktuellen IP-Adresse und einer Spalte, wann der Schadcode zuletzt aktualisiert wurde.

Auswahl eines Nutzers und Darstellung der Benutzerdaten.

Nach dem Klicken auf eines der Nutzer, werden Details angezeigt. Dort erhält ein Angreifer die Optionen einzelne Aufgaben für den Nutzer gezielt an- und auszuschalten. Verschiedene Angriffsziele sind modular als Aufgaben zuwählbar.

Aktivierung einer Aufgabe für einen ausgewählten Nutzer.

Nachdem eine Aufgabe aktiviert wurde, wird der Angriffscode der ausgewählten Aufgabe beim Nutzer ausgeführt.

Anzeige der Browserhistorie.

Die Aufgabe “Cookies” ermöglicht es, dass der Angreifer die Identität des Nutzers annehmen kann, indem der Angreifer die Cookies des Nutzers bei sich setzt. Zum Setzen der Session-Cookies gibt es das Greasemonkey Script (Browser Add-On) “Set_Cookies_from_GET.user.js”.

Download

Das Projekt findet ihr auf GitHub.

Leave a Reply

Your email address will not be published. Required fields are marked *