IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

socket sniff sous windows


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2009
    Messages : 197
    Par défaut socket sniff sous windows
    Bonjour les pythons !

    pour savoir si des gens font des requêtes sur notre SGBD préhistorique, je veux voir s'il y a du trafic en cours sur un port donné.

    Essayant tant bien que mal d'installer scapy et ses nombreuses dépendances sous windows 7, je n'y suis pas parvenu..
    La simple utilisation du module socket devrait me suffire j'espère.

    Je m'inspire de ce code pour capturer les paquets:
    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
    19
    20
    21
     
    import socket
     
    # the public network interface
    HOST = socket.gethostbyname(socket.gethostname())
     
    # create a raw socket and bind it to the public interface
    s = socket.socket(socket.AF_INET, socket.SOCK_RAW, socket.IPPROTO_IP)
    s.bind((HOST, 0))
     
    # Include IP headers
    s.setsockopt(socket.IPPROTO_IP, socket.IP_HDRINCL, 1)
     
    # receive all packages
    s.ioctl(socket.SIO_RCVALL, socket.RCVALL_ON)
     
    # receive a package
    print s.recvfrom(65565)
     
    # disabled promiscuous mode
    s.ioctl(socket.SIO_RCVALL, socket.RCVALL_OFF)
    je veux boucler sur le "recvfrom" pour capturer le trafic en temps réel, mais vais je vraiment avoir TOUS les paquets? j'ai un doute la dessus, il faudrait un tampon/queue non?
    Rediriger dans un fichier et analyser le fichier à la volée peut être?

    J'épluche quelques forums anglophones, j'ai bien la dizaine d'onglets ouverts dessus mais je trouve pas (ou ne comprends pas).
    Des avis la dessus?

    merci

  2. #2
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 062
    Par défaut
    Bonjour,

    As-tu lu ce tutoriel ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2009
    Messages : 197
    Par défaut
    entre autre oui en diagonale..

    le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    while(True):
      s.recv(..)
      interprete()..
    m'interpelle!
    est ce suffisant pour capturer les paquets.. le temps de faire interprete() il y a des paquets qui passent..
    on doit envisager du thread non la dessous?

  4. #4
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 062
    Par défaut
    Que fait interprete() ?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2009
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2009
    Messages : 197
    Par défaut
    pour le moment rien mais ca va décortiquer les paquets (Ip, et un peu les datas pour connaitre les requetes au sgbd..)
    donc ca prend quelques temps tout ca

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 743
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 743
    Par défaut
    Wireshark est utilisable en mode de commande. Vous pouvez filtrer le type de packets, stockez jusqu'au...

    Pourquoi "coder"?
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. La programmation des sockets bruts sous Windows
    Par Melem dans le forum Articles
    Réponses: 4
    Dernier message: 18/04/2016, 16h15
  2. socket.MSG_DONTWAIT sous Windows
    Par matth_mm dans le forum Réseau/Web
    Réponses: 3
    Dernier message: 24/09/2010, 16h46
  3. Tutoriel sockets RAW sous windows : prblm de compil
    Par draudrau dans le forum Réseau
    Réponses: 5
    Dernier message: 20/07/2009, 14h05
  4. Programmation de socket linux sous windows
    Par neuro6 dans le forum Autres éditeurs
    Réponses: 5
    Dernier message: 16/10/2007, 18h35
  5. Socket PHP sous windows
    Par souko dans le forum Langage
    Réponses: 4
    Dernier message: 25/07/2007, 10h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo