informacije o novoj (CVE-2020-1968) u TLS protokolu, koji je dobio ime
i omogućuje u vrlo rijetkim okolnostima određivanje preliminarnog glavnog ključa (pre-master) koji se može koristiti za dešifriranje TLS veza, uključujući HTTPS, prilikom presretanja tranzitnog prometa (MITM). Napominje se da je napad vrlo složen za praktičnu provedbu i više je teoretske prirode. Za provođenje napada potrebna je specifična konfiguracija TLS poslužitelja i mogućnost vrlo preciznog mjerenja vremena obrade operacija od strane poslužitelja.
Problem je prisutan izravno u specifikaciji TLS i utječe samo na veze koje koriste šifre temeljene na protokolu razmjene ključeva DH (Diffie-Hellman, TLS_DH_*). S ECDH šiframa problem se ne javlja, te ostaju sigurne. Ranljive su samo TLS verzije do 1.2 uključivo, dok TLS 1.3 nije pogođen problemom. Ranjivost se manifestira u implementacijama TLS koje ponovno koriste tajni DH ključ u različitim TLS vezama (takvo ponašanje uočeno je na otprilike 4.4% poslužitelja iz Alexa Top 1M).
U OpenSSL 1.0.2e i ranijim izdanjima, glavni DH ključ se ponovno koristi u svim poslužiteljskim vezama, osim ako eksplicitno nije postavljena opcija SSL_OP_SINGLE_DH_USE. Počevši od OpenSSL 1.0.2f, glavni DH ključ se ponovno koristi samo kada se koriste statičke DH šifre ("DH-*", na primjer "DH-RSA-AES256-SHA"). U OpenSSL 1.1.1 ranjivost se ne manifestira, jer se u ovoj grani ne koristi glavni DH ključ i ne primjenjuju se statičke DH šifre.
Prilikom korištenja metode razmjene ključeva DH, obje strane veze generiraju nasumične tajne ključeve (dalje ključ "a" i ključ "b"), na temelju kojih se izračunavaju i šalju javni ključevi (ga mod p i gb mod p). Nakon primitka javnih ključeva, svaka strana izračunava zajednički glavni ključ (gab mod p), koji se koristi za formiranje sesijskih ključeva. Napad Raccoon omogućuje određivanje glavnog ključa analizom informacija putem sporednih kanala, oslanjajući se na to da se u specifikacijama TLS do verzije 1.2 propisuje odbacivanje svih početnih nultih bajtova glavnog ključa prije izračuna u kojem on sudjeluje.
Uključujući skraćeni primarni ključ, koji se šalje u funkciju za generiranje sesijskog ključa, baziranu na hash funkcijama s različitim kašnjenjima prilikom obrade različitih podataka. Točno mjerenje vremena operacija servera s ključem omogućava napadaču da odredi naznake (oracle) koje daju mogućnost da se zaključi počinje li primarni ključ s nulom ili ne. Na primjer, napadač može presresti otvoreni ključ (ga) koji je poslao klijent, ponovno ga poslati serveru i odrediti
počinje li s nulom rezultantni primarni ključ.
Sam po sebi, određivanje jednog bajta ključa ne daje ništa, ali presretanjem vrijednosti 'ga' koja je poslana od strane klijenta prilikom dogovora o vezi, napadač može stvoriti skup drugih vrijednosti povezanih s 'ga' i poslati ih serveru u različitim sesijama dogovora. Stvarajući i šaljući vrijednosti 'gri*ga', napadač može analizom promjene kašnjenja u odgovoru servera odrediti vrijednosti koje dovode do primarnih ključeva koji počinju s nulom. Utvrđujući takve vrijednosti, napadač može sastaviti skup jednadžbi za i izračunati izvorni primarni ključ.

U OpenSSL-u, ranjivosti niska razina opasnosti, a ispravak se svodio na premještanje problematičnih šifri 'TLS_DH_*' u kategoriju šifri s nedovoljnim razinama zaštite ('weak-ssl-ciphers') koja je po defaultu isključena. Slično su postupili i programeri Mozille, koji su u NSS biblioteci koja se koristi u Firefoxu, skupove šifri DH i DHE. Od Firefox 78 problematične šifre su isključene. U Chromeu je podrška za DH prekinuta još 2016. godine. Biblioteke BearSSL, BoringSSL, Botan, Mbed TLS i s2n nisu pogođene problemom jer ne podržavaju DH šifre ili statičke varijante DH šifri.
Posebno se ističu dodatni problemi () u TLS staku F5 BIG-IP uređaja, što čini napad realističnijim. Konkretno, otkrivene su devijacije u ponašanju uređaja pri prisutnosti nultog bajta na početku primarnog ključa, koje se mogu koristiti umjesto mjerenja točnog kašnjenja prilikom izračuna.
Izvor: opennet.ru
