Vědci nejspíše přišli na to, jak se NSA podařilo prolomit VPN

Snowden loni vypustil do světa zprávu, že prý NSA odposlouchává až 20 000 šifrovaných spojení VPN za hodinu. Skupina vědců nejspíše přišla na způsob, jak se to agentuře podařilo.

Snowdenovi se sice podařilo dostat téma americké Národní bezpečnostní agentury na titulní strany světových periodik, odborná komunita však o možnostech NSA spekulovala již dávno před tím.

Letitým evergreenem byla především otázka, zdali má jedna z nejmocnějších vládních agentur na světě skutečně prostředky k tomu, aby dokázala ve velkém odposlouchávat i šifrovanou komunikaci na internetu – zejména VPN.

Určité náznaky tu byly celé roky, z nitra mocné agentury totiž tu a tam opravdu unikla nějaká zajímavá informace, kterým na jaře 2012 vévodila zpráva, podle které si NSA mohla připsat jakýsi ohromný úspěch v oblasti počítačové kryptografie.

Nikdo tehdy ale přesně netušil, oč by se mohlo jednat, než se o pár let později objevil na scéně Edward a začal publikovat tajné prezentace NSA, ve kterých se agentura mimo jiné chlubila právě tím, že dokáže prakticky živě odposlouchávat obrovské množství VPN a SSH komunikace a dokáže pokořit i HTTPS a další typy šifrovaného datového toku.

Dobrá, dejme tedy tomu, že to NSA skutečně dokáže. Ale jak? Skupina čtrnácti expertů před pár dny publikovala studii (PDF), ve které popisuje možný způsob. A další specialisté přikyvují a dávají jim za pravdu.

Diffeho-Hellmanova výměna klíčů

Jedním z nejpravděpodobnějších technik NSA je údajně prolomení Diffeho-Hellmanovy výměny klíčů (D-H). Jedná se o kryptografický protokol, který se používá pro otevření šifrovaného spojení skrze nezabezpečený kanál – veřejný internet. Protokol D-H používá celý zástup šifrovacích technologií, v jejichž čele stojí IPSec, který konečně patří k nejrozšířenějším protokolům šifrovaného spojení uvnitř VPN tunelu.

A co má být vlastně na Diffeho-Hellmanově výměně klíčů děravého?  Ve vší stručnosti se pokusím popsat, jak vlastně funguje. Dejme tomu, že se budu chtít spojit s Davidem z redakce šifrovanou linkou. Jenže jak to udělat, aniž bychom si dopředu dohodli klíč, kterým budeme celou komunikaci šifrovat?

Jak funguje protokol D-H:

  1. Nejprve si s Davidem dohodneme veřejná a obrovská prvočísla p a g, která budou sloužit k extrémně složitým výpočtům.
  2. Dále si každý zvolíme tajná a náhodná čísla a a b, která budou sloužit jako náše soukromé klíče.
  3. Pomocí prvočísel p a g spočítáme ze soukromých klíčů veřejné klíče A a B, které si navzájem vyměníme.
  4. Díky vzájemným matematickým vztahům mezi p, g, A a B každý z nás vypočítá stejný šifrovací klíč s, který můžeme konečně použít k vlastní šifrované komunikaci.
Klepněte pro větší obrázek
Wikipedie vysvětluje princip protokolu D-H pro vytvoření šiforvacího klíče formou diagramu s mícháním barev. Obrázek jsem tedy upravil pro naše potřeby (Zdroj: David Elster, Wikipedie, CC-BY-SA)

Celý princip najdete matematicky i graficky znázorněný na Wikipedii, ve stručnosti a zcela laicky řečeno jde ale o to, že si můžeme s Davidem skrze veřejný internet vyměnit několik neškodných hodnot, na jejichž základě každý z nás vypočítá tentýž šifrovací klíč, aniž bychom se na něm museli nejprve jasně dohodnout.

