
LOKI (Limited Obstructive Keyboard Impersonator) ist ein RDP-Dateiübertragungstool, das Tastendrücke verwendet.
Veröffentlicht als Open Source von NCC Group Plc - http://www.nccgroup.com/
Entwickelt von Dave Spencer, david [dot] spencer [at] nccgroup [dot] com
http://www.github.com/nccgroup/Loki
Veröffentlicht unter AGPL, siehe LICENSE für weitere Informationen
Loki (Limited Obstructive Keyboard Impersonator) hat einen eingebauten RDP-Client und nutzt die Fähigkeit des Testers, eine Datei manuell in Notepad oder einem anderen Texteditor auszutippen. Das Hauptproblem bei der Verwendung von Notepad besteht darin, dass es nicht möglich ist, Binärdaten auszutippen. Um dem entgegenzuwirken, können wir eine Reihe von Kodierungen wie Hex oder Base64 verwenden. Das Problem dabei ist, dass wir am anderen Ende eine Möglichkeit benötigen, sie zu dekodieren. Glücklicherweise verfügt der Internet Explorer über einen eingebauten Base64-Dekoder, der für MIME-HTML-Dateien (.mht) verwendet wird.
Loki nimmt eine bestimmte Datei, konvertiert sie in Base64 und tippt mithilfe des Eingabesimulators (https://inputsimulator.codeplex.com/) die .mht-Datei in den fokussierten Texteditor.
Loki kann mit Sleipnir (https://github.com/nccgroup/sleipnir) und Fenrir (https://github.com/nccgroup/fenrir) verwendet werden.
Die anfängliche Loki-Oberfläche ist recht unkompliziert; sie besteht aus 5 Eingabefeldern und 2 Kontrollkästchen. Die Felder „RDP-Server" und „RDP-Port" sind Pflichtfelder; sie werden verwendet, um eine Verbindung zum RDP-Server herzustellen. Falls ein RDP-Gate vorhanden ist, kann das Feld „RDP-Gateway" verwendet werden, um die Adresse anzugeben.
Die Felder „Metasploit-Server" und „Metasploit-Port" sind für die Verwendung mit Fenrir gedacht.
Das Kontrollkästchen NLA schaltet um, ob der Client die Netzwerkeben-Authentifizierung (Network Level Authentication) verwendet, und das Kontrollkästchen Vollbild versetzt den Client in den Vollbildmodus.
Sobald die Verbindung hergestellt ist, ist die Oberfläche zur Verwendung von Loki sogar noch einfacher, da sie ein einziges Dropdown-Menü mit dem Titel „Loki" mit einer Option – Datei senden – verwendet, das die Datei mithilfe von SendKeys überträgt.
Zuerst sollte man einen Texteditor öffnen (sicherstellen, dass er den Fokus hat), und Loki -> Datei senden (SendKeys) wählen. Loki stellt dann zwei Fragen:
Ist das Netzwerk besonders langsam? Wenn „Ja" ausgewählt wird, wird die Zeit zwischen den Tastendrücken auf 10 ms gesetzt; wenn „Nein" ausgewählt wird, werden stattdessen 3 ms verwendet.
Ist der entfernte Browser Internet Explorer? Wenn „Ja" ausgewählt wird, wird die Datei als Teil einer MHT-Datei gesendet; wenn „Nein" ausgewählt wird, wird die Datei als Teil eines eingebetteten Bildes gesendet, da andere Browser das MHT-Format nicht unterstützen.
Wenn der entfernte Browser Internet Explorer ist, ist das angezeigte Format MHT. Nach Abschluss sollte die Datei als filename.mht gespeichert und mit dem IE geöffnet werden; anschließend sollte sie erneut als „Webseite, vollständig" gespeichert werden. Dadurch werden eine Webseite und ein Verzeichnis mit zwei zufällig benannten tmp-Dateien erstellt. Die Erweiterung der größeren dieser beiden Dateien sollte in die der übertragenen Datei geändert werden; wenn beispielsweise eine ausführbare Datei übertragen wurde, wird aus der Datei mhtC1E4(1).exe.
Wenn der entfernte Browser nicht Internet Explorer ist, hat das angezeigte Format die Form eines in eine HTML-Seite eingebetteten Bildes. Diese sollte dann als HTML-Seite gespeichert und mit dem jeweils installierten Browser geöffnet werden; klicken Sie mit der rechten Maustaste auf den Link und wählen Sie „Speichern unter" und geben Sie den korrekten Dateinamen ein, in diesem Fall sleipnir.exe (Hinweis: Der IE erlaubt diesen Schritt nicht, daher die zwei verschiedenen Methoden).