Scapy

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Scapy
Développeur Philippe Biondi
Dernière version 2.2.0 () [+/-]
État du projet En développement actif
Écrit en Python
Environnement Multiplate-forme
Type Manipulation de paquets réseau
Politique de distribution Gratuit
Licence GNU GPL
Site web www.secdev.org/projects/scapy/

Scapy est un logiciel libre de manipulation de paquets réseau écrit en python.

Il est capable, entre autres, d'intercepter le trafic sur un segment réseau, de générer des paquets dans un nombre important de protocoles, de réaliser une prise d'empreinte de la pile TCP/IP, de faire un traceroute, d'analyser le réseau informatique

Avantages de scapy[modifier | modifier le code]

Scapy n'est pas un outil clé en main (comme Nmap ou autre) mais un Framework basé sur Python fournissant un ensemble de fonctions pour interagir avec le réseau. Il a donc les avantages suivants :

  • Une grande liberté d'action car chaque paramètre peut être modifié
  • Il décode mais n'interprète pas les paquets reçus

Exemple d'utilisation de scapy[modifier | modifier le code]

Création interactive de paquets[modifier | modifier le code]

>>> a=IP(ttl=10)
>>> a
< IP ttl=10 |>
>>> a.src
’127.0.0.1’
>>> a.dst="192.168.1.1"
>>> a
< IP ttl=10 dst=192.168.1.1 |>
>>> a.src
’192.168.8.14’
>>> del(a.ttl)
>>> a
< IP dst=192.168.1.1 |>

Envoi de paquets[modifier | modifier le code]

a = IP(dst="192.168.1.1") / TCP(flags="SR") / "Hello world !"
send(a)

Fuzzing[modifier | modifier le code]

pkt = IP(dst="target")/fuzz( UDP()/NTP(version=4))
send(pkt)

Lecture de paquets sur l'interface réseau[modifier | modifier le code]

pkts = sniff(count=5, filter="tcp")

Voir aussi[modifier | modifier le code]

Article connexe[modifier | modifier le code]

Liens externes[modifier | modifier le code]