Attacchi criptografici: una spiegazione per i menti cunfusi

Quandu avete intesu a parolla "criptografia", certi pirsuni si ricordanu di a so password WiFi, u lucchettu verde accantu à l'indirizzu di u so situ web preferitu, è quantu hè difficiule d'entra in l'email d'altru. L'altri ricordanu una seria di vulnerabilità in l'ultimi anni cù abbreviazioni (DROWN, FREAK, POODLE...), loghi eleganti è un avvisu per aghjurnà urgentemente u vostru navigatore.

A criptografia copre tuttu, ma l'essenza in un altru. U puntu hè chì ci hè una linea fina trà simplice è cumplessu. Certi cose sò faciuli di fà, ma difficiuli di riunite, cum'è rompe un ovu. Altre cose sò faciuli di fà, ma difficiuli di ritruvà quandu manca una parte chjuca, impurtante è cruciale: per esempiu, apre una porta chjusa quandu a "parte cruciale" hè a chjave. A criptografia studia queste situazioni è cumu si ponu esse usatu in a pratica.

Nta l'ultimi anni, a cullizzioni di attacchi criptografici hè diventata in un zoo di loghi lampanti, pieni di formule da i documenti scientifichi, è hà datu un sensu generale lugubre chì tuttu hè rottu. Ma in fatti, assai di l'attacchi sò basati nantu à uni pochi di principii ginirali, è e pagine infinite di formule sò spessu bollite à idee facili da capisce.

In questa serie d'articuli, avemu da fighjà i sfarenti tippi di attacchi criptografici, cun enfasi nantu à i principii basi. In termini generali è micca esattamente in questu ordine, ma copreremu i seguenti:

  • Strategii basi: forza bruta, analisi di frequenza, interpolazione, downgrading è protokolli incruciati.
  • Vulnerabilità di marca: FREAK, CRIME, POODLE, DROWN, Logjam.
  • Strategie Avanzate: attacchi d'oraculu (attaccu di Vodenet, attaccu di Kelsey); Metudu meet-in-the-middle, attaccu d'anniversariu, preghjudiziu statisticu (criptanalisi differenziale, criptanalisi integrale, etc.).
  • Attacchi di canali laterali è i so parenti stretti, metudi di analisi di fallimentu.
  • Attacchi à a criptografia di chjave publica: cube root, broadcast, missaghju rilativi, attaccu Coppersmith, algoritmu Pohlig-Hellman, sieve numeru, attaccu Wiener, attaccu Bleichenbacher.

Questu articulu particulare copre u materiale sopra à l'attaccu di Kelsey.

Strategie basi

I seguenti attacchi sò simplici in u sensu chì ponu esse spiegati quasi cumplettamente senza assai dettagli tecnichi. Spieghemu ogni tipu d'attaccu in i termini più simplici, senza andà in esempi cumplessi o casi d'usu avanzati.

Certi di sti attacchi sò largamente diventati obsoleti è ùn sò micca stati utilizati per parechji anni. L'altri sò vechji chì anu sempre sneak up regularmente nantu à i sviluppatori di criptosistema senza sospetti in u 21u seculu. L'era di a criptografia muderna pò esse cunsiderata cum'è avè principiatu cù l'avventu di IBM DES, u primu cifru chì resiste à tutti l'attacchi nantu à sta lista.

Forza bruta simplice

Attacchi criptografici: una spiegazione per i menti cunfusiU schema di criptu hè custituitu di dui parti: 1) a funzione di criptografia, chì piglia un missaghju (textu chjaru) cumminatu cù una chjave, è poi crea un missaghju criptatu - ciphertext; 2) una funzione di decryption chì piglia u ciphertext è a chjave è pruduce testu chjaru. Sia a criptografia è a decifrazione deve esse faciule da calculà cù a chjave - è difficiule di calculà senza ella.

Assumimu chì vedemu u testu cifratu è pruvate à decifrallu senza alcuna infurmazione supplementaria (questu hè chjamatu un attaccu solu di testu cifratu). Se truvamu magicamente a chjave curretta, pudemu verificà facilmente chì hè veramente curretta se u risultatu hè un missaghju raghjone.

Nota chì ci sò dui supposizioni implicite quì. Prima, sapemu cumu fà a decryption, vale à dì, cumu funziona u sistema criptograficu. Questa hè una supposizione standard quandu si parla di criptografia. Ocultà i dettagli di implementazione di u cifru da l'attaccanti pò sembrà una misura di sicurezza supplementaria, ma una volta chì l'attaccante capisce questi dettagli, questa sicurezza supplementaria hè persa in silenziu è irreversibilmente. Hè cusì Principiu di Kerchhoffs: U sistema chì cascà in e mani di u nimicu ùn deve micca causari inconvenienti.

Siconda, assumemu chì a chjave curretta hè l'unica chjave chì porta à una decryption raghjone. Questu hè ancu una supposizione raghjunata; hè cuntentu se u ciphertext hè assai più longu cà a chjave è hè leghjite. Questu hè di solitu ciò chì succede in u mondu reale, eccettu enormi tasti impraticabili o altri scherzi chì sò megliu lasciati da parte (se ùn ti piace micca chì avemu saltatu a spiegazione, per piacè vede u Teorema 3.8 ccà).

In vista di u sopra, una strategia nasce: verificate ogni chjave pussibule. Questu hè chjamatu forza bruta, è un tali attaccu hè garantitu per travaglià contru tutti i cifru pratichi - eventualmente. Per esempiu, a forza bruta hè abbastanza per pirate Cifru di Cesare, un anticu cifru induve a chjave hè una lettera di l'alfabetu, chì implica pocu più di 20 chjavi pussibuli.

Sfortunatamente per i criptanalisti, aumentà a dimensione di a chjave hè una bona difesa contru a forza bruta. Cume a dimensione di a chjave aumenta, u numeru di chjavi pussibuli aumenta in modu esponenziale. Cù dimensioni chjave muderni, a forza bruta simplice hè cumplettamente impraticabile. Per capisce ciò chì significhemu, pigliemu u supercomputer più veloce cunnisciutu da a mità di 2019: Lunae da IBM, cù un rendimentu di punta di circa 1017 operazioni per seconda. Oghje, a durata tipica chjave hè 128 bits, chì significa 2128 cumminazzioni pussibuli. Per circà tutte e chjave, u supercomputer Summit hà bisognu di tempu chì hè circa 7800 volte l'età di l'Universu.

A forza bruta deve esse cunsiderata una curiosità storica? Micca in tuttu: hè un ingredientu necessariu in u libru di cucina di criptoanalisi. Raramenti cifri sò cusì debbuli chì ponu esse rottu solu da un attaccu intelligente, senza l'usu di a forza à un gradu o un altru. Parechji pirate di successu utilizanu un metudu algoritmicu per debilità u cifru di destinazione prima, è poi eseguisce un attaccu di forza bruta.

Analisi di frequenza

Attacchi criptografici: una spiegazione per i menti cunfusiA maiò parte di i testi ùn sò micca gibbberish. Per esempiu, in i testi inglesi ci sò parechje lettere 'e' è articuli 'u'; in i schedarii binari, ci sò assai cero byte cum'è padding trà pezzi d'infurmazioni. L'analisi di frequenza hè qualsiasi attaccu chì prufitta di stu fattu.

L'esempiu canonicu di un cifru vulnerabile à questu attaccu hè u cifru di sustitutu simplice. In questu cifru, a chjave hè una tavula cù tutte e lettere rimpiazzate. Per esempiu, "g" hè sustituitu da "h", "o" da j, cusì a parolla "vai" diventa "hj". Stu cifru hè difficiule di forza bruta perchè ci sò tanti pussibuli tavule di ricerca. Sè site interessatu in a matematica, a durata di a chjave effettiva hè di circa 88 bits: questu hè
Attacchi criptografici: una spiegazione per i menti cunfusi. Ma l'analisi di freccia di solitu face u travagliu rapidamente.

Cunsiderate u testu di criptu seguenti processatu cù un cifru di sustituzzioni simplice:

XDYLY ALY UGLY XDWNKE WN DYAJYN ANF YALXD DGLAXWG XDAN ALY FLYAUX GR WN OGQL ZDWBGEGZDO

Dapoi u Y succedi friquintimenti, ancu à a fine di parechje parolle, pudemu tentatively assume chì questa hè a lettera e:

XDeLe ALe UGLe XDWNKE WN DeAJeN ANF eALXD DGLAXWG XDAN ALe FLeAUX GR WN OGQL ZDWBGEGZDO

Coppia XD ripetutu à u principiu di parechje parolle. In particulare, a cumminazzioni XDeLe suggerisce chjaramente a parolla these o there, dunque cuntinuemu :

theLe ALe UGLe thWNKE WN HeAJeN ANF EALth DGLAtWG THAN ALe FLeAUt GR WN OGQL ZDWBGEGZDO

Assumimu ancu chì L соответствует r, A - a eccetera. Ci hà da piglià prubabilmente uni pochi di prova, ma paragunatu à un attaccu di forza bruta piena, questu attaccu restaurà u testu originale in pocu tempu:

