MTProd > Dev4all > Articles > Programmation > Réseau > Programmation Winsock avancée avec les systèmes NT
Rechercher8 Personnes en-ligne


Programmation Winsock avancée avec les systèmes NT
Auteur : R-e-D "RedKod" R-e-D
(Visiter le site Web)
Publié le : 03 janvier 2003
Mis à jour le : 03 novembre 2003
Consulté : 9104 fois



Infos supplémentaires

Sources et executable : - Fichiers sources et executables de l'article
- Winsock 2 pour Windows 95



Préface

Une des raisons importantes pour laquelle j'ai décidé d'écrire cet article est le manque de documentation en Français à ce sujet sur Internet, j'espère que ce présent article participera à la disparition de ce problème. Dans celui-ci nous étudierons l'utilisation de l'API Winsock (Winsock 1.1 en ce qui concerne les sockets streams et plus particulièrement Winsock 2 pour les raw sockets). La connaissance de cette API permettra de créer des applications TCP basiques (client, serveur) jusqu'à des applications plus complexes ayant comme possibilitées la modification de l'en tête des datagrammes réseaux. Ce qui permettra de créer des réalisations un peu plus attrayantes tel qu'un forgeur de paquets, un scanneur de ports avancé, ou encore même un sniffer ! Et tout ceci sera accompli sans aucunes des librairies distribuées sur internet tel que winpcap, ou encore la librairie de chez Komodia ! Et oui, malheureusement, une multitude de personnes pensent qu'il n'est pas possible de travailler à bas niveau avec les protocoles IP, TCP et autres sans librairies externes ou encore sans écrire un driver (NDIS) avec le DDK (Driver Development Kits) de chez Microsoft, ce qui est totalement faux et c'est bien ce que je vais démontrer par ce présent article. Je ne remettrais pas en cause l'écriture d'un drivers NDIS qui, malgrès sa complexité, offre beaucoup plus de possibilitées. Mais là n'est pas notre objectif.




Sommaire

1  Winsock 2 et architecture
2  Les Sockets Streams

Qu'est ce qu'un socket ?
Programmation d'un serveur TCP
Les fichiers nécessaires
Initialisation de l'API Winsock 1.1
Création du socket
Ouverture du service et attente d'un client
Gestion de la connexion cliente
Programmation d'un client TCP
Conclusion
3  Les raw sockets

Introduction
Qu'est ce qu'un raw socket ?
L'accès aux raw sockets
4  Les différents protocoles

Le protocole IP (Internet Protocol)
Le protocole TCP (Transmission Control Protocol)
Le protocole ICMP (Internet Control Message Protocol)
5  Forger ses propres paquets

Paquets ICMP
Paquets TCP
Paquets UDP
6  Programmer un sniffer grâce aux raw sockets

Introduction
Qu'est ce qu'un sniffer ?
Pratique
7  Références
8  Remerciements



 Liens utiles

  • Publier un article
  • Envoyer cette page
  • Ecrire à l'auteur

  •  Mini-Chat

    EssaimE (02h27): weeee
    neowolf25 (16h16): Oh purée, je me suis souvenu de mes log/pass o/
    TRaiSe (16h03): Hello les zamis !
    artscoop (01h25): Nom de dieu des survivants de l'époque
    Patrice (12h39): Et oui...
    Patrice (10h24): 2012 : je croise Pioupiou IRL !
    Thienou (00h11): salut
    Thienou (00h13): Oula mon inscription date de 11 ans je me sent vieux :)
    neowolf25 (17h59): MMF2 en "pay what you want" jusqu'à demain sur
    neowolf25 (17h59): https://www.hu
    mblebundle.com/
    weekly


    Votre message



     Archives

     Dev4all Newsletter

    Restez à jour avec la newsletter mensuelle !

    Votre e-mail


    1800 abonnés

     Recommander Dev4all

    Recommandez Dev4all à un ami. Cela fera grandir notre communauté !

    E-mails de vos amis




    [ Accueil | S'inscrire | Mon Dev4all | Communauté | Téléchargements | Articles | Forums | Chat ]

    [ A propos de Dev4all | Aide | La charte Dev4all | Contact ]

    © 2000-2014 MTProd. Tous droits réservés.
    L'utilisation de Dev4all implique l'acceptation et le respect de la charte Dev4all.