Port mitschneiden

Schneidet den Verkehr auf einem Port mit: die verlässlichste Antwort auf die Frage, ob Pakete überhaupt ankommen.

SMTP (25)

PowerShell (Windows)

pktmon Bordmittel

pktmon filter remove
pktmon filter add -p 25
pktmon start --capture --pkt-size 0 -f capture.etl
# ... reproduzieren, dann:
pktmon stop
pktmon etl2txt capture.etl -o capture.txt

tcpdump (WSL/Npcap) Zusatztool

tcpdump -i eth0 -n -c 200 port 25

Unix-Shell (bash)

tcpdump Bordmittel

tcpdump -i eth0 -nn -c 200 port 25

tshark Zusatztool

tshark -i eth0 -c 200 -f "port 25"

Submission (587)

PowerShell (Windows)

pktmon Bordmittel

pktmon filter remove
pktmon filter add -p 587
pktmon start --capture --pkt-size 0 -f capture.etl
# ... reproduzieren, dann:
pktmon stop
pktmon etl2txt capture.etl -o capture.txt

tcpdump (WSL/Npcap) Zusatztool

tcpdump -i eth0 -n -c 200 port 587

Unix-Shell (bash)

tcpdump Bordmittel

tcpdump -i eth0 -nn -c 200 port 587

tshark Zusatztool

tshark -i eth0 -c 200 -f "port 587"

pktmon ist ab Windows 10/Server 2019 an Bord und braucht eine Administrator-Sitzung. Unter Linux braucht tcpdump root oder die Berechtigung CAP_NET_RAW.

Gegenstelle mitschneiden

Schneidet nur den Verkehr zu einer bestimmten Gegenstelle mit, unabhängig vom Port.

PowerShell (Windows)

netsh trace Bordmittel

netsh trace start capture=yes tracefile=C:\temp\trace.etl maxsize=200 Ethernet.Type=IPv4 IPv4.Address=mail.example.com
# ... reproduzieren, dann:
netsh trace stop

tcpdump (WSL/Npcap) Zusatztool

tcpdump -i eth0 -nn -c 200 host mail.example.com

Unix-Shell (bash)

tcpdump Bordmittel

tcpdump -i eth0 -nn -c 200 host mail.example.com

tshark Zusatztool

tshark -i eth0 -c 200 -f "host mail.example.com"

netsh trace schreibt eine ETL-Datei, die sich mit dem Microsoft Network Monitor oder nach Umwandlung in Wireshark öffnen lässt.

SMTP-Dialog mitlesen

Zeigt den Klartext des SMTP-Dialogs im Mitschnitt: Befehle, Antwortcodes und Fehlermeldungen der Gegenstelle.

PowerShell (Windows)

pktmon Bordmittel

pktmon filter remove
pktmon filter add -p 25
pktmon start --capture --pkt-size 0 -f smtp.etl
# ... reproduzieren, dann: pktmon stop; pktmon etl2txt smtp.etl -o smtp.txt

tcpdump (WSL/Npcap) Zusatztool

tcpdump -i eth0 -nn -A -s 0 port 25

Unix-Shell (bash)

tcpdump Bordmittel

tcpdump -i eth0 -nn -A -s 0 port 25

tshark Zusatztool

tshark -i eth0 -Y smtp -T fields -e smtp.req.command -e smtp.req.parameter -e smtp.rsp.code

Das funktioniert nur unverschlüsselt (Port 25 ohne STARTTLS). Sobald TLS greift, ist der Inhalt verschlüsselt und nur noch der Handshake sichtbar.

In Datei mitschneiden

Schreibt den Mitschnitt in eine Datei, um ihn später in Ruhe (z. B. in Wireshark) auszuwerten.

PowerShell (Windows)

pktmon Bordmittel

pktmon filter remove
pktmon filter add -p 25
pktmon start --capture --pkt-size 0 -f capture.etl
# ... reproduzieren, dann: pktmon stop
pktmon pcapng capture.etl -o capture.pcapng

tcpdump (WSL/Npcap) Zusatztool

tcpdump -i eth0 -nn -s 0 -w capture.pcap port 25

Unix-Shell (bash)

tcpdump Bordmittel

tcpdump -i eth0 -nn -s 0 -w capture.pcap port 25
tcpdump -r capture.pcap -nn | head -50

tshark Zusatztool

tshark -i eth0 -w capture.pcap -f "port 25"

pktmon schreibt ETL und kann es mit «pktmon pcapng» in ein von Wireshark lesbares Format wandeln.

Offene Verbindungen

Zeigt die bestehenden Verbindungen zu einer Gegenstelle samt Prozess: schnelle Alternative, wenn kein Mitschnitt möglich ist.

PowerShell (Windows)

Get-NetTCPConnection Bordmittel

Get-NetTCPConnection -RemoteAddress (Resolve-DnsName mail.example.com -Type A).IPAddress -ErrorAction SilentlyContinue |
  Select-Object LocalPort, RemoteAddress, RemotePort, State, OwningProcess

netstat Bordmittel

netstat -ano | findstr ESTABLISHED

Unix-Shell (bash)

ss Bordmittel

ss -tnp state established "dst mail.example.com"

lsof Zusatztool

lsof -nP -iTCP -sTCP:ESTABLISHED | grep mail.example.com

Weitere Bereiche