Engineering Note

プログラミングなどの技術的なメモ

ProcessMonitorによる簡易ハニーポットの構築

honeypot

本記事では、Microsoft社のSysinternalsのツールであるProcessMonitorを使った、簡易ハニーポットを構築します。

 

 

準備

今回はVM上のKali LInuxWindows7を使って、マルウェアを実行した際の挙動をProcessMonitorを使って追跡してみたいと思います。

 

ProcessMonitorのダウンロード

ProcessMonitorは以下のMicrosoft社のSysinternalsからダウンロードします。

 

 

exe形式なので、procmon.exeをダブルクリックするだけで実行できます。

これを標的ホストのWindows7に配置します。

 

マルウェアの準備

テスト用のマルウェアに関しては、WinRARのインストール用のexeファイルにShelterというツールを使ってリバースシェル用のペイロードをバインドしたものを使用します。

こちらも標的ホストのWindows7に配置します。 

 

ProcessMonitorの起動

今回はコマンドプロンプトから起動し、結果をpml形式のログファイルに出力します。

事前にフィルタを設定したConfigファイルを作成し、以下コマンドで起動、停止およびCSVファイルにも出力してみます。

 

> procmon.exe /loadconfig conf.pmc /backingfile log /quiet
> procmon.exe /Terminate
> procmon.exe /Openlog log.PML /SaveAs log.csv

 

ログファイルの確認

それでは取得したログファイルをProcessMonitorで開いてみます。

ProcessMonitorでは以下4種類のアクティビティごとに表示させることができます。

 

  • File System:ファイル アクセスを記録
  • Registryレジストリ アクセスを記録
  • Network:ネットワーク アクセスを記録
  • Process and Thread:プロセスとスレッドの処理を記録

 

まずはネットワークから見てみます。

 

fig1. Network Activity

fig1. Network Activity

 wrar570jp.exeから10.0.0.2:4444へTCPコネクションが作成されているのが確認できます。

 

次にプロセスツリーを確認してみます。

 

fig2. Process Tree

fig2. Process Tree

wrar570jp.exeからcmd.exeが起動されwhoamiコマンドが実行されています。

その後にcscript.exeからApacheBenchが実行されているのが確認できます。

 

次にレジストリを見てみます。

 

fig3. Registry Activity

fig3. Registry Activity

 

"HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\"のレジストリに"pUxJGRMjKpOemB"というキーが追加され、それは"C:\Users\IEUser\AppData\Local\Temp\IprnKQb.vbs"に設定されていることが確認できます。

なお、上記のレジストリはOS起動時に自動実行させるプログラムを登録する場所になります。

 

今回は接続が切れた際に再接続するように300秒おきに実行するように設定しています。

 

fig4. vbsファイルの実行確認

fig4. vbsファイルの実行確認

 

最後に

今回はProcessMonitorを使った簡易ハニーポットを構築してみました。

このようにプロセスの流れを追跡することで、マルウェアがどういう挙動をするか簡単に把握することができました。

 

参考書籍

実践サイバーセキュリティモニタリング

ハッキング・ラボのつくりかた 仮想環境におけるハッカー体験学習