Ailagbara ni TLS gbigba ipinnu bọtini fun awọn asopọ ti o da lori awọn ciphers DH

Ṣafihan alaye nipa titun ailagbara (CVE-2020-1968) ninu ilana TLS, ti a fun ni orukọ
raccoon ati gbigba, ni awọn ayidayida to ṣọwọn, lati pinnu bọtini alakoko kan (ṣaaju-titunto), eyiti o le ṣee lo lati decrypt awọn asopọ TLS, pẹlu HTTPS, nigba kikọlu ijabọ irekọja (MITM). O ṣe akiyesi pe ikọlu naa ṣoro pupọ fun imuse iṣe ati pe o jẹ diẹ sii ti imọ-jinlẹ. Lati ṣe ikọlu kan, iṣeto ni pato ti olupin TLS ati agbara lati ṣe iwọn deede akoko ṣiṣe olupin ni a nilo.

Iṣoro naa wa taara ni sipesifikesonu TLS ati pe o kan awọn asopọ nikan nipa lilo awọn ciphers ti o da lori Ilana paṣipaarọ bọtini DH (Diffie-Hellman, TLS_DH_*"). Pẹlu awọn ciphers ECDH iṣoro naa ko waye ati pe wọn wa ni aabo. Awọn ilana TLS nikan titi di ẹya 1.2 jẹ ipalara; TLS 1.3 ko ni ipa nipasẹ iṣoro naa. Ailagbara naa waye ni awọn imuse TLS ti o tun lo bọtini aṣiri DH kọja awọn ọna asopọ TLS oriṣiriṣi (iwa yii waye lori isunmọ 4.4% ti awọn olupin Alexa Top 1M).

Ni OpenSSL 1.0.2e ati awọn idasilẹ iṣaaju, bọtini DH akọkọ ti tun lo ni gbogbo awọn asopọ olupin ayafi ti aṣayan SSL_OP_SINGLE_DH_USE ti ṣeto ni kedere. Lati OpenSSL 1.0.2f, bọtini DH akọkọ nikan ni a tun lo nigba lilo awọn ciphers DH aimi ("DH-*", fun apẹẹrẹ "DH-RSA-AES256-SHA"). Ailagbara naa ko han ni OpenSSL 1.1.1, niwọn bi ẹka yii ko lo bọtini akọkọ DH ati pe ko lo awọn ciphers DH aimi.

Nigbati o ba nlo ọna paṣipaarọ bọtini DH, awọn ẹgbẹ mejeeji ti asopọ ṣe ina awọn bọtini ikọkọ laileto (bọtini “a” ati bọtini “b” lẹhin eyi), ti o da lori eyiti awọn bọtini gbangba (ga mod p ati gb moodi p) ṣe iṣiro ati firanṣẹ. Lẹhin ti ẹgbẹ kọọkan gba awọn bọtini ita gbangba, bọtini akọkọ ti o wọpọ (gab mod p) jẹ iṣiro, eyiti o lo lati ṣe awọn bọtini igba. Ikọlu Raccoon n gba ọ laaye lati pinnu bọtini akọkọ nipasẹ itupalẹ ikanni ẹgbẹ, da lori otitọ pe awọn pato TLS titi di ẹya 1.2 nilo pe gbogbo awọn baiti asan ti bọtini akọkọ jẹ asonu ṣaaju awọn iṣiro ti o kan.

Pẹlu bọtini akọkọ truncated ti kọja si iṣẹ iran bọtini igba, eyiti o da lori awọn iṣẹ hash pẹlu awọn idaduro oriṣiriṣi nigba ṣiṣe awọn oriṣiriṣi data. Ni deede wiwọn akoko awọn iṣẹ bọtini ti o ṣe nipasẹ olupin n gba apaniyan laaye lati pinnu awọn amọ (oracle) ti o jẹ ki o ṣee ṣe lati ṣe idajọ boya bọtini akọkọ bẹrẹ lati ibere tabi rara. Fun apẹẹrẹ, ikọlu le da bọtini ita gbangba (ga) ti alabara ranṣẹ, tun gbejade si olupin naa ki o pinnu
boya bọtini akọkọ Abajade bẹrẹ lati odo.

Nipa ara rẹ, asọye ọkan baiti ti bọtini ko fun ohunkohun, ṣugbọn nipa kikọlu iye “ga” ti o gbejade nipasẹ alabara lakoko idunadura asopọ, ikọlu le ṣe agbekalẹ ṣeto ti awọn iye miiran ti o ni nkan ṣe pẹlu “ga” ati firanṣẹ si olupin ni lọtọ awọn akoko idunadura asopọ. Nipa ipilẹṣẹ ati fifiranṣẹ awọn iye “gri * ga”, ikọlu le, nipasẹ itupalẹ awọn ayipada ninu awọn idaduro ni esi olupin, pinnu awọn iye ti o yori si gbigba awọn bọtini akọkọ ti o bẹrẹ lati odo. Lehin ti o ti pinnu iru awọn iye bẹ, ikọlu le ṣẹda akojọpọ awọn idogba fun awọn ojutu farasin nọmba isoro ati ṣe iṣiro bọtini akọkọ atilẹba.

Ailagbara ni TLS gbigba ipinnu bọtini fun awọn asopọ ti o da lori awọn ciphers DH

Ṣii awọn ailagbara SSL sọtọ ipele ewu kekere, ati pe atunṣe ti dinku si gbigbe awọn ciphers iṣoro “TLS_DH_*” ni itusilẹ 1.0.2w si ẹya ti awọn ciphers pẹlu ipele aabo ti ko to (“ailagbara-ssl-ciphers”), eyiti o jẹ alaabo nipasẹ aiyipada . Awọn olupilẹṣẹ Mozilla ṣe ohun kanna, ni pipa ninu ile ikawe NSS ti a lo ni Firefox, DH ati DHE suites cipher. Bi ti Firefox 78, awọn apamọ iṣoro jẹ alaabo. Atilẹyin Chrome fun DH ti dawọ pada ni ọdun 2016. BearSSL, BoringSSL, Botan, Mbed TLS ati awọn ile-ikawe s2n ko ni fowo nipasẹ iṣoro naa nitori wọn ko ṣe atilẹyin awọn ciphers DH tabi awọn iyatọ aimi ti awọn ciphers DH.

Awọn iṣoro afikun ni a ṣe akiyesi lọtọ (CVE-2020-5929) ninu akopọ TLS ti awọn ẹrọ F5 BIG-IP, ṣiṣe ikọlu naa ni ojulowo diẹ sii. Ni pataki, awọn iyapa ninu ihuwasi ti awọn ẹrọ ni iwaju baiti odo kan ni ibẹrẹ bọtini akọkọ ni a ti ṣe idanimọ, eyiti o le ṣee lo dipo wiwọn lairi gangan ti awọn iṣiro.

orisun: opennet.ru

Fi ọrọìwòye kun