Ci hè più cose in u celu è a terra horatio chì sò sunniate in a vostra filusufia

Per alcuni, risolve tali "criptogrammi" hè un hobby eccitante.

L'idea di l'analisi di frequenza hè più fundamentale di ciò chì pare à prima vista. È s'applica à cifri assai più cumplessi. In tutta a storia, diversi disinni di cifru anu pruvatu à cuntrastà un tali attaccu utilizendu "sustituzione polialfabetica". Quì, durante u prucessu di criptografia, a tavola di sustituzione di lettere hè mudificata in modu cumplessu ma prevedibile chì dipende da a chjave. Tutti issi cifri eranu cunsiderati difficiuli di rompe in un tempu; eppuru l'analisi di frequenza modesta hà eventualmente scunfittu tutti.

U cifru polialfabeticu più ambiziosu in a storia, è probabilmente u più famosu, era u cifru Enigma di a Secunna Guerra Munniali. Era relativamente cumplessu cumparatu cù i so predecessori, ma dopu assai travagliu duru, i criptanalisti britannichi l'anu crackatu cù l'analisi di frequenza. Di sicuru, ùn pudianu sviluppà un attaccu eleganti cum'è quellu mostratu sopra; anu avutu à paragunà parechje cunnisciute di testu in chiaru è di testu cifru (u cusì chjamatu "attaccu di testu chjaru"), ancu pruvucannu à l'utilizatori di Enigma per criptà certi messagi è analizà u risultatu (l'"attaccu di testu chjaru sceltu"). Ma questu ùn hà micca facilitatu u destinu di l'armata nemica scunfitta è i sottumarini affundati.

Dopu stu triunfu, l'analisi di freccia sparì da a storia di a criptoanalisi. I cifri in l'era digitale muderna sò pensati per travaglià cù bits, micca lettere. A più impurtante, questi cifri sò stati cuncepiti cù a cunniscenza scura di ciò chì dopu diventò cunnisciutu a lege di Schneier: Qualchissia pò creà un algoritmu di criptografia chì ellu stessu ùn pò micca rompe. Ùn hè micca abbastanza per u sistema di criptografia paria difficiuli: per pruvà u so valore, deve esse sottumessi à una rivisione di sicurezza senza pietà da parechji criptanalisti chì farà u so megliu per crack the cipher.

Calculi preliminari

Attacchi criptografici: una spiegazione per i menti cunfusiPigliate l'ipotetica cità di Precom Heights, populazione 200. Ogni casa in a cità cuntene un valore mediu di $ 000 30 di valore, ma micca più di $ 000 50. U mercatu di sicurità in Precom hè monopolizatu da ACME Industries, chì pruduce a legendaria serratura di porta di classa Coyote™. Sicondu l'analisi di l'esperti, una serratura di a classe Coyote pò esse rotta solu da una macchina ipotetica assai cumplessa, a creazione di quale esige circa cinque anni è $ 000 in investimentu. A cità hè sicura?

Probabilmente no. Eventualmente, appariscerà un criminale abbastanza ambiziosu. Ragiunà cusì: "Iè, incorreraghju grandi costi iniziali. Cinque anni di pazienti aspittendu, è $ 50 000. Ma quandu aghju finitu, aghju accessu à tutta a ricchezza di sta cità. Se aghju ghjucatu bè e mo carte, questu investimentu si pagherà per ellu stessu parechje volte ".

U stessu hè veru in a criptografia. L'attacchi contr'à un cifru particulari sò sottumessi à una spietata analisi di u costu-benefiziu. Se u rapportu hè favurevule, l'attaccu ùn succede micca. Ma l'attacchi chì travaglianu contr'à parechje vittimi putenziali à una volta, quasi sempre paganu, in quale casu, a megliu pratica di cuncepimentu hè di assume chì anu cuminciatu da u primu ghjornu. Avemu essenzialmente una versione criptografica di a Legge di Murphy: "Qualcosa chì pò veramente rompe u sistema romperà u sistema".

L'esempiu più simplice di un sistema criptu chì hè vulnerabile à un attaccu di precomputation hè un cifru senza chjave constante. Questu era u casu cù Cifru di Cesare, chì simpricimenti cambia ogni lettera di l'alfabetu trè lettere in avanti (a tavula hè loopata, cusì l'ultima lettera di l'alfabetu hè criptata terza). Quì torna u principiu di Kerchhoffs entra in ghjocu: una volta chì un sistema hè pirate, hè pirate per sempre.

U cuncettu hè simplice. Ancu un sviluppatore di criptosistema principiante hà da ricunnosce a minaccia è preparate in cunseguenza. Fighjendu l'evoluzione di a criptografia, tali attacchi eranu inappropriati per a maiò parte di i cifru, da e prime versioni migliorate di u cifru di Cesare finu à a decadenza di cifru polialfabeticu. Tali attacchi sò tornati solu cù l'avventu di l'era muderna di a criptografia.

Stu ritornu hè duvuta à dui fattori. Prima, infine apparsu i criptosistemi abbastanza cumplessi, induve a pussibilità di sfruttamentu dopu à u pirate ùn era micca evidenti. Siconda, a criptografia hè diventata cusì diffusa chì milioni di laici piglianu decisioni ogni ghjornu nantu à induve è quali parti di a criptografia riutilizà. Ci hà pigliatu un pocu di tempu prima chì l'esperti anu realizatu i risichi è suscitanu l'alarma.

Ricurdativi di l'attaccu di precomputation: à a fine di l'articulu avemu da fighjulà dui esempi di criptografia reale induve hà ghjucatu un rolu impurtante.

Interpolazione

Eccu u famosu detective Sherlock Holmes, eseguendu un attaccu d'interpolazione à u sfortunatu Dr Watson:

Aghju subitu invintatu chì tù era venutu da l'Afghanistan... U mo trenu di pensamentu era cusì : "Stu omu hè un duttore per tipu, ma hà un cuscinettu militare. Dunque, un duttore militare. Hè ghjustu ghjuntu da i tropichi - a so faccia hè scura, ma questu ùn hè micca l'ombra naturali di a so pelle, postu chì i so polsi sò assai più bianchi. A faccia hè disgraziata - ovviamente, hà patitu assai è hà patitu di malatie. Hè stata ferita in a so manu manca - u tene immobile è un pocu innaturale. Induve in i tròpichi puderia un duttore militare inglese suppurtà difficultà è ferite? Di sicuru, in Afganistan ". Tuttu u trenu di pensamentu ùn pigliò mancu una seconda. È cusì aghju dettu chì site venutu da l'Afghanistan, è site sorpresu.

Holmes puderia estrae pocu infurmazione da ogni evidenza individualmente. Puderia solu ghjunghje à a so cunclusione cunsiderà tutti inseme. Un attaccu d'interpolazione funziona in modu simile esaminendu e coppie di testu in chiaru è criptu cunnisciuti da a listessa chjave. Da ogni paru, l'osservazioni individuali sò estratti chì permettenu una cunclusione generale nantu à a chjave per esse tracciata. Tutte queste cunclusioni sò vagi è parenu inutilità finu à ch'elli ghjunghjenu di colpu à una massa critica è portanu à l'unica cunclusione pussibule: ùn importa quantu hè incredibile, deve esse veru. Dopu questu, o a chjave hè revelata, o u prucessu di decryption diventa cusì raffinatu chì pò esse replicatu.

Illustremu cun un esempiu simplice cumu funziona l'interpolazione. Diciamu chì vulemu leghje u ghjurnale persunale di u nostru nemicu, Bob. Cifra ogni numeru in u so ghjurnale utilizendu un sistema criptu simplice chì hà amparatu da un annunziu in a rivista "A Mock of Cryptography". U sistema funziona cusì: Bob sceglie dui numeri chì li piace: Attacchi criptografici: una spiegazione per i menti cunfusi и Attacchi criptografici: una spiegazione per i menti cunfusi. Da avà, per criptà ogni numeru Attacchi criptografici: una spiegazione per i menti cunfusi, calcula Attacchi criptografici: una spiegazione per i menti cunfusi. Per esempiu, se Bob hà sceltu Attacchi criptografici: una spiegazione per i menti cunfusi и Attacchi criptografici: una spiegazione per i menti cunfusi, poi u numeru Attacchi criptografici: una spiegazione per i menti cunfusi serà criptatu cum'è Attacchi criptografici: una spiegazione per i menti cunfusi.

Diciamu chì u 28 di dicembre avemu nutatu chì Bob grattava qualcosa in u so ghjurnale. Quand'ellu hà finitu, cuglieremu in silenziu è fighjemu l'ultima entrata:

Data: 235/520

Caru ghjurnale,

Oghje era un bonu ghjornu. À traversu 64 oghje aghju una data cù Alisa, chì vive in un appartamentu 843. Pensu veramente ch'ella puderia esse 26!

Siccomu simu assai serii di seguità à Bob in a so data (semu tramindui 15 in questu scenariu), hè criticu per sapè a data è l'indirizzu di Alice. Fortunatamente, avemu nutatu chì u criptosistema di Bob hè vulnerabile à un attaccu d'interpolazione. Ùn pudemu micca sapè Attacchi criptografici: una spiegazione per i menti cunfusi и Attacchi criptografici: una spiegazione per i menti cunfusi, Ma sapemu a data di l'oghje, cusì avemu dui coppie di testu chjaru-cifratu. Vale à dì, sapemu chì Attacchi criptografici: una spiegazione per i menti cunfusi criptatu in Attacchi criptografici: una spiegazione per i menti cunfusie Attacchi criptografici: una spiegazione per i menti cunfusi - in Attacchi criptografici: una spiegazione per i menti cunfusi. Eccu ciò chì scriveremu:

Attacchi criptografici: una spiegazione per i menti cunfusi

Attacchi criptografici: una spiegazione per i menti cunfusi

Siccomu avemu 15 anni, sapemu digià un sistema di dui equazioni cù dui scunnisciuti, chì in questa situazione hè abbastanza per truvà. Attacchi criptografici: una spiegazione per i menti cunfusi и Attacchi criptografici: una spiegazione per i menti cunfusi senza prublemi. Ogni coppiu di testu chjaru-cifratu pone una limitazione nantu à a chjave di Bob, è e duie restrizioni inseme sò abbastanza per ricuperà cumplettamente a chjave. In u nostru esempiu, a risposta hè Attacchi criptografici: una spiegazione per i menti cunfusi и Attacchi criptografici: una spiegazione per i menti cunfusiAttacchi criptografici: una spiegazione per i menti cunfusi Attacchi criptografici: una spiegazione per i menti cunfusi, cusì 26 in u ghjurnale currisponde à a parolla "quellu", vale à dì "u stessu" - ca. corsia).

