Vai al contenutoHisnLabs
← Come funziona internet

Lezione 3 di 4 · 8 min

HTTPS e certificati: cosa dimostra il lucchetto e cosa non dimostra

Cosa fa davvero TLS, cosa certifica realmente un certificato, e perché il lucchetto non è un verdetto sull’affidabilità di un sito.

La prima lezione ha menzionato che gli indirizzi https:// usano la cifratura. Questa lezione guarda più da vicino come viene impostata quella cifratura, per cosa garantisce davvero l’icona del lucchetto nel tuo browser, e dove si ferma la sua garanzia.

TLS: il protocollo dietro il lucchetto

HTTPS è l’ordinario protocollo web, HTTP, eseguito dentro il Transport Layer Security (TLS), un protocollo pubblicato per la prima volta nel 1999 e ora alla sua versione 1.3. Il Centro di apprendimento di Cloudflare riassume in tre parti ciò che realizza TLS: cifratura, che nasconde i dati a chiunque altro sulla rete; autenticazione, che verifica che tu stia parlando con il server che pensi; e integrità, che rileva se i dati sono stati alterati in transito. Prima che venga scambiato qualsiasi contenuto, il tuo Mac e il server eseguono un “handshake TLS”: concordano una versione di TLS, concordano i metodi crittografici da usare, e generano le chiavi che cifreranno il resto della sessione.

Cosa certifica davvero un certificato

Perché quell’handshake abbia un significato, il tuo browser ha bisogno della prova che la chiave pubblica del server appartenga davvero al sito che hai digitato. Quella prova è il certificato TLS. Secondo Cloudflare, un certificato racchiude il nome di dominio, la chiave pubblica, una data di scadenza, e la firma digitale di chi lo ha rilasciato: un’autorità di certificazione (CA), un’organizzazione di cui il tuo browser e sistema operativo già si fidano. Let’s Encrypt, un’autorità di certificazione gratuita ampiamente usata, descrive il processo chiaramente: prima di rilasciare un certificato, il suo software verifica che il richiedente controlli davvero il dominio, per esempio chiedendogli di pubblicare un file specifico su quel sito web o un record DNS specifico. Solo dopo quel controllo firma un certificato.

Questo conta perché definisce il limite di ciò che dimostra un certificato standard. Dimostra che chi lo ha richiesto controlla il nome di dominio in quel momento. Non verifica l’azienda dietro il sito, non controlla se l’operatore è onesto, e non promette che il contenuto sia sicuro. Chiunque, incluso un truffatore, può registrare un dominio e ottenere un certificato valido per esso in pochi minuti.

Leggere correttamente il lucchetto

Il lucchetto confermaIl lucchetto non conferma
Che la connessione tra il tuo browser e questo server è cifrataChe l’organizzazione che gestisce il sito è legittima o affidabile
Che chi ha impostato il certificato controlla questo esatto nome di dominioChe il nome di dominio stesso non è ingannevole (un’ortografia simile, per esempio)
Che il contenuto non è stato alterato in transito da una terza parteChe il sito stesso non farà un uso improprio di ciò che digiti al suo interno

La guida Surveillance Self-Defense dell’Electronic Frontier Foundation esprime direttamente il punto sottostante: “Il solo fatto che un servizio usi HTTPS non significa che il servizio protegga pienamente la privacy dei suoi utenti.” HTTPS protegge il tubo; non dice nulla su cosa faccia la destinazione con ciò che vi arriva attraverso. La stessa guida nota che HTTPS nasconde agli intercettatori di rete quale pagina di un sito hai visitato, ma il sito stesso riceve comunque tutto ciò che digiti — ricerche, messaggi, accessi — in chiaro, perché è l’altro capo della connessione cifrata, non un osservatore di essa.

Certificati autofirmati e scaduti

Cloudflare spiega anche cosa succede senza un’autorità di certificazione affidabile: chiunque può generare il proprio certificato “autofirmato”, ma i browser non hanno un’autorità esterna con cui verificarlo, quindi contrassegnano tali siti come non sicuri o si rifiutano del tutto di caricarli. Un certificato scaduto produce un avviso simile. Nessuno dei due avvisi significa necessariamente che sia in corso un attacco, ma significa che il browser al momento non può verificare con chi sta parlando, che è esattamente il controllo che TLS è pensato per fornire.

Da ricordare

  • HTTPS esegue il normale traffico web dentro TLS, che fornisce cifratura, autenticazione del server, e controllo dell’integrità.
  • Un certificato TLS viene rilasciato da un’autorità di certificazione dopo aver verificato che il richiedente controlli il dominio — nient’altro.
  • Il lucchetto conferma che la connessione è cifrata e raggiunge il dominio dichiarato; non garantisce l’onestà di chi gestisce il sito.
  • Gli aggressori possono ottenere, e ottengono davvero, certificati validi per domini ingannevoli, quindi il lucchetto da solo non può escludere una truffa.
  • HTTPS protegge i dati in transito, non ciò che il server di destinazione ne fa una volta arrivati.

Mettiti alla prova

  1. 1. Cosa dimostra effettivamente un certificato TLS standard?

    • Che il sito è gestito da un’azienda affidabile
    • Che il detentore del certificato controlla il nome di dominio per cui è stato rilasciato — Esatto.
    • Che il sito web non contiene truffe
    • Che il sito è stato esaminato da un’agenzia governativa

    Le autorità di certificazione come Let’s Encrypt verificano il controllo del dominio prima di rilasciare un certificato; non verificano l’onestà dell’operatore.

  2. 2. Secondo l’EFF, qual è un limite chiave di HTTPS?

    • Rallenta ogni connessione
    • Usare HTTPS non significa che un servizio protegga pienamente la privacy dei suoi utenti — Esatto.
    • Funziona solo su Wi-Fi
    • Elimina la necessità delle password

    HTTPS mette in sicurezza la connessione, ma il sito dall’altra parte vede comunque tutto ciò che gli invii e controlla cosa fa con quei dati.

  3. 3. Quali sono le tre cose che Cloudflare dice fornisca TLS?

    • Velocità, archiviazione, e backup
    • Cifratura, autenticazione, e integrità — Esatto.
    • Compressione, cache, e bilanciamento del carico
    • Firewall, registrazione, e antivirus

    TLS nasconde i dati agli intercettatori (cifratura), conferma l’identità del server (autenticazione), e rileva le manomissioni (integrità).

  4. 4. Perché un browser potrebbe contrassegnare un sito come "non sicuro" anche se il suo indirizzo inizia con https://?

    • Perché il sito usa troppa larghezza di banda
    • Perché il suo certificato è autofirmato o scaduto, quindi non può essere verificato rispetto a un’autorità affidabile — Esatto.
    • Perché il sito ha troppe immagini
    • Perché il nome di dominio è troppo lungo

    Senza un certificato valido e attualmente affidabile, il browser non può confermare l’identità del server, quindi avverte l’utente invece di presumere che sia sicuro.

Mettilo in pratica con FireAI

Metti in pratica questa lezione sul tuo Mac.

Fonti

Mettilo in pratica sul tuo Mac

Prova tutte le funzioni gratis per 17 giorni, senza carta.

Scarica per Mac Guide