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

Windows Discussion :

Détecter l'ouverture d'un port TCP/UDP sous WinXp


Sujet :

Windows

  1. #1
    Membre du Club
    Inscrit en
    Mars 2009
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 109
    Points : 61
    Points
    61
    Par défaut Détecter l'ouverture d'un port TCP/UDP sous WinXp
    Bonsoir à tous,
    J'ai une petite question, est ce qu'il y a un moyen de détecter l'ouverture d'un port TCP ou UDP sous windows Xp, en utilisant le langage C++ + API windows,
    Si ça est possible, comment on peut le faire;
    merci d'avance.

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 369
    Points
    50 369
    Par défaut
    tu veux détecter une tentative d'ouverture (il n'y a pas de programme à l'écoute sur ce port) ou bien une ouverture réussie (il y a un programme à l'écoute derrière le port) ?

  3. #3
    Membre du Club
    Inscrit en
    Mars 2009
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 109
    Points : 61
    Points
    61
    Par défaut
    Merci pour votre réponse "c'était très rapide"
    je veux détecter une tentative d'ouverture, c'était mon but, mais s'il est impossible (càd de gros programmation comme détecteur d'intrusion), donc je me limite au détection d'une ouverture réussite;
    et merci

  4. #4
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 369
    Points
    50 369
    Par défaut
    Il y a 2 approche possible à ton problème :
    • L'approche interne, c'est à dire un programme sur la machine XP qui tourne et qui détecte les tentatives d'ouverture. Cette solution va probablement nécessiter du code.
    • L'approche externe, c'est à dire un détecteur de scan sur le réseau de ta machine qui lorsqu'il va voir plusieurs tentatives de connexion (il ne saura pas forcément si elles réussisent ou non puisqu'il n'a pas la vision interne) va pouvoir faire quelque chose. Snort peut être ce détecteur (par contre, je ne connais pas bien les possibilités qu'il a en terme de réaction/déclenchement d'action). Je pense que cette solution nécessite nettement moins de code mis à part du shell script et des expressions régulières.

  5. #5
    Membre du Club
    Inscrit en
    Mars 2009
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 109
    Points : 61
    Points
    61
    Par défaut
    Merci pour l'explication;
    je préfère L'approche interne, est ce que vous avez une idée comment réaliser ça?
    thanks

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 6
    Points : 12
    Points
    12
    Par défaut Hooking ?
    Bonjour,
    J'ai également tenté de détecter d'éventuelles ouvertures de ports sur un ordinateur. Voici comment j'ai procédé :
    J'ai d'abord créé (en C++) une classe qui implémente un serveur Winsock 2. Normalement ce serveur devrait gérer les connexions entrantes du port que j'ai défini. Or, comme vous le savez, il n'est pas possible d'ouvrir deux ports ayant le même numéro. L'idée était donc de "scanner" le maximum de ports disponibles en effectuant une tentative d'ouverture du port. Si il y a une erreur, le port est déjà ouvert, il est détecté. Seulement une telle procédure est extrêmement lente et après avoir attendu 20 minutes, je me suis rendu compte que le programme n'avait scanné que quelques centaines de ports ...

    Une autre solution, que je n'ai pas encore testée, serait de faire un Hooking. Les fonctions Winsock utilisées par les protocoles TCP/UDP sont toujurs les mêmes, ils suffirait donc d'injecter une DLL dans tous les processus puis de détourner les fonctions de lecture/écriture des sockets vers celles définies dans la DLL (IAT Hooking). Ainsi, les envois de paquets vers le réseau seraient automatiquement détectés par le programme, tous comme les réceptions.

    De toute façon, à quoi servirait le programme ? Si cela sert à détecter les virus, il faut savoir que les routeurs possèdent des pare-feux tout comme les antivirus.

Discussions similaires

  1. Port Scanner UDP/TCP Problèmes
    Par SmoZy dans le forum Réseau/Web
    Réponses: 19
    Dernier message: 18/06/2014, 17h29
  2. [Socket] Port Scanner UDP/TCP Problemes.
    Par SmoZy dans le forum Développement
    Réponses: 1
    Dernier message: 15/06/2014, 00h22
  3. [WS 2008 R2] Tester l'ouverture d'un port UDP ?
    Par agdid04 dans le forum Windows Serveur
    Réponses: 2
    Dernier message: 09/12/2013, 11h56
  4. tshark port TCP/UDP conversion pcap > csv
    Par a1331 dans le forum Réseau
    Réponses: 0
    Dernier message: 15/04/2013, 17h42
  5. Réponses: 11
    Dernier message: 08/03/2007, 15h29

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