L'attacchi d'interpolazione sò, sicuru, micca limitati à esempi simplici. Ogni sistema di criptu chì riduce à un ogettu matematicu ben intesu è una lista di paràmetri hè in risicu di un attaccu d'interpolazione - u più capiscenu l'ughjettu, u risicu più altu.

I principianti spessu si lamentanu chì a criptografia hè "l'arti di cuncepisce e cose u più brutte pussibule". L'attacchi d'interpolazione sò prubabilmente in gran parte di culpa. Bob pò usà un eleganti disegnu matematicu o mantene a so data cù Alice privata - ma sfortunatamente, di solitu ùn pudete micca avè in i dui modi. Questu diventerà assai chjaru quandu avemu eventualmente ghjunghje à u tema di a criptografia di chjave publica.

Protokollu cross / downgrade

Attacchi criptografici: una spiegazione per i menti cunfusiIn Now You See Me (2013), un gruppu di illusionisti tentanu di scaccià u magnate di l'assicuranza currutti Arthur Tressler fora di tutta a so fortuna. Per accede à u cuntu bancariu d'Arthur, l'illusionisti anu da furnisce u so nome d'utilizatore è a password, o furzà ellu à appare in persona à u bancu è participà à u schema.

E duie opzioni sò assai difficili; I picciotti sò abituati à fà nantu à u palcuscenicu, è ùn participanu micca à operazioni di intelligenza. Allora sceglienu a terza opzione pussibile: u so complice chjama u bancu è finge d'esse Arthur. U bancu face parechje dumande per verificà l'identità, cum'è u nome di u ziu è u nome di u primu animali; i nostri eroi in anticipu estraranu facilmente sta informazione da Arthur cù l'ingenieria suciale intelligente. Da questu puntu, l'eccellente sicurezza di password ùn importa più.

(Secunnu una legenda urbana chì avemu verificatu è verificatu personalmente, u criptògrafu Eli Beaham hà scontru una volta un cajera di banca chì insistia à stabilisce una quistione di sicurezza. Quandu u cajera hà dumandatu u nome di a so nanna materna, Beaham hà cuminciatu à dictate: "Capital X, picculu y, trè... ").

Hè listessa in a criptografia, se dui protokolli criptografici sò usati in parallelu per prutege u stessu attivu, è unu hè assai più debule ca l'altru. U sistema risultatu diventa vulnerabile à un attaccu cross-protocol, induve un protocolu più debule hè attaccatu per ghjunghje à u premiu senza toccu u più forte.

In certi casi cumplessi, ùn hè micca abbastanza per cuntattà u servitore cù un protokollu più debule, ma esige a participazione involuntaria di un cliente legittimu. Questu pò esse urganizatu cù l'attaccu chjamatu downgrade. Per capisce stu attaccu, supponemu chì i nostri illusionisti anu un compitu più difficiule chì in u filmu. Assumimu chì un impiigatu bancariu (cassiere) è Arthur anu scontru alcune circustanze impreviste, risultatu in u dialogu seguente:

cambrioleur : Bonghjornu? Questu hè Arthur Tressler. Vogliu resettate a mo password.

Cassiere : Perfettu. Per piacè fate un ochju à u vostru libru di codice sicretu persunale, pagina 28, parolla 3. Tutti i missaghji seguenti seranu criptati usendu sta parolla specifica cum'è a chjave. PQJGH. LOTJNAM PGGY MXVRL ZZLQ SRIU HHNMLPPPV...

cambrioleur : Ehi, ehi, aspetta, aspetta. Hè veramente necessariu? Ùn pudemu micca parlà solu cum'è a ghjente normale ?

Cassiere : Ùn vi cunsigliu micca di fà questu.

cambrioleur : Eiu solu... eccu, aghju avutu una ghjurnata pessima, ok ? Sò un cliente VIP è ùn sò micca in l'umore di scavà questi libri di codice stupidu.

Cassiere : bè. Se insisti, sgiò Tressler. Chi voli?

cambrioleur : Per piacè, vogliu donate tutti i mo soldi à u Fondu Naziunale di Vittimi Arthur Tressler.

(Pausa).

Cassiere : Hè chjaru avà. Per piacè furnite u vostru PIN per transazzione maiò.

cambrioleur : U mo chì?

Cassiere : À a vostra dumanda persunale, e transazzione di questa dimensione necessitanu un PIN per transazzione grande. Stu codice hè statu datu à voi quandu avete apertu u vostru contu.

cambrioleur :... l'aghju persu. Hè veramente necessariu? Ùn pudete micca solu appruvà l'affare?

Cassiere : Innò. Mi dispiace, sgiò Tressler. In novu, questu hè a misura di sicurità chì avete dumandatu. Sè vo vulete, pudemu mandà un novu codice PIN à u vostru mailbox.

I nostri eroi posponanu l'operazione. Eavesdrop in parechje di e grandi transazzione di Tressler, sperendu à sente u PIN; ma ogni volta chì a cunversazione si trasforma in gibbberish codificati prima di qualcosa interessante hè dettu. Infine, un bellu ghjornu, u pianu hè messu in azzione. Aspittàvanu cù pacienza per u mumentu chì Tressler hà da fà una grande transazzione per u telefunu, si mette in linea, è dopu ...

Tressler: Bonghjornu. Vogliu compie una transazzione remota, per piacè.

Cassiere : Perfettu. Per piacè fighjate à u vostru libru di codice secretu persunale, pagina ...

(U latru pressu u buttone; a voce di u cassiere si trasforma in un rumore inintelligibile).

Cassiere : - #@$#@$#*@$$@#* serà criptatu cù sta parolla cum'è a chjave. AAAYRR PLRQRZ MMNJK LOJBAN...

Tressler: Scusate, ùn aghju micca capitu bè. Di novu? In chì pagina ? Chì parolla ?

Cassiere : Questa hè a pagina @#$@#*$)#*#@()#@$(#@*$(#@*).

Tressler: Chi?

Cassiere : Parola numeru vinti @$#@$#%#$.

Tressler: Seriu! Basta digià ! Voi è u vostru protokollu di sicurità site un tipu di circu. Sò chì pudete solu parlà cun mè nurmale.

Cassiere : Ùn vi cunsigliu micca ...

Tressler: È ùn vi cunsigliu micca di perde u mo tempu. Ùn vogliu micca sente più nantu à questu finu à chì risolve i vostri prublemi di linea telefonica. Pudemu finalizà questu affare o micca?

Cassiere :… Iè. Va bè. Chi voli?

Tressler: Vogliu trasfiriri $ 20 à Lord Business Investments, numeru di contu...

Cassiere : Un minutu, per piacè. Hè un grande affare. Per piacè furnite u vostru PIN per transazzione maiò.

Tressler: Chì ? Oh, esattamente. 1234.

Eccu un attaccu discendente. U protokollu più debule "parlà solu direttamente" hè statu previstu cum'è opzione in casu d'urgenza. È ancu quì simu quì.

Puderete dumandassi quale in a so mente sana disegnu un veru sistema "sicuru finu à dumandà altrimenti" cum'è quellu descrittu sopra. Ma cum'è un bancu fittiziu piglia risichi per mantene i clienti chì ùn piacenu micca a criptografia, i sistemi in generale spessu gravitanu versu esigenze indifferenti o ancu francamente ostili à a sicurità.

