
LOKI (Limited Obstructive Keyboard Impersonator) is a RDP File Transfer Tool Using Keypresses
NCC Group Plc によりオープンソースとして公開 - http://www.nccgroup.com/
Dave Spencer によって開発(david [dot] spencer [at] nccgroup [dot] com)
http://www.github.com/nccgroup/Loki
AGPL のもとで公開されています。詳細は LICENSE を参照してください
Loki(Limited Obstructive Keyboard Impersonator)には RDP クライアントが組み込まれており、テスターがメモ帳やその他のテキストエディタにファイルを手動でタイピングする能力を利用します。メモ帳を使用する際の主な問題は、バイナリデータをタイピングできないことです。これに対処するために、hex や base64 などのいくつかのエンコーディングを使用できますが、問題は相手側でそれらをデコードする方法が必要なことです。幸いなことに、Internet Explorer には MIME HTML(.mht)ファイル用の base64 デコーダが組み込まれています。 Loki は指定されたファイルを取得し、base64 に変換して、入力シミュレータ(https://inputsimulator.codeplex.com/)を使用して、フォーカスされているテキストエディタに .mht ファイルをタイピング出力します。
Loki は Sleipnir(https://github.com/nccgroup/sleipnir)および Fenrir(https://github.com/nccgroup/fenrir)と一緒に使用できます。
最初の Loki インターフェースは非常にわかりやすく、5 つの入力フィールドと 2 つのチェックボックスで構成されています。「RDP server」と「RDP Port」は必須フィールドで、RDP サーバーへの接続に使用されます。RDP ゲートが設置されている場合は、「RDP Gateway」フィールドを使用してアドレスを指定できます。 「Metasploit Server」と「Metasploit Port」のフィールドは Fenrir と一緒に使用するためのものです。 NLA チェックボックスは、クライアントがネットワークレベル認証を使用するかどうかを切り替え、「Full Screen」チェックボックスはクライアントをフルスクリーンモードに設定します。
接続すると、Loki を使用するためのインターフェースはさらにシンプルになり、「Loki」というタイトルの単一のドロップダウンメニューに「send file」という 1 つのオプションがあり、send keys を使用してファイルを送信します。 最初に行うことは、テキストエディタを開いて(フォーカスされていることを確認する)、Loki -> Send File (sendkeys) を選択することです。その後、Loki は次の 2 つの質問をします。
ネットワークが特に遅いですか?「はい」を選択した場合、キー入力の間隔は 10ms に設定され、「いいえ」を選択した場合は代わりに 3ms が使用されます。
リモートブラウザは Internet Explorer ですか?「はい」を選択した場合、ファイルは mht ファイルの一部として送信されます。「いいえ」を選択した場合、他のブラウザは mht 形式をサポートしていないため、ファイルは埋め込み画像の一部として送信されます。
リモートブラウザが Internet Explorer の場合、表示される形式は mht になります。 完了したら、ファイルを filename.mht として保存し、IE で開いてから、「web page, complete」として再度保存します。これにより、Web ページと、ランダムな名前の tmp ファイルが 2 つ含まれるディレクトリが作成されます。この 2 つのファイルのうち大きい方の拡張子を、転送されたファイルの拡張子に変更する必要があります。たとえば、転送されたファイルが実行可能ファイルだった場合、ファイルは mhtC1E4(1).exe になります。
リモートブラウザが Internet Explorer でない場合、表示される形式は html ページに埋め込まれた画像の形式になります。 これを html ページとして保存し、インストールされている任意のブラウザで開き、リンクを右クリックして「save as」を選択し、正しいファイル名(この場合は sleipnir.exe)を入力します(IE ではこの手順が許可されていないため、2 つの異なる方法があることに注意してください)。