Qu'est-ce qu'une capture PCAP ?
Une capture de paquets (.pcap ou .pcapng) est un enregistrement du trafic réseau, produit par des outils comme Wireshark, tcpdump, tshark ou dumpcap. Chaque trame est stockée avec un horodatage et les octets vus sur le fil, à partir de la couche liaison.
Le pcapng est le format le plus récent : un même fichier peut contenir plusieurs interfaces de capture, chacune avec son type de liaison et sa résolution temporelle, plus des métadonnées et même des secrets de déchiffrement. Cet outil lit les deux, décode Ethernet/VLAN, Linux cooked (SLL/SLL2), l'IP brute et les liens loopback, et suit IPv4/IPv6, TCP, UDP et ICMP.
Ce qu'il reconstruit
- Conversations : chaque flux (5-uplet) avec le nombre de paquets et d'octets par sens, la première/dernière vue et la durée.
- DNS, HTTP et TLS : requêtes et réponses ; requêtes et réponses avec hôte, URI, statut, user-agent et type de contenu ; SNI, ALPN et empreintes JA3/JA4 du ClientHello.
- Fichiers extraits : corps HTTP reconstruits après réassemblage TCP, gzip/deflate décodés, hachés en SHA-256 et téléchargeables.
- Identifiants, IOC et hiérarchie des protocoles : connexions HTTP Basic, formulaire et FTP en clair, handshakes NTLM au format hashcat, et une liste d'indicateurs dédoublonnée.
Son intérêt dans une enquête
- Une seule capture contient souvent toute l'histoire : quel hôte a parlé à quel serveur, ce qui a été téléchargé ou exfiltré, et quels identifiants sont passés sur le réseau.
- Les mots de passe HTTP Basic / FTP en clair et les handshakes NTLMv1/v2 défi-réponse s'extraient directement — la sortie NTLM est prête pour hashcat (mode 5500 / 5600).
- Le TLS est chiffré, mais pas le ClientHello : le SNI révèle la destination, et les empreintes JA3/JA4 permettent de regrouper les clients et de repérer un malware ou un outil qui réutilise une pile.
- Les indicateurs signalent les gros transferts sortants, les téléchargements d'exécutables et d'archives, le DNS vers des noms rares ou d'apparence aléatoire, et les services sur des ports non standard.
Limites
- Les contenus chiffrés (TLS, SSH, QUIC, SMB3 chiffré) ne sont pas déchiffrés — seul ce qui est visible en clair est rapporté.
- Le réassemblage TCP est au mieux : les retransmissions et les segments désordonnés sont gérés, mais les octets que la capture n'a jamais enregistrés (snaplen, paquets perdus) sont signalés comme des trous.
- QUIC/HTTP3, la défragmentation IP et l'extraction poussée de fichiers SMB ne sont pas encore implémentés (voir le TODO du README).
- Les indicateurs heuristiques sont des pistes de triage, pas des conclusions — vérifiez toujours dans les données brutes.
Comment obtenir une capture
- Wireshark ou tshark : Fichier → Enregistrer sous .pcapng, ou `tshark -w capture.pcapng`.
- tcpdump : `tcpdump -i eth0 -w capture.pcap` (ajoutez `-s0` pour garder les paquets entiers, pas seulement les en-têtes).
- Windows : `pktmon` ou `netsh trace` (convertissez d'abord le .etl en .pcapng), ou dumpcap de Wireshark.
- Décompressez les captures .gz / .zst avant de les déposer, et gardez les trames complètes (sans snaplen) quand c'est possible, pour que les corps se réassemblent entièrement.
FAQ
Ma capture est-elle envoyée quelque part ?
Non. L'analyseur est du Rust compilé en WebAssembly et s'exécute dans un Web Worker de votre navigateur. Le fichier est lu par tranches sur votre machine ; il n'y a aucun point d'envoi.
Quelle taille de capture peut-il traiter ?
Le fichier est lu par morceaux via un analyseur incrémental, donc il n'a jamais à tenir deux fois en mémoire. Les très grosses captures prennent tout de même du temps et de la mémoire pour les résultats, et des limites par liste protègent la page — l'outil vous prévient lorsqu'une limite est atteinte.
Qu'est-ce que JA3 / JA4, et pourquoi les deux ?
Ce sont des empreintes d'un ClientHello TLS : JA3 est le MD5 classique de la liste des suites/extensions, JA4 est le format FoxIO plus récent et plus robuste. Comme le contenu TLS est chiffré, ces empreintes (avec le SNI) sont souvent le meilleur moyen d'identifier un client ou une famille de malware.
Peut-il vraiment récupérer des mots de passe ?
Seulement ceux envoyés sans vraie protection : HTTP Basic et formulaires sur HTTP en clair, USER/PASS FTP, et handshakes NTLM. Les mots de passe NTLM ne sont pas dans les paquets, mais le défi-réponse est exporté en ligne hashcat à casser hors ligne.
En quoi est-ce différent de Wireshark ?
Ce n'est pas un remplaçant — c'est une vue de triage rapide qui tourne dans le navigateur sans installation. Elle répond en quelques secondes à « que s'est-il passé dans cette capture » (conversations, DNS, HTTP, TLS, fichiers, IOC, identifiants) ; pour l'analyse au niveau paquet, ouvrez le même fichier dans Wireshark.