
Analysiert ARP-Anfragen, um miteinander kommunizierende Hosts und veraltete Netzwerkadresskonfigurationen (SNACs) zu identifizieren.
Ein Reconnaissance-Tool, das ARP-Anfragen analysiert, um Hosts zu identifizieren, die wahrscheinlich miteinander kommunizieren – nützlich in diesen gefürchteten Situationen, in denen LLMNR/NBNS nicht für die Namensauflösung verwendet werden.
Bereitgestellt von:

Das funktioniert nur auf Kali oder anderen Debian-basierten Linux-Distributionen
eavesarp benötigt Python 3.7 und Scapy. Nach der Installation von Python führen Sie Folgendes aus, um Scapy zu installieren: python3.7 -m pip install -r requirements.txt
Hinweise:
eavesarp benötigt Root-Rechte, um vom Interface zu snifflen und ARP-Pakete zu erstellen.eavesarp.db auf die Festplatte geschrieben, um ein erneutes Erfassen von ARP-Anfragen zu vermeiden.Die einfachste Ausführungsform ist:
sudo ./eavesarp.py capture -i eth1
Dadurch wird eavesarp so initialisiert, dass ARP-Anfragen erfasst, analysiert und die relevanten Ausgaben dem Benutzer in einer Tabelle präsentiert werden. Verwenden Sie --help für weitere Informationen zu nicht standardmäßigen Argumenten. Beachten Sie, dass die Spalte „Stale“ [UNCONFIRMED] anzeigt, wenn eine ARP-Anfrage, die von einem Ziel (als Absender) stammt, im aktuellen Modus noch nicht beobachtet wurde. Aktivieren Sie die ARP-Auflösung über das Flag -ar, um festzustellen, ob eine bestimmte Zieladresse veraltet ist.
___ ___ __ _____ ___ ___ ________
/ -_) _ `/ |/ / -_|_-</ _ `/ __/ _ \
\__/\_,_/|___/\__/___/\_,_/_/ / .__/
-----------------------------/ /---
[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
Aktivieren Sie die ARP- und DNS-Auflösung, indem Sie die Flags -ar und -dr verwenden. Beachten Sie, dass das Tool dadurch nicht mehr passiv ist, der Vorteil liegt jedoch darin, dass DNS-Einträge, MAC-Adressen und eine Bestätigung des SNAC-Status zurückgegeben werden.
sudo ./eavesarp.py capture -i eth1 -ar -dr --blacklist 192.168.86.5
Aus der folgenden Ausgabe können wir deutlich erkennen, welche Sender von einem oder mehreren SNACs betroffen sind und welche Adressen betroffen sind. Die letzte Spalte zeigt an, ob eine potenzielle MITM-Möglichkeit besteht. eavesarp prüft, ob die FWD-Adresse des für einen bestimmten Sender aufgelösten PTR-Eintrags abweicht. Wenn dies der Fall ist, könnte dies ein Indikator dafür sein, dass das beabsichtigte Ziel zur neuen FWD-Adresse gewechselt ist. Das Anwenden eines Alias auf das Interface unseres Angreifer-Hosts könnte es uns ermöglichen, den Datenverkehr an das beabsichtigte Ziel weiterzuleiten und Informationen während der Übertragung zu erfassen.
___ ___ __ _____ ___ ___ ________
/ -_) _ `/ |/ / -_|_-</ _ `/ __/ _ \
\__/\_,_/|___/\__/___/\_,_/_/ / .__/
-----------------------------/ /---
[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 kann SQLite-Datenbanken und PCAP-Dateien zur Analyse akzeptieren. Es gibt die extrahierten Werte in eine neue Datenbankdatei zur weiteren Analyse aus. Weitere Informationen zu diesem Prozess finden Sie im --help-Flag. Die grundlegende Ausführung wird unten gezeigt.
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
...und die CSV-Ausgabe sieht folgendermaßen aus...
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