Lezione 30Crittografia simmetrica e firewall
In questa pagina 3
Data: mercoledì 7 maggio 2025 · Fonte: slide e laboratori del corso Internet, UniPD
Argomenti trattati
- Crittografia simmetrica: cifrari storici, DES e AES, modi di funzionamento (ECB, CBC, CFB, OFB, CTR), scambio di chiavi di Diffie-Hellman, MAC e HMAC.
- Firewall: politiche, regole su indirizzi, porte e protocollo, firewall stateful e proxy, NetFilter e
iptables.
Teoria
- Funzioni hash e crittografia simmetricaLa crittografia trasforma un messaggio in chiaro (plaintext) in un testo cifrato (ciphertext) con una chiave: C = E_ke(P), P = D_kd(C); può dare riservatezza, integrità e autenticazione. Attacchi: solo testo cifrato, testo in chiaro noto, testo in chiaro scelto, forza bruta. Funzione hash: mappa dati di qualsiasi lunghezza in un digest di lunghezza fissa; one-way (dato h è difficile trovare m con hash(m) = h) e resistente alle collisioni; famiglie MD (MD5 rotto per le collisioni nel 2004) e SHA (SHA-0 e SHA-1 rotti, SHA-2 il più usato, SHA-3); costruzione di Merkle-Damgård; usi: integrità e password. Crittografia simmetrica: stessa chiave segreta per cifrare e decifrare; Cesare (E_n(x) = x + n mod 26), Vigenère, Enigma; DES (blocchi da 64 bit, chiave da 56) e AES (blocchi da 128 bit, chiavi da 128, 192, 256); modi ECB (insicuro), CBC, CFB, OFB, CTR. Scambio della chiave con Diffie-Hellman: K = g^(xy) mod p. MAC e HMAC: autenticazione con chiave condivisa.Funzioni hash e crittografia simmetrica →
- FirewallUn firewall è un componente (hardware, software o entrambi) che blocca il traffico non autorizzato da una rete verso un'altra: filtra i dati, reindirizza il traffico, protegge dagli attacchi. Requisiti: tutto il traffico tra due zone di fiducia deve passare dal firewall, passa solo il traffico autorizzato, il firewall stesso deve essere immune alle intrusioni. L'amministratore configura le politiche (controllo di utente, di servizio, di direzione); un pacchetto può essere accettato, negato o rifiutato (negato più messaggio ICMP alla sorgente). Il firewall decide con le informazioni di intestazione dei livelli 2-4 (indirizzi, protocollo, porte, flag SYN/ACK/FIN). Packet filter: senza stato, filtra in ingresso e in uscita con regole su indirizzi, protocollo, porte, flag (esempi SMTP, Telnet, X11 e correzioni con porte sorgente e flag ACK). Stateful firewall: tiene traccia delle connessioni (NEW, ESTABLISHED, RELATED, INVALID), limita connessioni al secondo, timeout. Firewall applicativo/proxy: ispeziona il livello applicazione, apre una connessione separata verso la destinazione; sicuro ma lento. Linux: netfilter con 5 hook IPv4 e 5 verdetti, iptables (tabelle e catene), connection tracking nf_conntrack.Firewall →
- Firewall con iptables in KatharàLaboratorio 6 (LAB6).
iptablesè lo strumento da riga di comando che configura il filtro di pacchetti del kernel Linux (NetFilter). Quattro tabelle (filter,nat,mangle,raw) contengono catene di regole; un pacchetto segue la prima regola che lo riconosce, altrimenti la politica predefinita (ACCEPT, DROP, REJECT). Tabellafilter: catene INPUT (pacchetti per la macchina), OUTPUT (generati da lei), FORWARD (che attraversano il router). Tabellanat: PREROUTING (DNAT) e POSTROUTING (SNAT/MASQUERADE). Lo stato di una conversazione si controlla con--match state --state ESTABLISHED,RELATED. Tre esperienze: firewall sulla macchina da proteggere (esempio 1), firewall sul router di una LAN con web server pubblico (esempio 2), NAT con SNAT e DNAT (esempio 3).Firewall con iptables in Katharà →
Esercizi
Nessun esercizio numerico: i comandi e gli esercizi del laboratorio sono nella nota di teoria.
Lezione precedente: Lezione 29 · LAB5, RIP Lezione successiva: Lezione 31 · LAB6, firewall con iptables