Bonjour,

Voila j'essaie de créer (sans utiliser Scapy) un sniffeur simple .Pour le moment j'ai réussis à créer ce petit programme :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/env python
import  struct, socket, binascii
s = socket.socket(socket.PF_PACKET, socket.SOCK_RAW, socket.htons(0x0800))
packet = s.recvfrom(2048)
tcpHeader = packet[0][34:54]
tcp_hdr = struct.unpack("!HHLLBBHHH",tcpHeader)
doff = tcp_hdr[4]
tcph_length = doff >> 4
print tcp_hdr
print "Port source :" + str(tcp_hdr[0])
print "Port Dest :" + str(tcp_hdr[1])
print "Sequence Number :" + str(tcp_hdr[2])
print "ACK number : " + str(tcp_hdr[3])
print "TCP Header length " + str(tcph_length)
print 'Data : ' + str(tcp_hdr[5])
print "Truc :" + str(tcp_hdr[6])
print "Machin : " + str(tcp_hdr[7])
print "Supermachin : " + str(tcp_hdr[8])
J'ai pas mis de comment puisqu'il est très simple il prend un packet (non spécifique) et l'affiche simplement .

Maintenant mon soucis est que j'aimerais n'affichier les packets uniquement lorsque ceux-ci utilisent un port spécifique hors j'ai aucune idée comment faire merci d'avance.