Vulnerabilitat en TLS que permet la determinació de claus per a connexions basades en xifratge DH

Revelat informació sobre el nou vulnerabilitats (CVE-2020-1968) al protocol TLS, amb nom en clau
Raccoon i permetent, en rares circumstàncies, determinar una clau primària preliminar (pre-mestra), que es pot utilitzar per desxifrar connexions TLS, inclòs HTTPS, quan s'intercepta el trànsit de trànsit (MITM). S'observa que l'atac és molt difícil d'execució pràctica i és més de caràcter teòric. Per dur a terme un atac, cal una configuració específica del servidor TLS i la capacitat de mesurar amb molta precisió el temps de processament del servidor.

El problema està present directament a l'especificació TLS i només afecta les connexions que utilitzen xifrats basats en el protocol d'intercanvi de claus DH (Diffie-Hellman, TLS_DH_*"). Amb els xifratge ECDH el problema no es produeix i es mantenen segurs. Només els protocols TLS fins a la versió 1.2 són vulnerables; TLS 1.3 no es veu afectat pel problema. La vulnerabilitat es produeix a les implementacions TLS que reutilitzen la clau secreta DH a diferents connexions TLS (aquest comportament es produeix en aproximadament el 4.4% dels servidors Alexa Top 1M).

A l'OpenSSL 1.0.2e i versions anteriors, la clau primària DH es reutilitza a totes les connexions del servidor tret que l'opció SSL_OP_SINGLE_DH_USE estigui establerta explícitament. Des de l'OpenSSL 1.0.2f, la clau primària DH només es reutilitza quan s'utilitzen xifratges DH estàtics ("DH-*", per exemple, "DH-RSA-AES256-SHA"). La vulnerabilitat no apareix a OpenSSL 1.1.1, ja que aquesta branca no utilitza una clau primària DH i no utilitza xifratge DH estàtics.

Quan s'utilitza el mètode d'intercanvi de claus DH, ambdós costats de la connexió generen claus privades aleatòries (d'ara endavant clau "a" i clau "b"), a partir de les quals es calculen i s'envien les claus públiques (ga mod p i gb mod p). Després que cada part rep les claus públiques, es calcula una clau primària comuna (gab mod p), que s'utilitza per generar claus de sessió. L'atac Raccoon us permet determinar la clau primària mitjançant l'anàlisi del canal lateral, basant-vos en el fet que les especificacions TLS fins a la versió 1.2 requereixen que es descartin tots els bytes nuls principals de la clau primària abans dels càlculs que la involucren.

La inclusió de la clau primària truncada es passa a la funció de generació de claus de sessió, que es basa en funcions hash amb diferents retards en processar dades diferents. Mesurar amb precisió el temps de les operacions de clau realitzades pel servidor permet a l'atacant determinar pistes (oracle) que permeten jutjar si la clau primària comença des de zero o no. Per exemple, un atacant podria interceptar la clau pública (ga) enviada pel client, retransmetre-la al servidor i determinar
si la clau primària resultant comença des de zero.

Per si mateix, definir un byte de la clau no dóna res, però interceptant el valor "ga" transmès pel client durant la negociació de la connexió, l'atacant pot generar un conjunt d'altres valors associats amb "ga" i enviar-los a el servidor en sessions de negociació de connexió separades. Mitjançant la generació i l'enviament de valors "gri*ga", un atacant pot, mitjançant l'anàlisi dels canvis en els retards en la resposta del servidor, determinar els valors que porten a rebre claus primàries a partir de zero. Un cop determinats aquests valors, l'atacant pot crear un conjunt d'equacions per solucions problemes de nombres ocults i calculeu la clau primària original.

Vulnerabilitat en TLS que permet la determinació de claus per a connexions basades en xifratge DH

Vulnerabilitats OpenSSL assignat baix nivell de perill, i la correcció es va reduir a moure els xifrats problemàtics "TLS_DH_*" de la versió 1.0.2w a la categoria de xifratge amb un nivell de protecció insuficient ("xifrats-ssl febles"), que està desactivada per defecte. . Els desenvolupadors de Mozilla van fer el mateix, Apagat a la biblioteca NSS utilitzada al Firefox, les suites de xifratge DH i DHE. A partir del Firefox 78, els xifrats problemàtics estan desactivats. El suport de Chrome per a DH es va suspendre el 2016. Les biblioteques BearSSL, BoringSSL, Botan, Mbed TLS i s2n no es veuen afectades pel problema perquè no admeten xifratge DH ni variants estàtiques de xifratge DH.

Els problemes addicionals s'anoten per separat (CVE-2020-5929) a la pila TLS de dispositius F5 BIG-IP, fent que l'atac sigui més realista. En particular, s'han identificat desviacions en el comportament dels dispositius en presència d'un byte zero al començament de la clau primària, que es pot utilitzar en lloc de mesurar la latència exacta dels càlculs.

Font: opennet.ru

Afegeix comentari