Développé par Philippe Biondi, Scapy est un outil écrit en Python facilitant la création de paquets, ainsi que leurs envois et leurs réceptions sur le réseau. En dépit d'une documentation exemplaire, la rumeur veut que Scapy soit lent. S'il est vrai que les performances ne sont pas tout le temps au rendez-vous, il faut rappeler que Scapy a été développé pour permettre un prototypage rapide et une interaction complète avec les paquets émis et reçus. Par conséquent, un nombre important de « détails » sont silencieusement gérés par Scapy, comme le choix de l'adresse IP source ou le calcul des checksums. Cet article présente différents trucs et astuces [1] permettant d'améliorer sensiblement ses performances sous Linux. Il s'adresse aux utilisateurs avancés de Scapy.
1. Scapy 2.3.1
La version 2.3.1 de Scapy est disponible depuis la fin de l'année 2014. Il s'agit de la première version stable depuis 2011. Début mars 2015, elle est intégrée dans Gentoo, Arch Linux et pip. Le projet est désormais géré sur Bitbucket [2], ce qui facilite le suivi des bugs, leurs corrections et l'ajout de nouvelles fonctionnalités.
Depuis la version 2.2.0, Scapy peut désormais gérer de nouveaux protocoles dont IPsec, DNSSEC, CARP et LDP. Une nouvelle fonction de cache de paquets a également été intégrée par Pierre Lalet. Elle permet de conserver une copie exacte du paquet décodé par Scapy (lors de sa lecture depuis un fichier PCAP ou sa capture sur le réseau) rendant l'écriture dans un fichier PCAP, ou l'envoi sur le réseau plus rapide s'il n'a pas été modifié par l'utilisateur. Dans le cas du DNS, certains paquets reconstruits pouvaient être différents des paquets reçus, car Scapy ne gère pas la compression des noms de domaines, ce...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première