Questu hè esattamente ciò chì hè accadutu cù u protocolu SSLv2 in 1995. U guvernu di i Stati Uniti hà longu cuminciatu à vede a criptografia cum'è un'arma chì hè megliu mantene luntanu da i nemici stranieri è domestici. I pezzi di codice sò stati appruvati individualmente per l'esportazione da i Stati Uniti, spessu cù a cundizione chì l'algoritmu hè deliberatamente debilitatu. Netscape, u sviluppatore di u navigatore più famosu, Netscape Navigator, hè statu datu permessu per SSLv2 solu cù a chjave RSA 512-bit intrinsecamente vulnerabile (è 40-bit per RC4).

À a fine di u millenniu, e regule si sò rilassate è l'accessu à a criptografia muderna hè diventatu largamente dispunibule. Tuttavia, i clienti è i servitori anu supportatu a criptografia di "esportazione" debilitata per anni per via di a stessa inerzia chì mantene u supportu per qualsiasi sistema legatu. I clienti anu cridutu chì puderanu scontru un servitore chì ùn sustene micca nunda di più. I servitori anu fattu u listessu. Di sicuru, u protokollu SSL dicta chì i clienti è i servitori ùn anu mai aduprà un protokollu debule quandu un megliu hè dispunibule. Ma a listessa premessa s'applicava à Tressler è a so banca.

Sta tiuria hà trovu a so strada in dui attacchi d'altu prufilu chì scuzzulate a sicurità di u protokollu SSL in 2015, i dui scuperti da i ricercatori di Microsoft è INRIA. Prima, i detaglii di l'attaccu FREAK sò stati revelati in u frivaru, seguitu trè mesi dopu da un altru attaccu simili chjamatu Logjam, chì discuteremu in più detail quandu andemu à l'attacchi à a criptografia di chjave publica.

