Publicité

Scapy

SecDev (Philippe Biondi et les mainteneurs du projet secdev/scapy) Réseau Open source

Scapy est une bibliothèque Python libre pour forger, envoyer, capturer et décoder des paquets réseau, pour experts sécurité sous Linux, macOS et Windows.

Liens officiels uniquement, vérifiés le octobre 9, 2026

Sommaire
  1. À quoi sert Scapy
  2. Pour qui ?
  3. Télécharger Scapy sans risque
  4. Questions fréquentes

Scapy est une bibliothèque Python qui permet de fabriquer, d’envoyer, de capturer et de décoder des paquets réseau, couche par couche et champ par champ. Elle a été écrite en 2003 par Philippe Biondi, chercheur en sécurité, et elle est aujourd’hui maintenue par l’équipe SecDev avec une communauté de contributeurs réunie sur le dépôt GitHub secdev/scapy. Le code est publié sous licence libre GPL v2. D’après la page PyPI du projet, la version 2.8.0 est sortie le 2 octobre 2026 et réclame Python 3.7 au minimum.

À quoi sert Scapy

Pour comprendre l’intérêt de Scapy, il faut se rappeler qu’un outil réseau classique a un rôle fixé à l’avance. Ping envoie une requête ICMP, Nmap cherche des ports ouverts. Scapy, lui, ne décide rien à votre place. Il met à disposition des classes Python qui représentent les protocoles, Ethernet, IP, TCP, UDP, DNS, ARP et des centaines d’autres, et l’on assemble un paquet en empilant ces couches avec l’opérateur de division. Chaque champ a une valeur par défaut raisonnable que l’on peut remplacer, ce qui permet de produire en une ligne un paquet parfaitement valide ou, au contraire, volontairement malformé.

Publicité

La documentation résume la philosophie du projet par une formule : Scapy décode, il n’interprète pas. Quand une réponse arrive, la bibliothèque la restitue intégralement, décodée, et laisse l’utilisateur tirer ses propres conclusions au lieu de lui afficher un verdict du type « port filtré ». Cette approche explique pourquoi les auteurs le présentent comme un remplaçant de hping, d’arping ou d’arpspoof, et d’une bonne partie de Nmap et de tcpdump. Il lit et écrit aussi les fichiers pcap, ce qui en fait un complément naturel de Wireshark.

Dans la même catégorie de notre logithèque, Ostinato et Masscan répondent à des besoins différents. Ostinato est un générateur de trafic graphique pensé pour produire des flux à haut débit avec des gabarits de paquets. Masscan est un scanner de ports spécialisé, écrit en C, conçu pour balayer des plages d’adresses immenses le plus vite possible. Scapy se situe ailleurs : il privilégie la souplesse et l’exactitude à la vitesse, et s’adresse à celui qui veut examiner un échange précis ou écrire un test sur mesure.

On s’en sert pour vérifier qu’un pare-feu applique bien ses règles, pour reproduire un bug de pile réseau, pour écrire un petit fuzzer, ou pour enseigner le fonctionnement de TCP en observant chaque segment. La version 2.8.0 a élargi le champ d’action avec des protocoles automobiles comme SAE J1939 et UDS, des modules Bluetooth, DICOM, PTP ou encore le protocole classique de MySQL, selon les notes de version publiées sur GitHub.

Pour qui ?

Scapy s’adresse d’abord aux professionnels de la sécurité offensive et défensive, aux administrateurs réseau qui veulent diagnostiquer un comportement étrange, aux développeurs de protocoles et aux enseignants. Une seule condition est réellement nécessaire : être à l’aise avec Python, puisque le langage sert à la fois d’interface et de langage de script.

Ses limites sont tout aussi claires. Écrit en Python, Scapy n’est pas conçu pour saturer un lien ou balayer des millions d’adresses : pour ces tâches, Ostinato ou Masscan seront bien plus efficaces. L’envoi et la capture de paquets bruts exigent des droits administrateur sur toutes les plateformes. Enfin, l’outil n’est pas un analyseur graphique ; pour explorer une grosse capture, Wireshark reste le bon réflexe.

