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

Réseau/Web Python Discussion :

[Python 2.X] Probleme snifer ARP avec scapy


Sujet :

Réseau/Web Python

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur avant-vente
    Inscrit en
    Janvier 2017
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur avant-vente
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Janvier 2017
    Messages : 26
    Points : 25
    Points
    25
    Par défaut [Python 2.X] Probleme snifer ARP avec scapy
    Bonjour à tous,

    Pour détourner l'usage d'un Dash Button (bouton qui se connecte en wifi dès qu'on appuie dessus, envois une requête HTTP à Amazon et se déconnecte) dans ma solution domotique, je me suis "amusé" à écrire un petit programme python (v2.7) qui snif les requêtes ARP et pour chacune d'elles, si l'adresse MAC est celle du bouton alors j’envoie une requête sur mon serveur domotique.
    La ligne de code est :
    sniff(prn=arp_detect, filter="arp", store=0)

    C'est dans la fonction arp_detect que je fais le test sur la mac adresse et que je lance la requête au serveur domotique.

    Mon programme fonctionne parfaitement bien sur un Raspberry PI 3.
    Afin qu'il reste en fonctionnement je le lance avec une commande du genre "sudo nohup nom_prog&" que j'ai mis dans la crontab afin qu'elle soit exécutée à chaque reboot.

    Tout cela fonctionne parfaitement ! Mais j'ai tout de même un soucis que je n'arrive pas à comprendre et c'est là que j'ai besoin de vos connaissances.

    Comme je l'ai dit tout fonctionne parfaitement. A chaque fois que j’appuie sur mon bouton, il se connecte, le programme détecte la requête ARP sur le LAN, le programme détecte bien s'il s'agit du bouton ou pas et réagis parfaitement en fonction. Si j'utilise le bouton au moins une fois par jour cela fonctionne. Par contre, quand le bouton n'est pas utilisé pendant un temps que j'ai du mal à déterminer, mais je dirais plus de 24h, alors mon programme ne semble pas détecter la requete ARP. Pourtant je suis sur que le bouton c'est bien connecté en wifi et a bien envoyé la requete à Amazon car je reçois une notification d'Amazon sur mon telephone. Il faut que j'appuie une seconde fois sur le bouton pour que le snifer réagisse.
    Comme si au bout d'un temps supérieur à 24h le snifer était en sommeil. Mais si c'est le cas alors pourquoi lors de la seconde pression sur le bouton il réagit ?

    Pouvez vous m'aider à comprendre ce qu'il se passe ?
    Par avance je vous remercie.

  2. #2
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 035
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 035
    Points : 8 400
    Points
    8 400
    Par défaut
    salut,

    ce qu'il se passe précisément c'est difficile à dire, en revanche j'ai eu remarqué des choses un peu similaires à l'époque où j'utilisais scapy, pour le dire simplement reposer sur le sniffer de scapy n'est pas une solution fiable, c'est bien pour de l'usage ponctuel mais sur le long terme il y a des ratés (comme ceux que tu indiques), perso je préférerai passer par des nfqueues par exemple dont l'utilisation tout aussi simple ne nécessite que l'ajout d'une règle dans le firewall

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur avant-vente
    Inscrit en
    Janvier 2017
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur avant-vente
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Janvier 2017
    Messages : 26
    Points : 25
    Points
    25
    Par défaut
    Citation Envoyé par BufferBob Voir le message
    salut,

    ce qu'il se passe précisément c'est difficile à dire, en revanche j'ai eu remarqué des choses un peu similaires à l'époque où j'utilisais scapy, pour le dire simplement reposer sur le sniffer de scapy n'est pas une solution fiable, c'est bien pour de l'usage ponctuel mais sur le long terme il y a des ratés (comme ceux que tu indiques), perso je préférerai passer par des nfqueues par exemple dont l'utilisation tout aussi simple ne nécessite que l'ajout d'une règle dans le firewall
    Bonjour et merci pour ta réponse.
    Je ne connais pas du tout nfqueues. Je vais faire quelques recherches. As-tu un lien à m'indiquer vers un tutoriel ?

  4. #4
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 035
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 035
    Points : 8 400
    Points
    8 400
    Par défaut
    Citation Envoyé par campeaux Voir le message
    As-tu un lien à m'indiquer vers un tutoriel ?
    non, google, faut grappiller les infos par ci par là, mais c'est pas bien dur

    le premier qui vient c'est https://byt3bl33d3r.github.io/using-...right-way.html

Discussions similaires

  1. probleme d'import avec eric python
    Par remitbo dans le forum Général Python
    Réponses: 1
    Dernier message: 20/05/2007, 22h57
  2. Réponses: 6
    Dernier message: 04/04/2003, 15h28
  3. [Kylix] Probleme de séparateur avec Kylix2 ?
    Par jeanphy dans le forum EDI
    Réponses: 4
    Dernier message: 10/02/2003, 16h41
  4. Réponses: 12
    Dernier message: 23/10/2002, 11h56
  5. Probleme d'impression avec la méthode TForm->Print()
    Par Kid Icarus dans le forum C++Builder
    Réponses: 13
    Dernier message: 31/07/2002, 14h26

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