Réseaux

Wireshark

Cheatsheet Wireshark — filtres de capture, filtres d'affichage et analyse de protocoles

wiresharkcapturepacketsanalysetrafic

Capture de trafic

Depuis la ligne de commande (tshark)

$tshark -i eth0
Capturer sur l'interface eth0
$tshark -i eth0 -w capture.pcap
Sauvegarder la capture dans un fichier
$tshark -r capture.pcap
Lire un fichier de capture
$tshark -i eth0 -f 'port 443'
Capturer uniquement le trafic HTTPS

Filtres de capture (BPF)

Appliques avant la capture — limitent ce qui est enregistre.

FiltreDescription
host 192.168.1.1Trafic depuis/vers cette IP
net 10.0.0.0/8Trafic du sous-reseau
port 80Trafic HTTP
tcp port 443Trafic HTTPS (TCP)
udp port 53Requetes DNS (UDP)
not port 22Tout sauf SSH
src host 10.0.0.1Trafic depuis cette IP
dst port 3306Trafic vers MySQL

Combinaisons

host 192.168.1.1 and port 80
(tcp port 80 or tcp port 443) and host 10.0.0.1
not (arp or dns)

Filtres d'affichage

Appliques apres la capture — filtrent ce qui est affiche.

Par protocole

FiltreDescription
httpTrafic HTTP
tlsTrafic TLS/SSL
dnsRequetes DNS
tcpTout le trafic TCP
icmpPings
arpResolutions ARP

Par adresse

FiltreDescription
ip.addr == 10.0.0.1IP source ou destination
ip.src == 10.0.0.1IP source
ip.dst == 10.0.0.1IP destination
eth.addr == aa:bb:cc:dd:ee:ffAdresse MAC

Par port

FiltreDescription
tcp.port == 80Port TCP 80 (src ou dst)
tcp.dstport == 443Port destination 443
udp.port == 53Port UDP 53

Avances

FiltreDescription
http.request.method == "POST"Requetes HTTP POST
http.response.code == 404Reponses 404
dns.qry.name contains "example"Requetes DNS contenant "example"
tcp.flags.syn == 1 && tcp.flags.ack == 0Paquets SYN (debut de connexion)
tcp.analysis.retransmissionRetransmissions TCP
frame.len > 1000Paquets de plus de 1000 octets
tls.handshake.type == 1Client Hello TLS

Operateurs

==    egal
!=    different
>     superieur
<     inferieur
>=    superieur ou egal
contains    contient la chaine
matches     regex
&&    AND
||    OR
!     NOT

Analyse courante

Suivre un flux TCP

Clic droit sur un paquet → Follow → TCP Stream

Reconstitue la conversation complete entre client et serveur.

Statistiques utiles

  • Conversations : Statistics → Conversations
  • Endpoints : Statistics → Endpoints
  • Protocoles : Statistics → Protocol Hierarchy
  • IO Graphs : Statistics → I/O Graphs

Detecter les anomalies

SymptomeFiltreIndication
Beaucoup de SYN sans ACKtcp.flags.syn==1 && tcp.flags.ack==0Scan de ports
Retransmissionstcp.analysis.retransmissionProbleme réseau
DNS suspectsdns.qry.name contains "evil"Malware, C2
Requetes HTTP anormaleshttp.request.uri contains "../"Tentative de traversal

Bonnes pratiques

  • Capturer avec des filtres BPF pour limiter la taille
  • Analyser hors ligne (.pcap) pour ne pas surcharger le réseau
  • Utiliser des profils de colonnes adaptes au type d'analyse
  • Sauvegarder les filtres d'affichage frequents en bookmarks