Attacchi criptografici: una spiegazione per i menti cunfusiVulnerabilità FREAK (cunnisciutu ancu cum'è "Smack TLS") hè vinutu à a luce quandu i circadori anu analizatu l'implementazioni di u cliente / servitore TLS è anu scupertu un bug curiosu. In queste implementazioni, se u cliente ùn mancu dumandà à utilizà a criptografia d'esportazione debule, ma u servitore risponde sempre cù tali chjavi, u cliente dice "Oh bè" è cambia à una suite di cifru debule.

À quellu tempu, a criptografia di l'esportazione era largamente cunsiderata obsoleta è off-limits, cusì l'attaccu hè vinutu cum'è un scossa cumpleta è hà affettatu assai duminii impurtanti, cumprese a Casa Bianca, l'IRS è i siti NSA. Ancu peggiu, risulta chì parechji servitori vulnerabili ottimisanu u rendiment riutilendu e stesse chjavi piuttostu cà generà novi per ogni sessione. Questu hà permessu, dopu à u downgrading di u protokollu, di realizà un attaccu di pre-calculazione: cracking una chjave restava relativamente caru ($ 100 è 12 ore à u mumentu di a publicazione), ma u costu praticu di attaccà a cunnessione hè stata ridutta significativamente. Hè abbastanza per selezziunà a chjave di u servitore una volta è crack the encryption for all connections successive from that moment on.

È prima di passà, ci hè un attaccu avanzatu chì deve esse mintuatu ...

Attaccu Oracle

Attacchi criptografici: una spiegazione per i menti cunfusiMoxie Marlinspike più cunnisciutu cum'è u babbu di l'app di messageria criptu multiplataforma Signal; ma ci piace personalmente una di e so innovazioni menu cunnisciute - u principiu di a criptografia di a criptografia (Principiu Crittograficu Doom). Per parafrasà ligeramente, pudemu dì questu: "Se u protocolu cumporta qualsiasi esegue una operazione criptografica nantu à un missaghju da una fonte potenzialmente maliciosa è si cumporta in modu diversu secondu u risultatu, hè cundannatu ". O in una forma più nitida: "Ùn pigliate micca l'infurmazioni da u nemicu per u processu, è se avete bisognu, almenu ùn mostra micca u risultatu".

Lasciemu da parte i buffer overflows, l'injections di cumandamenti, è simili; sò fora di u scopu di sta discussione. A violazione di u "principiu doom" porta à pirate di criptografia seria per u fattu chì u protocolu si cumporta esattamente cum'è previstu.

Cum'è un esempiu, pigliemu un disignu fittiziu cù un cifru di sustituzione vulnerabile, è poi dimustrà un pussibule attaccu. Mentre avemu digià vistu un attaccu à un cifru di sustituzzioni cù l'analisi di freccia, ùn hè micca solu "un altru modu di rompe u stessu cifru". À u cuntrariu, l'attacchi di l'oraculu sò una invenzione assai più muderna, applicabile à parechje situazioni induve l'analisi di freccia falla, è vedemu una dimostrazione di questu in a sezione dopu. Quì u cifru simplice hè sceltu solu per fà l'esempiu più chjaru.

Allora Alice è Bob cumunicanu cù un cifru di sustituzzioni simplice cù una chjave cunnisciuta solu da elli. Sò assai stretti nantu à a durata di i missaghji: sò esattamente 20 caratteri longhi. Allora accunsenu chì, se qualchissia vulia mandà un missaghju più brevi, deve aghjunghje un testu finta à a fine di u missaghju per fà esattamente 20 caratteri. Dopu qualchì discussione, anu decisu ch'elli accetteranu solu i seguenti testi manichi: a, bb, ccc, dddd etc. Cusì, un testu dummy di ogni lunghezza necessaria hè cunnisciutu.

Quandu Alice o Bob riceve un missaghju, verificanu prima chì u missaghju hè a lunghezza curretta (20 caratteri) è chì u suffissu hè u testu fittiziu currettu. S'ellu ùn hè micca u casu, allora rispondenu cù un missaghju d'errore adattatu. Se a lunghezza di u testu è u testu finta sò bè, u destinatariu leghje u missaghju stessu è manda una risposta criptata.

Durante l'attaccu, l'attaccante impersona Bob è manda messagi falsi à Alice. I missaghji sò senza sensu cumpletu - l'attaccante ùn hà micca a chjave, è per quessa ùn pò micca falsificà un missaghju significativu. Ma postu chì u protokollu viola u principiu di u doom, un attaccu pò ancu intrappulà à Alice per revelà l'infurmazioni chjave, cum'è mostratu quì sottu.

cambrioleur : PREWF ZHJKL MMMN. LA

Alice: Testu falso invalidu.

cambrioleur : PREWF ZHJKL MMMN. LB

Alice: Testu falso invalidu.

cambrioleur : PREWF ZHJKL MMMN. LC

Alice: ILCT? TLCT RUWO PUT KCAW CPS OWPOW!

U ladrone ùn hà micca idea di ciò chì Alice hà dettu, ma nota chì u simbulu C deve currisponde a, postu chì Alice hà accettatu u testu dummy.

cambrioleur : REWF ZHJKL MMMN. LAA

Alice: Testu falso invalidu.

cambrioleur : REWF ZHJKL MMMN. LBB

Alice: Testu falso invalidu.

Dopu parechji tentativi...

cambrioleur : REWF ZHJKL MMMN. LGG

Alice: Testu falso invalidu.

cambrioleur : REWF ZHJKL MMMN. LHH

Alice: TLQO JWCRO FQAW SUY LCR C OWQXYJW. IW PWWR TU TCFA CHUYT TLQO JWFCTQUPOLQZ.

À novu, l'attaccante ùn hà micca idea di ciò chì Alice hà dettu, ma nota chì H deve cuncorda cù b postu chì Alice hà accettatu u testu simulatu.

È cusì finu à chì l'attaccante cunnosce u significatu di ogni caratteru.

À u primu sguardu, u metudu s'assumiglia à un attaccu di testu chjaru sceltu. À a fine, l'attaccante selezziunate i testi di criptu, è u servitore li processa ubbidiente. A diferenza principale chì rende questi attacchi viabili in u mondu reale hè chì l'attaccante ùn hà micca bisognu di accessu à a trascrizione attuale - una risposta di u servitore, ancu una innocua cum'è "Testu manichino invalidu", hè abbastanza.

Mentri stu attaccu particulare hè istruttivu, ùn arrivare troppu appiccicate nantu à i specifichi di u schema "testu dummy", u criptu-sistema specifichi utilizatu, o a sequenza esatta di missaghji mandati da l'attaccante. L'idea basica hè cumu Alice reagisce in modu diversu basatu nantu à e proprietà di u testu chjaru, è fà cusì senza verificà chì u testu cifru currispundente hè veramente da un partitu di fiducia. Cusì, Alice permette à l'attaccante di strincà l'infurmazioni secreti da e so risposte.

Ci hè assai chì pò esse cambiatu in questu scenariu. I simboli chì Alice reagisce à, o a assai diffarenza in u so cumpurtamentu, o ancu u cryptosystem utilizatu. Ma u principiu ferma u listessu, è l'attaccu cum'è un sanu ferma viable in una forma o l'altru. L'implementazione basica di questu attaccu hà aiutatu à scopre parechji bug di sicurezza, chì avemu da fighjà prestu; ma prima ci sò qualchi lezioni teorichi da amparà. Cumu utilizà stu "script Alice" fittiziu in un attaccu chì pò travaglià nantu à un veru cifru mudernu? Hè ancu pussibule, ancu in teoria?

In 1998, u criptu svizzeru Daniel Bleichenbacher hà rispostu sta quistione in l'affirmative. Hà dimustratu un attaccu d'oraculu à u sistema di criptu di chjave publica largamente utilizatu RSA, utilizendu un schema di messagiu specificu. In certi implementazioni RSA, u servitore risponde cù diversi messagi d'errore secondu chì u testu chjaru currisponde à u schema o micca; questu era abbastanza per fà l'attaccu.

Quattru anni dopu, in u 2002, u crittografu francese Serge Vaudenay hà dimustratu un attaccu d'oraculu quasi identicu à quellu descrittu in u scenariu Alice sopra - salvu chì invece di un cifru fittiziu, hà rottu una classa sana sana di cifru muderni chì a ghjente hè veramente utilizata. In particulare, l'attaccu di Vaudenay mira à cifru di dimensioni di input fissi ("cifrati di bloccu") quandu sò usati in u cusì chjamatu "modu di criptografia CBC" è cun un certu schema di padding populari, basicamente equivalente à quellu in u scenariu Alice.

Ancu in u 2002, u criptu americanu John Kelsey - co-autore Dui pesci - prupostu diversi attacchi di l'oraculu nantu à i sistemi chì cumpressenu i missaghji è poi li criptanu. U più notevuli trà questi era un attaccu chì hà apprufittatu di u fattu chì hè spessu pussibule inferisce a lunghezza originale di u testu chjaru da a durata di u testu criptu. In teoria, questu permette un attaccu d'oraculu chì recupera parti di u testu originale.

Quì sottu furnisce una descrizzione più dettagliata di l'attacchi di Vaudenay è Kelsey (daremu una descrizzione più dettagliata di l'attaccu di Bleichenbacher quandu andemu à l'attacchi à a criptografia di chjave publica). Malgradu i nostri sforzi, u testu diventa un pocu tecnicu; dunque s'ellu ci hè abbastanza per voi, saltate e duie sezioni seguenti.

L'attaccu di Vodene

Per capiscenu l'attaccu di Vaudenay, prima avemu bisognu di parlà un pocu di più nantu à i criptu di bloccu è i modi di criptografia. Un "cifratu di bloccu" hè, cum'è dettu, un cifru chì piglia una chjave è un input di una certa lunghezza fissa ("longuzza di bloccu") è pruduce un bloccu cifratu di a listessa durata. I cifri di blocchi sò largamente usati è cunsiderati relativamente sicuri. U DES avà ritiratu, cunsideratu u primu cifru mudernu, era un cifru di bloccu. Cumu l'esitatu sopra, u listessu hè veru per AES, chì hè largamente utilizatu oghje.

Sfortunatamente, i cifrari di blocchi anu una debulezza flagrante. A dimensione tipica di u bloccu hè 128 bit, o 16 caratteri. Ovviamente, a criptografia moderna richiede di travaglià cù dati di input più grande, è questu hè induve i modi di criptografia entranu in ghjocu. U modu di criptografia hè essenzialmente un pirate: hè un modu per applicà in qualchì modu un cifru di bloccu chì accetta solu input di una certa dimensione à input di una lunghezza arbitraria.

L'attaccu di Vodene hè focu annantu à u famosu modu di operazione CBC (Cipher Block Chaining). L'attaccu tratta u cifru di bloccu sottostante cum'è una scatula negra magica, impregnabile è ignora completamente a so sicurità.

Eccu un diagramma chì mostra cumu funziona u modu CBC:

Attacchi criptografici: una spiegazione per i menti cunfusi

Attacchi criptografici: una spiegazione per i menti cunfusi

U più circundatu significa l'operazione XOR (OR esclusiva). Per esempiu, u sicondu bloccu di ciphertext hè ricevutu:

  1. Facendu una operazione XOR nantu à u sicondu bloccu di testu chjaru cù u primu bloccu di testu cifratu.
  2. Criptà u bloccu resultanti cù un cifru di bloccu cù una chjave.

Siccomu CBC faci un usu pesante di l'operazione XOR binaria, pigliamu un mumentu per ricurdà alcune di e so proprietà:

  • Idempotenza: Attacchi criptografici: una spiegazione per i menti cunfusi
  • Commutatività: Attacchi criptografici: una spiegazione per i menti cunfusi
  • Associatività: Attacchi criptografici: una spiegazione per i menti cunfusi
  • autoreversibilità: Attacchi criptografici: una spiegazione per i menti cunfusi
  • Dimensione di byte: byte n di Attacchi criptografici: una spiegazione per i menti cunfusi = (byte n di Attacchi criptografici: una spiegazione per i menti cunfusi) Attacchi criptografici: una spiegazione per i menti cunfusi (byte n di Attacchi criptografici: una spiegazione per i menti cunfusi)

Di genere, sti pruprietà implicanu chì se avemu una equazione chì implica operazioni XOR è una scunnisciuta, pò esse risolta. Per esempiu, se sapemu chì Attacchi criptografici: una spiegazione per i menti cunfusi cù l'inconnu Attacchi criptografici: una spiegazione per i menti cunfusi è famosu Attacchi criptografici: una spiegazione per i menti cunfusi и Attacchi criptografici: una spiegazione per i menti cunfusi, allora pudemu cunfidà nantu à e proprietà sopra citate per risolve l'equazioni per Attacchi criptografici: una spiegazione per i menti cunfusi. Appliendu XOR da i dui lati di l'equazioni cù Attacchi criptografici: una spiegazione per i menti cunfusi, avemu Attacchi criptografici: una spiegazione per i menti cunfusi. Tuttu chistu diventerà assai pertinente in un mumentu.

Ci hè duie differenze minori è una diferenza maiò trà u nostru scenariu Alice è l'attaccu di Vaudenay. Dui minori:

  • In u script, Alice s'aspettava chì i testi chjaru finiscinu cù i caratteri a, bb, ccc eccetera. In l'attaccu Wodene, a vittima invece aspetta chì i testi in pianu finiscinu N volte cù N byte (vale à dì, esadecimale 01 o 02 02, o 03 03 03, etc.). Questu hè puramente una diferenza cusmetica.
  • In u scenariu d'Alice, era faciule per sapè s'ellu Alice avia accettatu u missaghju da a risposta "Test dummy incorrect". In l'attaccu di Vodene, hè necessariu più analisi è l'implementazione precisa da u latu di a vittima hè impurtante; ma per a brevità, pigliemu per un fattu chì st'analisi hè sempre pussibule.

Differenza principale:

  • Siccomu ùn usemu micca u stessu sistema di criptu, a relazione trà i bytes di ciphertext cuntrullati da l'attaccu è i sicreti (chjavi è testu chjaru) seranu ovviamente diffirenti. Per quessa, l'attaccante duverà aduprà una strategia sfarente per creà testi di criptu è interpretà e risposte di u servitore.

Sta diferenza maiò hè u pezzu finali di u puzzle per capiscenu l'attaccu di Vaudenay, per quessa, piglià un mumentu per pensà à perchè è cumu un attaccu d'oraculu nantu à CBC pò esse muntatu in u primu locu.

Eppo supponi chì ci hè datu un ciphertext CBC di 247 blocchi, è vulemu decriptà. Pudemu mandà missaghji falsi à u servitore, cum'è pudemu mandà missaghji falsi à Alice prima. U servitore decifrarà i missaghji per noi, ma ùn mostrarà micca u decryption - invece, di novu, cum'è cù Alice, u servitore rappurtarà solu un pocu di infurmazione: se u testu chjaru hà padding validu o micca.

Cunsiderate chì in u scenariu di Alice avemu avutu e seguenti relazioni:

$$display$$text{SIMPLE_SUBSTITUTION}(text{ciphertext},text{key}) = text{plaintext}$$display$$

Chjamemu questu "equazione di Alice". Avemu cuntrullatu u ciphertext; u servitore (Alice) hà filtratu infurmazione vaga nantu à u testu chjaru ricevutu; è questu ci hà permessu di deduce l'infurmazioni nantu à l'ultimu fattore - a chjave. Per analogia, se pudemu truvà una tale cunnessione per u script CBC, pudemu esse capace di estrae qualchì infurmazione secreta ancu quì.

Per furtuna, ci sò veramente relazioni chì pudemu usà. Cunsiderate l'output di a chjama finale per decifrare un cifru di bloccu è denote questu output cum'è Attacchi criptografici: una spiegazione per i menti cunfusi. Denotemu ancu blocchi di testu chjaru Attacchi criptografici: una spiegazione per i menti cunfusi è blocchi di testu cifratu Attacchi criptografici: una spiegazione per i menti cunfusi. Fighjate un altru sguardu à u diagrama CBC è nutate ciò chì succede:

Attacchi criptografici: una spiegazione per i menti cunfusi

Chjamemu questu "equazione CBC".

In u scenariu d'Alice, monitorendu u ciphertext è fighjendu a fuga di testu in chiaru currispundente, pudemu fà un attaccu chì ricuperò u terzu termu in l'equazione - a chjave. In u scenariu CBC, monitoremu ancu u ciphertext è observemu fughe d'infurmazioni nantu à u testu chjaru currispundente. Se l'analogia si mantene, pudemu avè infurmazioni nantu Attacchi criptografici: una spiegazione per i menti cunfusi.

Assumimu chì avemu veramente restauratu Attacchi criptografici: una spiegazione per i menti cunfusi, chì allora ? Ebbè, allora pudemu stampà tuttu l'ultimu bloccu di testu chjaru in una volta (Attacchi criptografici: una spiegazione per i menti cunfusi), solu per entra Attacchi criptografici: una spiegazione per i menti cunfusi (chì avemu) è
ricevutu Attacchi criptografici: una spiegazione per i menti cunfusi in l'equazioni CBC.

Avà chì simu ottimisti nantu à u pianu generale di attaccu, hè ora di travaglià i dettagli. Per piacè fate attenzione à esattamente cumu l'infurmazioni in testu chjaru sò filtrati nantu à u servitore. In u script d'Alice, a fuga hè accaduta perchè Alice risponde solu cù u messagiu currettu se $inline$text{SIMPLE_SUBSTITUTION}(text{ciphertext},text{key})$inline$ finì cù a linea. a (o bb, è cusì, ma e probabilità di sti cundizioni sò attivati ​​da casu era assai chjuca). Simile à CBC, u servitore accetta u padding se è solu si Attacchi criptografici: una spiegazione per i menti cunfusi finisce in esadecimale 01. Allora pruvemu u listessu truccu: mandà falsi falsi falsi cù i nostri valori falsi Attacchi criptografici: una spiegazione per i menti cunfusifinu à chì u servitore accetta u riempimentu.

Quandu u servitore accetta un padding per unu di i nostri missaghji falsi, significa chì:

Attacchi criptografici: una spiegazione per i menti cunfusi

Avà usemu a pruprietà XOR byte-byte:

Attacchi criptografici: una spiegazione per i menti cunfusi

Sapemu u primu è u terzu termini. E avemu digià vistu chì questu ci permette di ricuperà u termine restante - l'ultimu byte da Attacchi criptografici: una spiegazione per i menti cunfusi:

Attacchi criptografici: una spiegazione per i menti cunfusi

Questu ci dà ancu l'ultimu byte di u bloccu di testu chjaru finali via l'equazioni CBC è a pruprietà byte-by-byte.

Pudemu lascià cusì è esse cuntentu chì avemu fattu un attaccu à un cifru teoricamente forte. Ma in fatti pudemu fà assai di più: pudemu in realtà ricuperà tuttu u testu. Questu hè bisognu di un truccu chì ùn era micca in u scrittu originale di Alice è ùn hè micca necessariu per l'attaccu di l'oraculu, ma vale sempre a pena amparà.

Per capiscenu, prima nutate chì u risultatu di a pruduzzioni di u valore currettu di l'ultimu byte hè Attacchi criptografici: una spiegazione per i menti cunfusi avemu una nova capacità. Avà, quandu falsificate i testi di criptu, pudemu manipulà l'ultimu byte di u testu chjaru currispundente. In novu, questu hè in relazione cù l'equazioni CBC è a pruprietà byte-by-byte:

Attacchi criptografici: una spiegazione per i menti cunfusi

Siccomu avà cunnosce u sicondu termini, pudemu usà u nostru cuntrollu nantu à u primu per cuntrullà u terzu. Avemu solu calculà:

Attacchi criptografici: una spiegazione per i menti cunfusi

Ùn pudemu micca fà questu prima perchè ùn avemu micca avutu l'ultimu byte Attacchi criptografici: una spiegazione per i menti cunfusi.

Cumu ci aiuterà questu? Supponemu chì avà criemu tutti i testi di criptu tali chì in i testi in chiaru currispundenti l'ultimu byte hè uguale à 02. U servitore avà accetta solu padding se u testu chjaru finisci cù 02 02. Siccomu avemu currettu l'ultimu byte, questu succede solu se u penultimu byte di u pianu hè ancu 02. Continuemu à mandà falsi blocchi di ciphertext, cambiendu u penultimu byte, finu à chì u servitore accetta u padding per unu di elli. À questu puntu avemu:

Attacchi criptografici: una spiegazione per i menti cunfusi

È ristabilisce u penultimu byte Attacchi criptografici: una spiegazione per i menti cunfusi cum'è l'ultimu hè statu restauratu. Cuntinuemu in u listessu spiritu: curremu l'ultimi dui bytes di u testu chjaru 03 03, Ripetemu stu attaccu per u terzu byte da a fine è cusì, in ultimamente risturazione cumpletamente Attacchi criptografici: una spiegazione per i menti cunfusi.

Chì ci hè u restu di u testu? Per piacè nutate chì u valore Attacchi criptografici: una spiegazione per i menti cunfusi hè veramente $inline$text{BLOCK_DECRYPT}(text{key},C_{247})$inline$. Pudemu mette ogni altru bloccu invece Attacchi criptografici: una spiegazione per i menti cunfusi, è l'attaccu serà sempre successu. In fatti, pudemu dumandà à u servitore di fà $inline$text{BLOCK_DECRYPT}$inline$ per qualsiasi dati. À questu puntu, u ghjocu hè finitu - pudemu decifrare qualsiasi testu di criptu (fighjate un altru sguardu à u diagramma di decifrazione CBC per vede questu; è nutate chì l'IV hè publicu).

