Générer des paquets IP avec HPING…
Date: 10/07/2007 | Catégories: Open-source,Reseau | Tags: générer,hping,ip,Open-source,paquets,réseau,test
... ou comment tester de manière efficace son réseau...
Installation (sur Fedora)
Après avoir récupéré les sources sur le site officiel, dézippé et détarré...
yum install libnet-devel libpcap-devel
ln -s /usr/include/pcap-bpf.h /usr/include/net/bpf.h
./configure --no-tcl
make
make install
Exemples d'utilisations
Un ping TCP simple (pardéfaut sur le port 0):
# hping 192.168.29.1
HPING 192.168.29.1 (eth0 192.168.29.1): NO FLAGS are set, 40 headers + 0 data bytes
len=46 ip=192.168.29.1 ttl=64 id=21068 sport=0 flags=RA seq=0 win=0 rtt=0.3 ms
len=46 ip=192.168.29.1 ttl=64 id=48983 sport=0 flags=RA seq=1 win=0 rtt=0.3 ms
len=46 ip=192.168.29.1 ttl=64 id=44368 sport=0 flags=RA seq=2 win=0 rtt=0.2 ms
...
Un ping TCP sur le port 80:
# hping 192.168.29.1 -c 2 -S -p 80 -n
HPING 192.168.29.1 (eth0 192.168.29.1): S set, 40 headers + 0 data bytes
len=46 ip=192.168.29.1 ttl=64 DF id=14101 sport=80 flags=SA seq=0 win=57344 rtt=0.2 ms
len=46 ip=192.168.29.1 ttl=64 DF id=6759 sport=80 flags=SA seq=1 win=57344 rtt=0.5 ms
...
Un ping ICMP (même fonction que le ping classique):
#hping 192.168.29.1 -1
HPING 192.168.29.1 (eth0 192.168.29.1): icmp mode set, 28 headers + 0 data bytes
len=46 ip=192.168.29.1 ttl=64 id=52414 icmp_seq=0 rtt=0.3 ms
len=46 ip=192.168.29.1 ttl=64 id=18412 icmp_seq=1 rtt=0.2 ms
...
Un ping TCP avec spoofing (c'est à dire génération d'un paquet avec une adresse IP source différente de celle de la machine qui lance le hping):
# hping 192.168.29.1 -a www.google.fr
HPING 192.168.29.1 (eth0 192.168.29.1): NO FLAGS are set, 40 headers + 0 data bytes
...
PS: dans ce mode, vous n'aurez bien sur pas les réponses, qui seront envoyés à la machine spécifiée par l'option -a... c'est pour cela que c'est une attaque ben connue dans le monde des réseaux).
Quelques options...
-i
-c
-q: affiche seulement le rapport final
Exemple:
...
--- 192.168.29.1 hping statistic ---
5 packets tramitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 0.2/0.2/0.3 ms
-V: active le mode verbose
Exemple:
len=46 ip=192.168.29.1 ttl=64 id=6825 tos=0 iplen=40
sport=0 flags=RA seq=2 win=0 rtt=0.3 ms
seq=0 ack=624676233 sum=fdf5 urp=0
-0: active le mode RAW IP
-1: active le mode ICMP
-2: active le mode UDP
Si vous voulez une liste de toutes les options, c'est par ici.