Passa al contenuto principale

6.3 Forward Secrecy (Segretezza in avanti)

6.3 Forward Secrecy (Segretezza in avanti)

La forward secrecy (chiamata anche "perfect forward secrecy" o "PFS" e definita in [RFC4949]) è una difesa contro un attaccante che registra conversazioni crittografate in cui le chiavi di sessione sono crittografate solo con le chiavi a lungo termine delle parti comunicanti. Se l'attaccante dovesse essere in grado di ottenere queste chiavi a lungo termine in un momento successivo, le chiavi di sessione e quindi l'intera conversazione potrebbero essere decifrate. Nel contesto di TLS e DTLS, tale compromissione delle chiavi a lungo termine non è del tutto implausibile. Può accadere, ad esempio, a causa di:

  • Un client o un server attaccato da qualche altro vettore di attacco, e la chiave privata recuperata.

  • Una chiave a lungo termine recuperata da un dispositivo che è stato venduto o altrimenti dismesso senza preventiva cancellazione.

  • Una chiave a lungo termine utilizzata su un dispositivo come chiave predefinita [Heninger2012].

  • Una chiave generata da una terza parte fidata come una CA, e successivamente recuperata da essa tramite estorsione o compromissione [Soghoian2011].

  • Una svolta crittografica, o l'uso di chiavi asimmetriche con lunghezza insufficiente [Kleinjung2010].

  • Attacchi di ingegneria sociale contro gli amministratori di sistema.

  • Raccolta di chiavi private da backup protetti inadeguatamente.

La forward secrecy garantisce in tali casi che non sia fattibile per un attaccante determinare le chiavi di sessione anche se l'attaccante ha ottenuto le chiavi a lungo termine qualche tempo dopo la conversazione. Protegge anche contro un attaccante che è in possesso delle chiavi a lungo termine ma rimane passivo durante la conversazione.

La forward secrecy è generalmente ottenuta utilizzando lo schema Diffie-Hellman per derivare le chiavi di sessione. Lo schema Diffie-Hellman fa sì che entrambe le parti mantengano segreti privati e inviino parametri sulla rete come potenze modulari su certi gruppi ciclici. Le proprietà del cosiddetto Problema del Logaritmo Discreto (DLP) consentono alle parti di derivare le chiavi di sessione senza che un intercettatore sia in grado di farlo. Attualmente non esiste un attacco noto contro il DLP se vengono scelti parametri sufficientemente grandi. Una variante dello schema Diffie-Hellman utilizza le Curve Ellittiche invece dell'aritmetica modulare originariamente proposta.

Sfortunatamente, molte cipher suite TLS/DTLS sono state definite che non forniscono forward secrecy, ad esempio TLS_RSA_WITH_AES_256_CBC_SHA256. Questo documento quindi sostiene l'uso rigoroso di cifrari con solo forward secrecy.