Když nás tedy bude někdo odposlouchávat, dozví se leda hodnotu prvočísel p, g a veřejných klíčů A a B. Aby ovšem získal šifrovací klíč s, musel by znát i tajné hodnoty soukromých klíčů a a b.

 

D-H + IPsec = problém

 

Pokud se útočník nedostane k a a b na mém a Davidově počítači, zbývá mu jediná možnost – pokusit se je zjistit reverzními výpočty. Celá podstata počítačové kryptografie ale stojí a padá na principu, že je podobný výpočet velmi složitý, aby se ekonomicky vyplatil.

Jistě, můžete rozlousknout nějaký ten 1 024bitový klíč, ale zabere to třeba rok výpočtů na hypotetickém superpočítačovém clusteru v ceně několika set milionů dolarů. To je prakticky k ničemu.

Skupina výzkumníků však přišla na jednu nepříjemnost. Výpočet soukromých klíčů a a b pro určité p a g je sice šíleně složitý, ale pokud už jednou známe veřejné hodnoty p a g, výpočet dalších možných soukromých klíčů a a b odpovídajících stejným p a g zabere jen zlomek původního výpočetního výkonu. Tedy alespoň v případech, kdy se při výpočtech používají nejvýše 1 024bitové hodnoty.

V ideálním případě by obě strany při inicializaci šifrovaného spojení pokaždé zvolily náhodná prvočísla, jenže praxe může být jiná, čímž se dostáváme zpět k VPN a protokolu IPSec. Podle zjištění skupiny specialistů totiž většina serverů používá IPSec jen s malou sadou standardizovaných a opakujících se hodnot p a g.

Kdyby tedy někdo investoval měsíce času a desítky až stovky milionů dolarů do vývoje crackovacího superpočítače a podařilo by se mu skutečně prolomit protokol D-H pro konkrétní hodnoty p a g, další soukromé klíče pro tatáž pročísla odhalí už relativně snadno. No a jelikož se hodnoty p a g třeba u zmíněného IPSec příliš nemění,  mohl by útočník masivně odposlouchávat zdánlivě bezpečně šifrované spojení.

 

NSA má finanční zdroje i motiv

 

Něco podobného by se mohlo podařit jen organizaci s pohádkovým rozpočtem, know-how a hlavně motivem. Výzkumníci tedy došli k závěru, že pokud NSA skutečně rozlouskla ve velkém VPN, SSH a některé další šifrovací technologie, popsaná slabina 1024bitové Diffeho-Hellmanovy výměny klíčů je asi ona pomyslná trefa do černého a podporuje ji i šuškanda ohledně jakéhosi kryptografického úspěchu z roku 2012.

Klepněte pro větší obrázek
Centrála Národní bezpečnostní agentury v Marylandu

Možná tehdy NSA skutečně rozlouskla první D-H prvočísla a začala sledovat šifrovaný internet ve velkém. Ostatně podle Snowdena měla agentura už před lety technologickou kapacitu k tomu, aby odposlouchávala až 20 tisíc šifrovaných spojení VPN za hodinu a také určité množství HTTPS spojení. Zdokumentovaný postup, který vyžaduje ohromné kvantum času a peněz na počátku, pak je ale velmi svižný, se tedy opravdu nabízí.

Zvyšte zabezpečení, doporučí specialisté

A jak se proti tomu vlastně bránit? Experti doporučují v případě protokolu D-H zvýšit šifrování z 1 024bitových na 2 048bitové klíče (na ty by měla být krátká i NSA) a také implementaci lepších technik iniciace prvotního spojení – zejména protokol D-H s využitím eliptických křivek. To už se ale dostáváme do mnohem komplikovanějšího kryptografického světa, na který tento článek rozhodně nestačí.

