Cosa fa#
Il protocollo TCP garantisce che i dati arrivino integri e nell'ordine corretto tramite un meccanismo di "ricevuta di ritorno" (ACK). Se il mittente non riceve l'ACK, rispedisce i dati.
🤝 Il Triple Handshake (L'accordo)#
Prima di mandare i dati (es. una pagina web), client e server devono stringersi la mano:
- SYN: "Ehi, vorrei parlare con te sulla porta 80."
- SYN-ACK: "Ricevuto! Io sono pronto, e tu?"
- ACK: "Prontissimo. Iniziamo."
📦 Trasferimento Dati: Il meccanismo ACK#
Dopo la stretta di mano, ogni invio di dati segue questa logica:
- PUSH (Dati): Il client invia un pezzo di dati (segmento).
- ACK (Ricevuta): Il server DEVE rispondere con un pacchetto ACK per dire "Ho ricevuto il pezzo X".
- RETRANSMISSION: Se il client non riceve l'ACK entro pochi millisecondi, assume che il pacchetto sia andato perso (pozzanghera) e lo invia di nuovo.
Important
È questo che rende il TCP "affidabile" rispetto all'UDP (che spara dati a raffica senza aspettare conferme).
🗼 Gli Strati OSI nel SOC (I 3 che contano)#
Per un analista SOC, il modello OSI a 7 strati è troppo teorico. Ecco la versione operativa:
| Layer | Nome | Strumento | Analogia | Cosa vedi nei log/dfir |
|---|---|---|---|---|
| L4 | Transport | TCP | La Ricevuta | Porte (22, 443) e Flags (SYN, ACK). Garantisce la consegna. |
| L3 | Network | IP | L'Indirizzo | IP Sorgente e IP Destinazione. Gestisce il percorso (Routing). |
| L2 | Data Link | Ethernet | La Busta | MAC Address. Gestisce il salto fisico tra due router vicini. |
Perché la "Busta" cambia e la "Lettera" no?#
- L2 (MAC): Cambia a ogni hop perché serve a spostare il pacchetto dal router A al router B.
- L3 (IP): Non cambia mai perché è la destinazione finale (es. Google).
- L4 (TCP): È il "controllore" che viaggia dentro la lettera e urla "Sei arrivata? Fammi un ACK!".
Scenario Reale (Blue Team)#
Stai usando tshark e vedi:
192.168.1.10 -> 8.8.8.8 [SYN]
8.8.8.8 -> 192.168.1.10 [RST, ACK]
Analisi:
- L'attaccante ha provato a connettersi (SYN).
- Il server ha risposto con RST (Reset).
- Conclusione: La porta è chiusa o un firewall ha bloccato la connessione. L'handshake è fallito.
Collegato a#
- ip-addressing-subnetting — Layer 3
- investigazione-linux — Per vedere le connessioni attive
- tshark — Per vedere i flag SYN/ACK nei pacchetti




