logo

Knowledge Is Power

 
 

- Reinit des nouveaux posts -

- Recherche -

Messages Privés - Derniers posts
S'enregistrer - Login - Liste des membres
Vous logger : Login Pass

Réseaux filaires et sans-fil : administration, etc... >> Determiner le protocole d'un paquet (FTP, HTTP, ou autre) Newtopic | Reply
poster txt
jyz93
Inscrit le 05-11-2008
Avatar
Posté le 07-09-2011 21:54

Bonsoir a tous,

Voila je suis en train de faire un petit programme manipulant les raw socket avec pcap.
Le problème et que je ne parviens pas lorsque je reçois un paquet a savoir son protocole (j'aimerais pouvoir filtrer et garder que les paquets FTP).
Donc j'ai accès aux couches Ethernet, IP, ainsi que TCP...
Mais je ne sais pas trop ou peut se trouver cette information dans un paquet. Le payload m'indique juste la commande FTP, mais je ne vais tous de même pas faire plein de Si pour chaque commande envisageable...

Merci d'avance pour votre aide,
profil | edit | quote
hyatus
Inscrit le 25-08-2001
Avatar
Posté le 07-09-2011 22:45

char *filter_exp = "port 21"; /* The filter expression */

int pcap_compile(pcap_t *p, struct bpf_program *fp, char *str, int optimize,
bpf_u_int32 netmask)

int pcap_setfilter(pcap_t *p, struct bpf_program *fp)
_________________________
Car la liberte n'est pas un Droit mais un Devoir, et que le savoir apporte la Liberte,alors la TAZ est ce qu'elle est, le reflet de la societe qui nait de ce qu'elle sait... ( hyatus copyleft )
profil | mail | Website | edit | quote
jyz93
Inscrit le 05-11-2008
Avatar
Posté le 08-09-2011 17:26

Le bout de code que tu m'a passé me permes juste de mettre en place un filtre tcpdump qui filtre le trafic sur le port 21.
Un serveur FTP n’écoute pas forcement sur le port 21. D'ailleurs on peut même faire écouter un serveur HTTP sur le port 21.
En faite j'aimerais par exemple que si j’écoute le trafic sur le port 21 et qu'il y a un serveur HTTP avec donc des requêtes HTTP qui transitent, il ne le prenne pas en conte.
C'est pourquoi j'essaye de savoir comment reconnaître une requête FTP.

[ Ce Message a été édité par: jyz93 le 2011-09-08 17:26 ]
profil | edit | quote
hyatus
Inscrit le 25-08-2001
Avatar
Posté le 08-09-2011 20:25

Il n'y a pas ce type d'information dans TCP ( à ma connaissance ). Même en faisant une analyse fine des paquets, cela me parait compliqué. Il vaut mieux utiliser les filtres sur les ports probables ou utiliser le payload qui n'est pas une si mauvaise solution d'autant qu'il n'y pas 36 commandes ...

Si quelqu'un à une idée ou un outil capable de le faire ça m'intéresse également.
_________________________
Car la liberte n'est pas un Droit mais un Devoir, et que le savoir apporte la Liberte,alors la TAZ est ce qu'elle est, le reflet de la societe qui nait de ce qu'elle sait... ( hyatus copyleft )
profil | mail | Website | edit | quote
jyz93
Inscrit le 05-11-2008
Avatar
Posté le 08-09-2011 20:31

Ba wireshark le fait bien, du coup sa doit bien être possible je pense...
J'ai essayé de regarder les sources de wireshark mais c'est un peu complexe, je vais essayer de regarder encore une fois, histoire d'essayer d'en extraire un morceau de code.
profil | edit | quote
Jah
Inscrit le 24-10-2008
Avatar
Posté le 08-09-2011 20:52

Pareil que toi jyz93 sur wireshark, si tu as plus d'infos, je suis preneur.

Merci (si y'en trouve aussi, je reposte).
(@ 3 Gr d'alcool dans le sang alors je vous aime)

_________________________
When you have to shoot, shoot ! Don't talk !
profil | edit | quote
hyatus
Inscrit le 25-08-2001
Avatar
Posté le 08-09-2011 21:52

Bizarre wireshark ne semble pas aussi performant sur mon réseau...

Si tu utilises des ports non standards, wireshark pédale dans la choucroute, à mon avis, il utilise simplement quelques filtres sur les ports sources.

Un exemple >
http://myuste.ust.edu.ph:8888/student/
Transmission Control Protocol, Src Port: ddi-tcp-1 (8888), Dst Port: 50480 (50480), Seq: 662, Ack: 1236, Len: 0 --> Protocol TCP

_________________________
Car la liberte n'est pas un Droit mais un Devoir, et que le savoir apporte la Liberte,alors la TAZ est ce qu'elle est, le reflet de la societe qui nait de ce qu'elle sait... ( hyatus copyleft )

[ Ce Message a été édité par: hyatus le 2011-09-08 22:42 ]
profil | mail | Website | edit | quote
Newtopic | Reply

Online : amejocagigez, aneludo, Apokoalojes, ejehudagaluhw, eyubjuivibi, ezavibu, umohaaotumimi et 64 Guests


Retour Index NewFFR Repository : http://taz.newffr.com
Cagades à Stick : http://alcane.newffr.com
Forum HTML et Archive -> ici
ForumFR Sql/Xml (2006/04) (SF pas à jour du tout...) - Alive since 2001 Newffr.com
Pour toute plainte ou problème -> Contacter Borax, Hyatus, Tweakie ou Stick par message privé (ou Gueulez sur le forum :) )
Retour haut de page