Kerentanan ing TLS ngidini penentuan kunci kanggo sambungan adhedhasar cipher DH

Dicethakaké informasi bab anyar vulnerabilities (CVE-2020-1968) ing protokol TLS, kanthi jeneng kode
Rokokon lan ngidini, ing kahanan langka, kanggo nemtokake kunci utami awal (pre-master), kang bisa digunakake kanggo decrypt sambungan TLS, kalebu HTTPS, nalika intercepting lalu lintas transit (MITM). Dicathet yen serangan kasebut angel banget kanggo implementasi praktis lan luwih saka sifat teoritis. Kanggo nindakake serangan, konfigurasi tartamtu saka server TLS lan kemampuan kanggo ngukur wektu pangolahan server kanthi akurat dibutuhake.

Masalah kasebut langsung ana ing spesifikasi TLS lan mung mengaruhi sambungan nggunakake cipher adhedhasar protokol pertukaran kunci DH (Diffie-Hellman, TLS_DH_*"). Kanthi cipher ECDH masalah ora kedadeyan lan tetep aman. Mung protokol TLS nganti versi 1.2 sing rentan; TLS 1.3 ora kena pengaruh masalah kasebut. Kerentanan kasebut dumadi ing implementasi TLS sing nggunakake maneh kunci rahasia DH ing sambungan TLS sing beda-beda (prilaku iki dumadi ing kira-kira 4.4% saka server Alexa Top 1M).

Ing OpenSSL 1.0.2e lan rilis sadurungé, kunci utama DH digunakake maneh ing kabeh sambungan server kajaba opsi SSL_OP_SINGLE_DH_USE disetel kanthi jelas. Wiwit OpenSSL 1.0.2f, kunci utama DH mung digunakake maneh nalika nggunakake cipher DH statis ("DH-*", contone, "DH-RSA-AES256-SHA"). Kerentanan ora katon ing OpenSSL 1.1.1, amarga cabang iki ora nggunakake kunci utama DH lan ora nggunakake cipher DH statis.

Nalika nggunakake cara exchange tombol DH, loro-lorone saka sambungan generate kunci pribadi acak (hereinafter tombol "a" lan tombol "b"), adhedhasar kang tombol umum (ga mod p lan gb mod p) diwilang lan dikirim. Sawise saben partai nampa kunci umum, kunci utama umum (gab mod p) diitung, sing digunakake kanggo ngasilake kunci sesi. Serangan Raccoon ngidini sampeyan nemtokake kunci utami liwat analisis saluran sisih, adhedhasar kasunyatan manawa spesifikasi TLS nganti versi 1.2 mbutuhake kabeh bita nol utama kunci utama dibuwang sadurunge petungan nglibatake.

Kalebu kunci utama sing dipotong diterusake menyang fungsi generasi kunci sesi, sing adhedhasar fungsi hash kanthi wektu tundha sing beda nalika ngolah data sing beda. Ngukur kanthi akurat wektu operasi kunci sing ditindakake dening server ngidini panyerang nemtokake pitunjuk (oracle) sing ngidini kanggo ngadili apa kunci utama diwiwiti saka awal utawa ora. Contone, panyerang bisa nyegat kunci umum (ga) sing dikirim dening klien, ngirim maneh menyang server lan nemtokake
apa tombol utami asil wiwit saka nul.

Dhewe, nemtokake siji bait kunci ora menehi apa-apa, nanging kanthi nyegat nilai "ga" sing dikirim dening klien sajrone negosiasi sambungan, panyerang bisa ngasilake sakumpulan nilai liyane sing ana gandhengane karo "ga" lan dikirim menyang server ing sesi rembugan sambungan kapisah. Kanthi ngasilake lan ngirim nilai "gri*ga", panyerang bisa, liwat nganalisa owah-owahan ing wektu tundha ing respon server, nemtokake nilai sing ndadékaké kanggo nampa kunci utama wiwit saka nol. Sawise nemtokake nilai kasebut, penyerang bisa nggawe seperangkat persamaan solusi masalah nomer didhelikake lan ngitung kunci utama asli.

Kerentanan ing TLS ngidini penentuan kunci kanggo sambungan adhedhasar cipher DH

Kerentanan OpenSSL diutus tingkat bebaya kurang, lan fix iki suda kanggo mindhah cipher masalah "TLS_DH_ *" ing release 1.0.2w kanggo kategori cipher karo tingkat pangayoman ora cukup ("weak-ssl-ciphers"), kang dipatèni minangka standar. . Pangembang Mozilla nindakake perkara sing padha, dipateni ing perpustakaan NSS digunakake ing Firefox, DH lan DHE cipher Suite. Ing Firefox 78, cipher bermasalah dipateni. Dhukungan Chrome kanggo DH mandheg maneh ing 2016. Pustaka BearSSL, BoringSSL, Botan, Mbed TLS lan s2n ora kena masalah amarga ora ndhukung cipher DH utawa varian statis cipher DH.

Masalah tambahan dicathet kanthi kapisah (CVE-2020-5929) ing tumpukan TLS piranti F5 BIG-IP, nggawe serangan luwih nyata. Utamane, panyimpangan ing prilaku piranti ing ngarsane bita nol ing wiwitan kunci utama wis diidentifikasi, sing bisa digunakake tinimbang ngukur latensi petungan sing tepat.

Source: opennet.ru

Add a comment