Jaké z toho plyne ponaučení? Designové chyby mohou překonat jinak nezměrnou kryptografickou sílu komplikovaných matematických výpočtů. Nelze než doufat, že NSA neví i o skulinách v dalších šifrovacích protokolech, které dnes používáme nejen na internetu. Moc jistý bych si tím ale nebyl.

Témata článku: Věda, Internet, Bezpečnost, NSA, Edward Snowden, VPN, Evergreen, Freedom, Dh

40 komentářů

Nejnovější komentáře

  • Dan Morisi 22. 10. 2015 20:36:20
    100x lepší než javůrkovská "džurnalistika", ale přeci jen by mohl Čížek...
  • Vítězslav Novotný 20. 10. 2015 8:11:32
    všechno jde když se chce stačí k tomu jen chuť, podpora čas a spoustu...
  • _Mrq_ 19. 10. 2015 16:41:03
    Vtipné jsou ty recenze na Google maps. S NSA se už nikdo nemusí cítit...
Určitě si přečtěte

Operační systém běžným počítačům nedal Bill Gates, ale Gary Kildall

Operační systém běžným počítačům nedal Bill Gates, ale Gary Kildall

** Gary Kildall pochopil, že levné výpočetní čipy mohou posloužit jako univerzální počítače pro všechny ** Připravil pro ně proto první operační systém ** Později mu systém vyfoukl Microsoft a nazval ho MS DOS

23.  4.  2017 | Pavel Tronner | 51

Umělá inteligence je sice v plenkách, už teď ale přestáváme rozumět, jak vlastně funguje. To je problém

Umělá inteligence je sice v plenkách, už teď ale přestáváme rozumět, jak vlastně funguje. To je problém

** Už je to tady, lidé přestávají chápat počítače ** Systémy neuronových sítí začínají pracovat tak, že ani jejich tvůrci přesně neví, co se uvnitř děje ** Do budoucna to může být závažný problém

24.  4.  2017 | Jakub Čížek | 111

Před 35 lety měl premiéru legendární počítač ZX Spectrum. Připomeňte si „Gumáka“

Před 35 lety měl premiéru legendární počítač ZX Spectrum. Připomeňte si „Gumáka“

** Slavný osmibitový počítač Sinclair ZX Spectrum byl uveden právě před 35 lety ** Připomeňte si tento průkopnický počítač v tematických článcích ** Podívejte se, jak funguje dnes

23.  4.  2017 | Pavel Tronner | 13

Správný počítač má alespoň dva monitory. Anebo je to jinak?

Správný počítač má alespoň dva monitory. Anebo je to jinak?

** David si nedokáže představit práci bez dvou a více monitorů ** Kubovi naopak stačí jeden a ve více displejích se ztrácí ** Jaký přístup je lepší?

23.  4.  2017 | Jakub Čížek | 59

Český Google Překladač začal používat umělou inteligenci. Konec „drahoušků zákazníků“

Český Google Překladač začal používat umělou inteligenci. Konec „drahoušků zákazníků“

** Google ve svém překladači roky používal statistickou technologii ** Nyní zavádí strojové učení a neuronové sítě ** Rozdíl by měl být zvláště na větších textech patrný už nyní

20.  4.  2017 | Jakub Čížek | 31

Brno otevřelo největší českou dílnu pro bastlíře. Kladívka, vrtačky, 3D tiskárny, laserové řezačky. Je tu vše

Brno otevřelo největší českou dílnu pro bastlíře. Kladívka, vrtačky, 3D tiskárny, laserové řezačky. Je tu vše

** Máte nápad, ale chybí vám stroje a pořádná dílna? ** Chcete postavit ptačí budku, nebo krabičku pro Arduino? ** Brno otevřelo svůj FabLab – laboratoř pro bastlíře

19.  4.  2017 | Jakub Čížek | 31


Aktuální číslo časopisu Computer

První test AMD Ryzen

Velké testy: 22 powerbank a 8 bezdrátových setů

Radíme s koupí Wi-Fi routeru

Co dokáží inteligentní domy?