
ARPリクエストを分析して、相互通信するホストと古いネットワークアドレス設定(SNAC)を特定する
ARPリクエストを解析して、互いに通信している可能性のあるホストを特定する偵察ツールです。名前解決にLLMNR/NBNSが使用されていないという厄介な状況で役立ちます。
提供:

これはKaliまたはその他のDebianベースのLinuxディストリビューションでのみ動作します
eavesarpはPython3.7とScapyが必要です。Pythonをインストール後、以下を実行してScapyをインストールしてください: python3.7 -m pip install -r requirements.txt
注意:
eavesarpは、インターフェースからのスニッフィングとARPパケットの作成にroot権限が必要です。eavesarp.dbという名前で自動的にディスクに書き込まれます。最も基本的な実行方法は次の通りです:
sudo ./eavesarp.py capture -i eth1
これにより、eavesarpが初期化され、ARPリクエストがキャプチャ、分析され、関連する出力がユーザーに表形式で表示されます。非標準の引数については、--helpを使用してください。このモードで実行する場合、stale列は、ターゲット(送信元として)からのARPリクエストがまだ観測されていない場合に[UNCONFIRMED]と表示されることに注意してください。特定のターゲットアドレスがstaleになったかどうかを判断するには、-arフラグを使用してARP解決を有効にします。
___ ___ __ _____ ___ ___ ________
/ -_) _ `/ |/ / -_|_-</ _ `/ __/ _ \
\__/\_,_/|___/\__/___/\_,_/_/ / .__/
-----------------------------/ /---
[LISTEN CAREFULLY] /_/
Capture interface: eth1
ARP resolution: disabled
DNS resolution: disabled
Requests analyzed: 65
SNAC Sender Target ARP# Stale
------ ------------- -------------- ------ -------------
192.168.86.5 192.168.86.101 29 [UNCONFIRMED]
192.168.86.3 1
192.168.86.3 192.168.86.37 25 [UNCONFIRMED]
192.168.86.38 7 [UNCONFIRMED]
192.168.86.5 1
192.168.86.99 1
192.168.86.99 192.168.86.3 1
-arフラグと-drフラグを含めることで、ARP解決とDNS解決を有効にします。これによりツールが非パッシブになることに注意してください。ただし、DNSレコード、MACアドレス、およびSNACのステータス確認が返されるという利点があります。
sudo ./eavesarp.py capture -i eth1 -ar -dr --blacklist 192.168.86.5
以下の出力から、どの送信元が1つ以上のSNACの影響を受けており、影響を受けるアドレスがどれかが明らかになります。最後の列は、潜在的なMITMの機会が存在するかどうかを示しています。eavesarpは、指定された送信元に対してPTR解決されたFWDアドレスが異なるかどうかを確認します。異なる場合、意図されたターゲットが新しいFWDアドレスに移動したことを示す可能性があります。攻撃ホストのインターフェースにエイリアスを適用することで、トラフィックを意図されたターゲットに転送し、転送中の情報をキャプチャできる可能性があります。
___ ___ __ _____ ___ ___ ________
/ -_) _ `/ |/ / -_|_-</ _ `/ __/ _ \
\__/\_,_/|___/\__/___/\_,_/_/ / .__/
-----------------------------/ /---
[LISTEN CAREFULLY] /_/
Capture interface: eth1
ARP resolution: enabled
DNS resolution: enabled
Requests analyzed: 55
SNAC Sender Target ARP# Stale Sender PTR Target PTR MITM
------ ------------- -------------- ------ ------- -------------- ---------------- ---------------------------------------------
True 192.168.86.2 192.168.86.101 21 True iron.aa.local. syslog.aa.local. T-IP:192.168.86.101 != PTR-FWD:192.168.86.102
True 192.168.86.3 192.168.86.38 17 True crux.aa.local.
192.168.86.37 15 True
192.168.86.99 1 w10.aa.local.
192.168.86.99 192.168.86.3 1 w10.aa.local. crux.aa.local.
eavesarp生成)の分析eavesarpは、分析のためにSQLiteデータベースとPCAPファイルを受け入れることができます。抽出された値を新しいデータベースファイルに出力し、さらなる分析に使用します。このプロセスの詳細については--helpフラグを参照してください。ただし、基本的な実行方法を以下に示します。
sudo ./eavesarp.py analyze -sfs eavesarp.db -cp disable --blacklist 192.168.86.5 --csv-output-file eavesarp_analysis.db
SNAC Sender Target ARP# Stale Sender PTR Target PTR MITM
------ ------------- -------------- ------ ------- -------------- ---------------- ---------------------------------------------
True 192.168.86.2 192.168.86.101 21 True iron.aa.local. syslog.aa.local. T-IP:192.168.86.101 != PTR-FWD:192.168.86.102
True 192.168.86.3 192.168.86.38 17 True crux.aa.local.
192.168.86.37 15 True
192.168.86.99 1 w10.aa.local.
192.168.86.99 192.168.86.3 1 w10.aa.local. crux.aa.local.
- Writing csv output to eavesarp_analysis.db
...そしてCSV出力は次のようになります...
arp_count,sender,sender_mac,target,target_mac,stale,sender_ptr,target_ptr,target_forward,mitm_op,snac
21,192.168.86.2,74:d4:35:1a:b5:fb,192.168.86.101,[STALE TARGET],True,iron.aa.local.,syslog.aa.local.,192.168.86.102,T-IP:192.168.86.101 != PTR-FWD:192.168.86.102,True
17,192.168.86.3,b8:27:eb:a9:5c:8f,192.168.86.38,[STALE TARGET],True,crux.aa.local.,,,False,True
15,192.168.86.3,b8:27:eb:a9:5c:8f,192.168.86.37,[STALE TARGET],True,crux.aa.local.,,,False,True
1,192.168.86.99,08:00:27:22:49:c5,192.168.86.3,b8:27:eb:a9:5c:8f,False,w10.aa.local.,crux.aa.local.,192.168.86.3,False,False
1,192.168.86.3,b8:27:eb:a9:5c:8f,192.168.86.99,08:00:27:22:49:c5,False,crux.aa.local.,w10.aa.local.,192.168.86.99,False,True