Télécharger Scapy sans risque

La version officielle est publiée sur l’index Python PyPI, et la commande pip install scapy suffit sous Linux et macOS. Le site scapy.net renvoie vers le dépôt GitHub secdev/scapy, où l’on trouve le code source et les archives de chaque version. Debian et Ubuntu proposent aussi le paquet python3-scapy, et OpenBSD le paquet python-scapy, d’après la documentation d’installation. Sous Windows, il faut d’abord installer le pilote de capture Npcap, puis Scapy par pip ; la documentation précise que WinPcap fonctionne encore mais n’est plus pris en charge.

Publicité

Scapy est entièrement gratuit et ne possède ni édition payante ni version professionnelle. Comme il s’agit d’un paquet Python, la principale menace est le paquet homonyme ou presque homonyme déposé sur PyPI par un inconnu : vérifiez que vous installez bien le projet dont l’auteur affiché est Philippe Biondi et dont la page d’accueil pointe vers scapy.net. Un installateur exécutable pour Windows proposé par un site de téléchargement tiers n’a aucune raison d’exister et doit être évité.

Questions fréquentes

Scapy est-il gratuit ?

Oui. Scapy est un logiciel libre distribué sous licence GPL v2, sans version payante ni fonctions bloquées. La documentation, elle, est publiée sous licence Creative Commons BY-NC-SA 2.5, ce qui n’a aucune incidence sur l’utilisation du logiciel.

Faut-il être administrateur pour utiliser Scapy ?

Pour envoyer des paquets bruts ou écouter une interface, oui, sous Linux, macOS comme Windows, car le système réserve ces opérations aux comptes privilégiés. Lire un fichier pcap existant ou construire des paquets sans les émettre fonctionne en revanche avec un compte ordinaire.

Scapy fonctionne-t-il sous Windows ?

Oui, à condition d’installer au préalable le pilote Npcap, indispensable pour accéder à la carte réseau. La documentation conseille de désactiver le mode de compatibilité WinPcap lors de l’installation de Npcap, puis d’installer Scapy avec pip et de le lancer depuis l’invite de commandes.

Notre avis

On aime

  • Construit n’importe quel paquet, couche par couche
  • Fonctionne en console interactive ou en bibliothèque
  • Plusieurs centaines de protocoles décodés nativement
  • Libre, gratuit et maintenu activement sur GitHub
  • Lit et écrit les fichiers pcap de Wireshark

On aime moins

  • Exige de savoir programmer en Python
  • Débit limité pour les tests de charge ou les scans massifs
  • Droits administrateur obligatoires pour émettre
  • Installation Windows plus délicate (Npcap requis)

Fiche technique

ÉditeurSecDev (Philippe Biondi et les mainteneurs du projet secdev/scapy)
LicenceOpen source
PrixOffert
Version2.8.0
Mise à jour leoctobre 2, 2026
Configuration requisePython 3.7 à 3.14 ; Npcap sous Windows ; droits administrateur pour envoyer et capturer des paquets
PlateformesLinux, macOS, Windows

Alternatives

Ostinato Ostinato (Srivats P) · Réseau

Ostinato est un générateur de trafic réseau payant, avec interface graphique, pour tester commutateurs et liaisons sous Windows, macOS et Linux.

Windows · macOS · Linux Payant

Masscan Robert David Graham · Réseau

Masscan est un scanner de ports libre ultra-rapide pour auditeurs et équipes de sécurité, sous Linux, macOS ou Windows, réservé aux réseaux autorisés.

Linux · macOS · Windows Open source

Jean Mathieu

Écrit par

Jean Mathieu

Ingénieur passionné et rédacteur web depuis 2018, j'allie mon expertise technique à ma passion pour l'écriture pour partager astuces, actualités et savoirs pratiques avec la communauté.