I — Le modèle TCP/IP
Le modèle TCP/IP est le modèle réseau utilisé en pratique sur Internet et dans la quasi-totalité des réseaux modernes. Contrairement au modèle OSI qui compte 7 couches théoriques, TCP/IP en compte 4, plus pragmatiques.
Les deux modèles sont complémentaires : OSI sert de référence pour comprendre et décrire, TCP/IP est ce qui tourne réellement sur les machines.
Modèle TCP/IP Correspondance OSI
────────────────── ──────────────────────────────
4 — Application ←→ 7 Application + 6 Présentation + 5 Session
3 — Transport ←→ 4 Transport
2 — Internet ←→ 3 Réseau
1 — Network ←→ 2 Data Link + 1 Physical
Interface
4 — Application
Regroupe les couches Application, Présentation et Session du modèle OSI. C'est ici que vivent les protocoles utilisés directement par les applications : HTTP, HTTPS, FTP, DNS, SSH, SMTP…
3 — Transport
Identique à la couche Transport OSI. Gère la communication de bout en bout entre deux hôtes via TCP (fiable) ou UDP (rapide). Introduit la notion de ports pour identifier les services.
2 — Internet
Correspond à la couche Réseau OSI. Gère l'adressage IP et le routage des paquets à travers les réseaux. Protocoles principaux : IP, ICMP, ARP.
1 — Network Interface
Regroupe les couches Data Link et Physical du modèle OSI. Gère la transmission physique des données sur le réseau local : câbles, Wi-Fi, adresses MAC. Protocoles : Ethernet, Wi-Fi (802.11).
II — Structure d'un paquet TCP
Un paquet TCP (aussi appelé segment) est composé d'un en-tête (header) suivi des données. L'en-tête contient toutes les informations nécessaires au routage, à l'identification du service et au contrôle de la connexion.
Champs principaux d'un paquet TCP :
• Source Port — Port de l'émetteur. Identifie l'application qui envoie les données.
• Destination Port (DST Port) — Port du destinataire. Identifie le service ciblé (ex : 80 pour HTTP, 443 pour HTTPS, 22 pour SSH).
• Source IP — Adresse IP de la machine émettrice.
• Destination IP (DST IP) — Adresse IP de la machine destinataire.
• Sequence Number — Numéro de séquence du paquet. Permet de réordonner les paquets arrivés dans le désordre.
• ACK Number — Numéro d'accusé de réception. Indique le prochain octet attendu.
• Checksum — Somme de contrôle pour vérifier l'intégrité du paquet. Détecte les corruptions de données.
• Data — Le contenu utile transporté (payload).
• Flags — Bits de contrôle qui définissent l'état et le type de la communication.
III — Les flags TCP
Les flags TCP sont des bits dans l'en-tête du paquet qui indiquent le rôle et l'état du paquet dans la communication. Plusieurs flags peuvent être activés simultanément.
Flags principaux
• SYN (Synchronize) — Initie une connexion. Premier paquet du three-way handshake.
• SYN/ACK — Réponse du serveur au SYN initial. Confirme la réception et accepte la connexion.
• ACK (Acknowledge) — Accusé de réception. Confirme qu'un paquet a bien été reçu. Présent dans presque tous les paquets après l'établissement de la connexion.
• DATA — Paquet transportant des données utiles (payload).
• FIN (Finish) — Fermeture propre de la connexion. Indique qu'il n'y a plus de données à envoyer.
• RST (Reset) — Fermeture immédiate et forcée de la connexion. Utilisé en cas d'erreur ou pour rejeter une connexion non souhaitée.
Le Three-Way Handshake TCP
Avant d'échanger des données, TCP établit une connexion en 3 étapes :
Client Serveur
│ │
│──────── SYN ──────────────────▶│ 1. Le client demande à se connecter
│ │
│◀─────── SYN/ACK ───────────────│ 2. Le serveur accepte et confirme
│ │
│──────── ACK ──────────────────▶│ 3. Le client confirme la réception
│ │
│════════ DATA ══════════════════│ La connexion est établie
La connexion se ferme avec un échange FIN / FIN-ACK des deux côtés, ou immédiatement avec un RST en cas d'erreur.
Flags TCP en cybersécurité
Les flags TCP sont au cœur de nombreuses techniques de scan et d'attaque :
• Nmap SYN scan (-sS) — Envoie un SYN, attend le SYN/ACK, puis envoie un RST pour ne pas compléter la connexion. Furtif car la connexion n'est jamais établie.
• Port ouvert — Répond SYN/ACK au SYN initial.
• Port fermé — Répond RST/ACK au SYN initial.
• Port filtré — Pas de réponse (pare-feu silencieux) ou ICMP unreachable.
À retenir : Comprendre les flags TCP est essentiel pour interpréter les résultats de Nmap et comprendre pourquoi certains scans sont plus furtifs que d'autres. Un SYN scan est moins détectable qu'un TCP Connect scan précisément parce qu'il ne complète jamais le handshake.
IV — Récapitulatif
Voici un résumé des concepts couverts dans cette documentation :
• Modèle TCP/IP — 4 couches pratiques : Application, Transport, Internet, Network Interface.
• Paquet TCP — Contient Source/DST Port, Source/DST IP, Sequence Number, ACK Number, Checksum, Data et Flags.
• SYN — Initie une connexion.
• SYN/ACK — Accepte la connexion.
• ACK — Accusé de réception.
• FIN — Fermeture propre.
• RST — Fermeture forcée / rejet.
• Three-Way Handshake — SYN → SYN/ACK → ACK, mécanisme d'établissement de toute connexion TCP.