Stu metudu particulari ghjoca un rolu cruciale in l'attaccu di l'oraculu chì avemu da scontru dopu.

L'attaccu di Kelsey

U nostru simpaticu John Kelsey hà stabilitu i principii sottumessi à parechji attacchi pussibuli, micca solu i dettagli di un attaccu specificu à un cifru specificu. U so Articulu di 2002 di l'annu hè un studiu di pussibuli attacchi à dati cumpressi criptati. Pensate chì l'infurmazioni chì i dati sò stati cumpressi prima di a criptografia ùn era micca abbastanza per fà un attaccu? Risulta chì hè abbastanza.

Stu risultatu surprisante hè duvuta à dui principii. Prima, ci hè una forte correlazioni trà a durata di u testu chjaru è a durata di u testu criptu; per parechji cifri esatta ugualità. Siconda, quandu a cumpressione hè realizata, ci hè ancu una forte correlazione trà a durata di u missaghju cumpressatu è u gradu di "rumore" di u testu chjaru, vale à dì, a proporzione di caratteri chì ùn si ripetiscenu (u termu tecnicu hè "entropia alta". ).

Per vede u principiu in l'azzione, cunzidira dui textu chjaru:

Testu chjaru 1: AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

Testu chjaru 2: ATVXCAGTRSVPTVVULSJQHGEYCMQPCRQBGCYIXCFJGJ

Assumimu chì i dui testi chjaru sò cumpressi è poi criptati. Ottene dui testi di criptu resultanti è duvete indovinà quale testu criptu currisponde à quale testu chjaru:

Ciphertext 1: PVOVEYBPJDPVANEAWVGCIUWAABCIYIKOOURMYDTA

Ciphertext 2: DWKJZXYU

A risposta hè chjara. Trà i testi in chiaru, solu u testu chjaru 1 puderia esse cumpressu in a magra lunghezza di u sicondu testu cifratu. Avemu capitu questu senza sapè nunda di l'algoritmu di cumpressione, a chjave di criptografia, o ancu u cifru stessu. Comparatu à a ghjerarchia di pussibuli attacchi criptografici, questu hè un tipu di pazzi.

