Zusammenfassungen
Universitätsnotizen im Markdown-Format aus Obsidian.
Sicurezza delle comunicazioni - HTTPS
download MD herunterladenHTTPS nasce per risolvere le problematiche di riservatezza, integrità e autenticazione nelle comunicazioni web.
1. Problematiche principali
Ad oggi, la sicurezza di rete deve rispondere a sei sfide:
- Evitare lettura o modifica dei file in transito.
- Garantire l'identità del server.
- Proteggere dalla manipolazione dei record DNS.
- Impedire l'uso malevolo di JavaScript lato client.
- Proteggere le credenziali dall'invio a server illegittimi.
- Assicurarsi che l'inserimento delle credenziali avvenga in modo diretto e sicuro.
2. Transport Layer Security (TLS)
Il protocollo TLS (evoluzione di SSL) fornisce:
- Scambio chiavi: RSA, Diffie-Hellman, PSK.
- Autenticazione: RSA, DSA, ECDSA.
- Crittografia simmetrica: AES, 3DES, RC4.
- Integrità: HMAC-MD5, HMAC-SHA.
Lo Scambio delle Chiavi
- Client Hello: Messaggio di saluto dal client.
- Server Hello: Risposta con il cifrario scelto e la chiave pubblica $PKS$.
- Key Generation: Entrambe le parti derivano le chiavi di scrittura (per cifrare) e i segreti MAC (per l'integrità).
- Change Cipher Spec: Messaggio che segnala il passaggio alla crittografia simmetrica per tutti i dati successivi.
3. Certification Authority (CA) e Certificati
Per essere certi dell'identità di un server, ci si affida a una terza parte fidata: la CA.
- Certificato: Una tupla
{S, PK}(Soggetto, Chiave Pubblica) firmata digitalmente dalla CA. - Trust: I browser contengono un elenco predefinito di CA fidate.
Controllo della validità
I certificati hanno una scadenza. Per verificare se sono stati revocati prima del tempo:
- CRL (Certificate Revocation List): Liste scaricabili (spesso pesanti).
- OCSP (Online Certificate Status Protocol): Query in tempo reale per verificare lo stato di un certificato.
4. Problematiche e Limiti
Nonostante la robustezza crittografica, HTTPS presenta criticità:
- Compromissione delle CA: Se un server di una CA viene violato, l'attaccante può emettere certificati falsi per qualsiasi sito.
- Configurazione errata: Certificati scaduti o non corrispondenti. Spesso i browser permettono all'utente di ignorare l'errore (succede nel 60% dei casi).
- Contenuti Misti (Mixed Content): Pagine HTTPS che caricano elementi (immagini, script) via HTTP. Un avversario può alterare questi elementi per compromettere la sicurezza della pagina.
- Interfaccia Utente: Il simbolo del "lucchetto" indica solo che la connessione è cifrata e il certificato è valido, non necessariamente che il sito sia onesto.