Tutorials

Modello OSI

Il modello ISO/OSI Open Systems Interconnection è uno standard teorico che suddivide le comunicazioni di rete in 7 livelli, facilitando la comprensione, progettazione e troubleshooting delle reti. Que

#networking

Introduzione

Il modello ISO/OSI (Open Systems Interconnection) è uno standard teorico che suddivide le comunicazioni di rete in 7 livelli, facilitando la comprensione, progettazione e troubleshooting delle reti. Questo modello è essenziale per il pentesting, in quanto aiuta a individuare vulnerabilità nei vari livelli.

🔹 Classificazione dei protocolli nei livelli OSI

Livello OSIEsempi di protocolliDescrizione
7 - ApplicazioneHTTP, HTTPS, DNS, FTP, SSH, SMTP, POP3, IMAPInterfaccia tra le applicazioni e la rete (es. browser, email, gestione nomi di dominio)
6 - PresentazioneSSL/TLS, ASCII, JPEG, MPEGConversione e cifratura dati (es. TLS per HTTPS, compressione immagini/video)
5 - SessioneNetBIOS, RPC, PPTPGestisce le sessioni di comunicazione tra dispositivi
4 - TrasportoTCP, UDP, SCTP, QUICTrasporto dati con controllo d'errore e segmentazione
3 - ReteIPv4, IPv6, ICMP, ARP, BGP, OSPFInstradamento e gestione IP
2 - Collegamento datiEthernet, Wi-Fi, PPP, MACComunicazione tra dispositivi nella stessa rete locale
1 - FisicoCavi, Fibra ottica, RadiofrequenzeTrasmissione fisica dei dati

Struttura del Modello ISO/OSI

1. Livello Fisico (Physical Layer)

  • Ruolo: Trasmette i dati sotto forma di segnali elettrici, ottici o radio.
  • Esempi: Cavi Ethernet, onde Wi-Fi, fibra ottica.
  • Strumenti di pentesting:
- Intercettazione di segnali (antenne SDR, sniffing radio) - Jamming Wi-Fi per test di resilienza

2. Livello Data Link (Data Link Layer)

  • Ruolo: Gestisce la comunicazione tra dispositivi nella stessa rete locale.
  • Esempi: MAC Address, Ethernet, ARP.
  • Strumenti di pentesting:
- Ettercap (ARP Spoofing per intercettare traffico) - MAC Changer (spoofing indirizzi MAC)

3. Livello Rete (Network Layer)

  • Ruolo: Instrada i pacchetti tra reti diverse usando indirizzi IP.
  • Esempi: IP, ICMP, Routing.
  • Strumenti di pentesting:
- Nmap (scansione IP e reti) - Traceroute (analisi del percorso dei pacchetti) - Wireshark (analisi traffico di rete)

4. Livello Trasporto (Transport Layer)

  • Ruolo: Garantisce il trasferimento dati tra dispositivi con protocolli come TCP e UDP.
  • Esempi: TCP, UDP, porte 80 (HTTP), 443 (HTTPS).
  • Strumenti di pentesting:
- Netcat (connessioni TCP/UDP) - hping3 (scan porte e attacchi DoS)

5. Livello Sessione (Session Layer)

  • Ruolo: Gestisce l'inizio, mantenimento e chiusura delle sessioni di comunicazione.
  • Esempi: SSH, NetBIOS, TLS.
  • Strumenti di pentesting:
- Hydra (brute-force autenticazione sessioni) - Metasploit (exploit per sessioni vulnerabili)

6. Livello Presentazione (Presentation Layer)

  • Ruolo: Converte i dati tra formati comprensibili e li cripta.
  • Esempi: SSL/TLS, crittografia, codifica Base64.
  • Strumenti di pentesting:
- SSLScan (analisi SSL/TLS) - Burp Suite (decodifica traffico web e manipolazione dati)

7. Livello Applicazione (Application Layer)

  • Ruolo: Interfaccia diretta con l'utente e le applicazioni.
  • Esempi: HTTP, FTP, SMTP, DNS.
  • Strumenti di pentesting:
- Nikto (scan vulnerabilità su server web) - SQLmap (injection SQL su applicazioni web) - Burp Suite (intercettazione e manipolazione richieste HTTP)

Esempi Pratici

📌 Attacco MITM su una rete Wi-Fi (Livello 2 - Data Link)

1. L'attaccante usa Ettercap o Bettercap per lanciare un attacco ARP Spoofing. 2. Il traffico tra vittima e router viene intercettato e reindirizzato attraverso l'attaccante. 3. L'attaccante può catturare credenziali o modificare il traffico in transito.

📌 Scansione di una rete per identificare servizi attivi (Livello 3 e 4)

1. Si utilizza Nmap per individuare IP e porte aperte su un obiettivo. 2. Identificati i servizi attivi, si cerca di sfruttare eventuali vulnerabilità con Metasploit o altri exploit.

📌 Exploiting di una vulnerabilità in un'applicazione web (Livello 7)

1. Si analizza un sito con Burp Suite per individuare parametri vulnerabili. 2. Si esegue SQL Injection con SQLmap se il sito non filtra correttamente gli input. 3. Se la vulnerabilità è sfruttabile, si ottiene accesso al database.

Conclusioni

Il modello ISO/OSI è fondamentale per comprendere le reti e pianificare attacchi mirati in un penetration test. Ogni livello offre potenziali superfici di attacco che un pentester può sfruttare per individuare e segnalare vulnerabilità.

🔥 Da approfondire:

  • Analisi delle vulnerabilità a ogni livello.
  • Attacchi avanzati su TLS e crittografia.
  • Evitare rilevamento durante la scansione delle reti.