Kelsey indica ancu chì in certi circustanze inusual stu principiu pò ancu esse usatu per fà un attaccu di l'oraculu. In particulare, descrive cumu un attaccu pò ricuperà u testu in chiaru sicretu s'ellu pò furzà u servitore à criptà i dati di a forma (u testu in chiaru seguitu da Attacchi criptografici: una spiegazione per i menti cunfusimentre ch'ellu hè in cuntrollu Attacchi criptografici: una spiegazione per i menti cunfusi è pò in qualchì modu verificà a durata di u risultatu criptatu.

In novu, cum'è altri attacchi di l'oraculu, avemu a relazione:

Attacchi criptografici: una spiegazione per i menti cunfusi

In novu, cuntrullemu un termini (Attacchi criptografici: una spiegazione per i menti cunfusi), vedemu una piccula fuga d'infurmazioni nantu à un altru membru (ciphertext) è pruvate à ricuperà l'ultimu (plaintext). Malgradu l'analogia, questa hè una situazione un pocu inusual cumparatu cù altri attacchi di l'oraculu chì avemu vistu.

Per illustrà cumu un tali attaccu puderia travaglià, usemu un schema di compressione fittizia chì avemu appena inventatu: TOYZIP. Cercheghja e linee di testu chì sò apparsu prima in u testu è li rimpiazza cù trè byte di placeholder chì indicanu induve truvà una istanza prima di a linea è quante volte si prisenta quì. Per esempiu, a linea helloworldhello pò esse cumpressu in helloworld[00][00][05] 13 bytes longu paragunatu à i 15 bytes originali.

Suppone chì un attaccante prova di ricuperà u testu chjaru di una forma password=..., induve a password stessu hè scunnisciutu. Sicondu u mudellu d'attaccu di Kelsey, un attaccu puderia dumandà à u servitore di cumpressione è poi criptà i missaghji di forma (textu chjaru seguitu da Attacchi criptografici: una spiegazione per i menti cunfusi), induve Attacchi criptografici: una spiegazione per i menti cunfusi - testu liberu. Quandu u servitore hà finitu di travaglià, informa a durata di u risultatu. L'attaccu va cusì:

cambrioleur : Cumpressate è criptate u testu chjaru senza alcunu padding.

Servitore: Lunghezza di u risultatu 14.

cambrioleur : Cumpressate è criptate u testu chjaru à quale hè appiccicatu password=a.

Servitore: Lunghezza di u risultatu 18.

U cracker nota: [uriginale 14] + [trè byte chì rimpiazzati password=] + a

cambrioleur : Cumpressate è criptate u testu chjaru à quale hè aghjuntu password=b.

Servitore: Lunghezza di u risultatu 18.

cambrioleur : Cumpressate è criptate u testu chjaru à quale hè aghjuntu password=с.

Servitore: Lunghezza di u risultatu 17.

U cracker nota: [uriginale 14] + [trè byte chì rimpiazzati password=c]. Questu assume chì u testu chjaru originale cuntene a stringa password=c. Questu hè, a password principia cù una lettera c

cambrioleur : Cumpressate è criptate u testu chjaru à quale hè aghjuntu password=сa.

Servitore: Lunghezza di u risultatu 18.

U cracker nota: [uriginale 14] + [trè byte chì rimpiazzati password=с] + a

cambrioleur : Cumpressate è criptate u testu chjaru à quale hè aghjuntu password=сb.

Servitore: Lunghezza di u risultatu 18.

(… Qualchì tempu dopu…)

cambrioleur : Cumpressate è criptate u testu chjaru à quale hè aghjuntu password=со.

Servitore: Lunghezza di u risultatu 17.

U cracker nota: [uriginale 14] + [trè byte chì rimpiazzati password=co]. Utilizendu a stessa logica, l'attaccante cuncludi chì a password principia cù e lettere co

È cusì finu à chì a password sana hè restaurata.

U lettore serà perdonatu per pensà chì questu hè un eserciziu puramente accademicu è chì un tali scenariu d'attaccu ùn si presenta mai in u mondu reale. Alas, cum'è avemu da vede prestu, hè megliu micca rinunzià à a criptografia.

Vulnerabilità di a marca: CRIME, POODLE, DROWN

Infine, dopu avè studiatu a teoria in dettu, pudemu vede cumu queste tecniche sò applicate in attacchi criptografici di a vita reale.

CRIMINU

Attacchi criptografici: una spiegazione per i menti cunfusiSe l'attaccu hè destinatu à u navigatore è a rete di a vittima, alcuni seranu più faciuli è alcuni seranu più difficili. Per esempiu, hè faciule per vede u trafficu di a vittima: basta à pusà cun ellu in u stessu caffè cù WiFi. Per quessa, i vittimi potenziali (vale à dì tutti) sò generalmente cunsigliati per utilizà una cunnessione criptata. Serà più difficiule, ma ancu pussibule, di fà richieste HTTP in nome di a vittima à qualchì situ di terzu (per esempiu, Google). L'attaccante deve attirà a vittima à una pagina web maliciosa cù un script chì face a dumanda. U navigatore web furnisce automaticamente a cookie di sessione currispondente.

Questu pare stupente. Sì Bob andava à evil.com, Puderia u script in stu situ solu dumandà à Google per email a password di Bob [email protected]? Ebbè, in teoria sì, ma in realtà no. Stu scenariu hè chjamatu un attaccu di falsificazione di dumanda cross-site (Falsificazione di Richiesta Cross-Site, CSRF), è era populari versu a mità di l'anni 90. Oghje si evil.com prova stu truccu, Google (o qualsiasi situ web chì si rispettu) di solitu risponde cù, "Bene, ma u vostru token CSRF per sta transazzione serà... um... три триллиона и семь. Per piacè ripetite stu numeru ". I navigatori muderni anu una cosa chjamata "politica di listessa origine" chì i scripts in u situ A ùn anu micca accessu à l'infurmazioni mandati da u situ B. Allora u script in u situ A. evil.com pò mandà richieste à google.com, ma ùn pò micca leghje e risposte o veramente compie a transazzione.

Avemu da enfatizà chì, salvu chì Bob usa una cunnessione criptata, tutte queste prutezioni sò senza significatu. Un attaccu pò solu leghje u trafficu di Bob è ricuperà a cookie di sessione di Google. Cù sta cookie, hà da esse simpliciamente apertu una nova tabulazione di Google senza abbandunà u so propiu navigatore è impersonate Bob senza scuntrà pulitiche pesky di a stessa origine. Ma, sfurtunatamenti per un ladrone, questu hè diventatu menu è menu cumuni. L'Internet in generale hà longu dichjarata guerra à e cunnessione micca criptate, è u trafficu in uscita di Bob hè prubabilmente criptatu, chì li piace o micca. Inoltre, da u principiu di l'implementazione di u protocolu, u trafficu era ancu rimpicciottu prima di criptografia; Questa era una pratica cumuni per riduce a latenza.

Questu hè induve vene in ghjocu CRIMINU (Ratio di cumpressione Infoleak Made Easy, fuga simplice attraversu u rapportu di compressione). A vulnerabilità hè stata rivelata in settembre 2012 da i ricercatori di sicurezza Juliano Rizzo è Thai Duong. Avemu digià esaminatu tutta a basa teorica, chì ci permette di capisce ciò chì anu fattu è cumu. Un attaccu puderia furzà u navigatore di Bob à mandà dumande à Google è dopu à sente e risposte nantu à a reta lucale in una forma cumpressa è criptata. Dunque avemu:

Attacchi criptografici: una spiegazione per i menti cunfusi

Quì l'attaccante cuntrolla a dumanda è hà accessu à u sniffer di trafficu, cumprese a dimensione di u pacchettu. U scenariu fittiziu di Kelsey hè ghjuntu à a vita.

Cumprendu a teoria, l'autori di CRIME anu creatu un sfruttamentu chì pò robba i cookies di sessione per una larga gamma di siti, cumpresi Gmail, Twitter, Dropbox è Github. A vulnerabilità hà affettatu a maiò parte di i navigatori web muderni, risultatu in i patch chì sò stati liberati chì silenzianu in silenziu a funzione di cumpressione in SSL per ùn esse micca aduprata in tuttu. L'unicu prutettu da a vulnerabilità era u venerable Internet Explorer, chì ùn hà mai usatu cumpressione SSL.

POODLE

Attacchi criptografici: una spiegazione per i menti cunfusiIn uttrovi 2014, a squadra di sicurità di Google hà fattu ondate in a cumunità di sicurità. Puderanu sfruttà una vulnerabilità in u protokollu SSL chì era statu patched più di deci anni fà.

Ci hè chì mentre i servitori sò in esecuzione di u novu TLSv1.2 brillanti, parechji anu lasciatu supportu per u legatu SSLv3 per a cumpatibilità retrocede cù Internet Explorer 6. Avemu digià parlatu di l'attacchi di downgrade, perchè pudete imagine ciò chì passa. Un sabotage ben orchestratu di u protocolu di handshake è i servitori sò pronti à vultà à u bonu vechju SSLv3, essenzialmente annunziendu l'ultimi 15 anni di ricerca di sicurezza.

Per u cuntestu storicu, quì hè un brevi riassuntu di a storia di SSL finu à a versione 2 da Matthew Green:

Transport Layer Security (TLS) hè u protocolu di sicurità più impurtante in Internet. [..] quasi ogni transazzione chì fate nantu à Internet dipende da TLS. [..] Ma TLS ùn era micca sempre TLS. U protocolu hà iniziatu a so vita in Netscape Communications chjamatu "Secure Sockets Layer" o SSL. U rumore hà dettu chì a prima versione di SSL era cusì terribili chì i sviluppatori cullighjanu tutte e stampe di u codice è l'anu intarratu in un terrenu secretu in u Novu Messicu. In cunseguenza, a prima versione publicamente dispunibule di SSL hè in realtà versione SSL 2. Hè abbastanza paura, è [..] era un pruduttu di a mità di l'anni 90, chì i criptografi muderni consideranu "l'età scura di a criptografia" Parechji di l'attacchi criptografici più atroci chì sapemu oghje ùn sò micca stati scuperti. In u risultatu, i sviluppatori di u protokollu SSLv2 sò stati essenzialmente lasciati per sbulicà u so modu in u bughju, è anu affruntatu assai mostri terribili - à u so disgrazia è u nostru benefiziu, postu chì l'attacchi à SSLv2 lasciavanu lezioni inestimabili per a prossima generazione di protokolli.

Dopu à questi avvenimenti, in u 1996, un Netscape frustratu hà riprogettatu u protocolu SSL da zero. U risultatu hè a versione SSL 3, chì riparatu parechji prublemi di sicurità cunnisciuti di u so predecessore.

Fortunatamente per i ladri, "pochi" ùn significa micca "tutti". In generale, SSLv3 hà furnitu tutti i blocchi necessarii per lancià un attaccu Vodene. U protocolu hà utilizatu un cifru di bloccu di modu CBC è un schema di padding inseguru (questu hè statu currettu in TLS; da quì a necessità di un attaccu di downgrade). Se vi ricordate di u schema di padding in a nostra descrizzione originale di l'attaccu Vaudenay, u schema SSLv3 hè assai simili.

Ma, sfurtunatamenti per i ladri, "simile" ùn significa micca "identicu". U schema di padding SSLv3 hè "N byte aleatoriu seguitu da u numeru N". Pruvate, in queste cundizioni, per selezziunà un bloccu imaginariu di testu criptu è passà per tutti i passi di u schema uriginale di Vaudene: truverete chì l'attaccu estrae bè l'ultimu byte da u bloccu currispundente di testu chjaru, ma ùn va più. Decrypting ogni 16 byte di u ciphertext hè un grande truccu, ma ùn hè micca una vittoria.

Di fronte à u fallimentu, a squadra di Google hà ricursu à l'ultimu risorsu: anu cambiatu à un mudellu di minaccia più putente - quellu utilizatu in CRIME. Assumindu chì l'attaccante hè un script chì corre in a tabulazione di u navigatore di a vittima è pò estrae cookies di sessione, l'attaccu hè sempre impressiunanti. Mentre chì u mudellu di minaccia più largu hè menu realistu, avemu vistu in a sezione precedente chì stu mudellu particulari hè fattibile.

Data queste capacità di attaccu più putenti, l'attaccu pò avà cuntinuà. Nota chì l'attaccante sapi induve a cookie di sessione criptata appare in l'intestazione è cuntrola a durata di a dumanda HTTP chì precede. Per quessa, hè capaci di manipulà a dumanda HTTP per chì l'ultimu byte di a cookie hè allinatu cù a fine di u bloccu. Avà stu byte hè adattatu per a decifrazione. Pudete simpricimenti aghjunghje un caratteru à a dumanda, è u penultimu byte di a cookie ferma in u stessu locu è hè adattatu per a selezzione cù u stessu metudu. L'attaccu cuntinueghja in questu modu finu à chì u schedariu di cookie hè completamente restauratu. Hè chjamatu POODLE: Padding Oracle on Downgraded Legacy Encryption.

Affucà

Attacchi criptografici: una spiegazione per i menti cunfusiComu avemu dettu, SSLv3 hà avutu i so difetti, ma era fundamentalmente sfarente di u so predecessore, postu chì u SSLv2 fughjendu era un pruduttu di una era diversa. Quì pudete interrompe u missaghju à mezu: соглашусь на это только через мой труп trasformatu in соглашусь на это; u cliente è u servitore puderanu scuntrà in linea, stabilisce a fiducia è scambià sicreti davanti à l'attaccante, chì puderia tandu facilmente impersonate i dui. Ci hè ancu u prublema cù a criptografia di l'esportazione, chì avemu citatu quandu cunsiderà FREAK. Questi eranu Sodoma è Gomorra criptografiche.

In marzu 2016, una squadra di circadori di diversi campi tecnichi si sò riuniti è hà fattu una scuperta sorprendente: SSLv2 hè sempre utilizatu in sistemi di sicurezza. Iè, l'attaccanti ùn pudianu più downgrade e sessioni TLS muderni à SSLv2 postu chì quellu pirtusu hè statu chjusu dopu à FREAK è POODLE, ma ponu sempre cunnette à i servitori è inizià e sessioni SSLv2 elli stessi.

Puderete dumandà, perchè ci importa ciò chì facenu quì? Hanu una sessione vulnerabile, ma ùn deve micca affettà altre sessioni o a sicurità di u servitore - nò? Bè, micca abbastanza. Iè, hè cusì chì deve esse in teoria. Ma no - perchè a generazione di certificati SSL impone una certa carica, chì risultatu in parechji servitori chì utilizanu i stessi certificati è, in u risultatu, i stessi chjave RSA per e cunnessione TLS è SSLv2. Per aggravà e cose, per via di un bug OpenSSL, l'opzione "Disable SSLv2" in questa famosa implementazione SSL ùn hà micca veramente travagliatu.

Questu hà fattu pussibule un attaccu cross-protocol à TLS, chjamatu Affucà (Decrypting RSA cù eCriptazione obsoleta è debilitata, decrypting RSA cù crittografia obsoleta è debilitata). Ricurdativi chì questu ùn hè micca listessu chì un attaccu curtu; l'attaccante ùn hà micca bisognu di agisce cum'è un "omu à mezu" è ùn hà micca bisognu di participà à u cliente per participà à una sessione insegura. L'attaccanti simpricimenti inizianu una sessione SSLv2 insicura cù u servitore stessu, attaccà u protokollu debule, è ricuperà a chjave privata RSA di u servitore. Questa chjave hè ancu valida per e cunnessione TLS, è da questu puntu, nisuna quantità di sicurezza TLS ùn impedisce micca di esse cumprumessi.

Ma per cracklu, avete bisognu di un attaccu di travagliu contru SSLv2, chì permette di ricuperà micca solu u trafficu specificu, ma ancu a chjave secreta di u servitore RSA. Ancu s'ellu hè una cunfigurazione cumplessa, i circadori puderanu sceglie qualsiasi vulnerabilità chì hè stata completamente chjusa dopu SSLv2. Eventualmente anu truvatu una opzione adattata: l'attaccu di Bleichenbacher, chì avemu citatu prima è chì spiegheremu in detail in u prossimu articulu. SSL è TLS sò prutetti da questu attaccu, ma alcune caratteristiche aleatorii di SSL, cumminate cù chjavi brevi in ​​a criptografia di qualità d'esportazione, facenu pussibule. una implementazione specifica di DROWN.

À u mumentu di a publicazione, u 25% di i siti principali di l'Internet sò stati affettati da a vulnerabilità DROWN, è l'attaccu puderia esse realizatu cù risorse modeste dispunibuli ancu per i pirate solitarii maliziosi. A ricuperazione di a chjave RSA di u servitore necessitava ottu ore di calculu è $ 440, è SSLv2 passava da obsolete à radiuattivu.

Aspetta, chì ne di Heartbleed?

Questu ùn hè micca un attaccu criptograficu in u sensu descrittu sopra; Questu hè un buffer overflow.

Facemu una pausa

Avemu principiatu cù alcune tecniche basiche: forza bruta, interpolazione, downgrading, cross-protocol, è precomputation. Allora avemu vistu una tecnica avanzata, forsi u cumpunente principalu di l'attacchi criptografici muderni: l'attaccu di l'oraculu. Avemu passatu un bellu pezzu per capiscenu - è hà capitu micca solu u principiu sottostante, ma ancu i dettagli tecnichi di duie implementazioni specifiche: l'attaccu Vaudenay à u modu di crittografia CBC è l'attaccu Kelsey à i protokolli di criptografia di pre-compressione.

In rivisione di l'attacchi di downgrade è di precomputation, avemu brevemente delineatu l'attaccu FREAK, chì usa i dui metudi per avè i siti di destinazione downgrade à chjavi debuli è poi reutilizà e stesse chjave. Per u prossimu articulu, salvemu l'attaccu Logjam (assai simile), chì mira à l'algoritmi di chjave publica.

Dopu avemu vistu trè esempii di l'applicazione di sti principii. Prima, CRIME è POODLE: dui attacchi chì si basanu nantu à a capacità di l'attaccante di injectà un testu in chiaru arbitrariu vicinu à u testu chjaru di destinazione, dopu esaminà e risposte di u servitore è dopu,aduprendu a metodulugia di l'attaccu di l'oraculu, sfruttate sta informazione sparsa per ricuperà parzialmente u testu chjaru. CRIME andò a strada di l'attaccu di Kelsey à a compressione SSL, mentri POODLE invece hà utilizatu una variante di l'attaccu di Vaudenay à CBC cù u stessu effettu.

Dopu avemu turnatu a nostra attenzione à l'attaccu DROWN cross-protocol, chì stabilisce una cunnessione à u servitore utilizendu u protokollu SSLv2 legatu è poi ricuperà e chjave secrete di u servitore cù l'attaccu Bleichenbacher. Avemu saltatu i dettagli tecnichi di questu attaccu per avà; cum'è Logjam, avarà da aspittà finu à avè una bona cunniscenza di i criptosistemi di chjave publica è e so vulnerabilità.

In u prossimu articulu avemu da parlà di attacchi avanzati cum'è meet-in-the-middle, criptana differenziale è attacchi anniversariu. Facemu una rapida incursione in l'attacchi di i canali laterali, è poi andemu à a parte divertente: i criptosistemi di chjave publica.

Source: www.habr.com

Add a comment