Pasenęs „AddTrust“ šakninis sertifikatas sukelia „OpenSSL“ ir „GnuTLS“ sistemų strigtis

30 metų šakninio sertifikato galiojimas baigėsi gegužės 20 d AddTrustKuris taikomos už kryžminio parašo (kryžminio parašo) formavimą vieno didžiausių sertifikavimo centrų Sectigo (Comodo) sertifikatuose. Kryžminis pasirašymas leido suderinti su senais įrenginiais, kurių šakniniame sertifikate nebuvo pridėtas naujas USERTRust šakninis sertifikatas.

Pasenęs „AddTrust“ šakninis sertifikatas sukelia „OpenSSL“ ir „GnuTLS“ sistemų strigtis

Teoriškai „AddTrust“ šakninio sertifikato nutraukimas turėtų sukelti tik suderinamumo su senomis sistemomis („Android 2.3“, „Windows XP“, „Mac OS X 10.11“, „iOS 9“ ir kt.) pažeidimą, nes lieka antrasis šakninis sertifikatas, naudojamas kryžminiam pasirašymui. atitinkamos ir modernios naršyklės į tai atsižvelgia tikrindamos pasitikėjimo grandinę. Apie praktiką pasirodė problemų, susijusių su kryžminio parašo patvirtinimu ne naršyklės TLS klientuose, įskaitant tuos, kurie pagrįsti OpenSSL 1.0.x ir GnuTLS. Saugus ryšys nepavyksta dėl sertifikato galiojimo pabaigos klaidos, jei serveris naudoja Sectigo sertifikatą, susietą su AddTrust šakniniu sertifikatu.

Jei šiuolaikinių naršyklių naudotojai nepastebėjo AddTrust šakninio sertifikato senėjimo apdorodami kryžminiu parašu pasirašytus Sectigo sertifikatus, tada įvairiose trečiųjų šalių programose ir serverių tvarkyklėse ėmė iškilti problemos, dėl kurių pažeidimas dirbti daug infrastruktūrų, naudojančių užšifruotus ryšio kanalus sąveikai tarp komponentų.

Pavyzdžiui, buvo problemos turint prieigą prie kai kurių paketų saugyklų „Debian“ ir „Ubuntu“ (apt pradėjo duoti sertifikato patvirtinimo klaidą), prieiga iš scenarijų naudojant „curl“ ir „wget“ komunalines paslaugas pradėjo žlugti, buvo pastebėtos klaidos naudojant „Git“, pažeistas Roku transliacijos platforma veikia, tvarkytojai nustojo skambinti Juostelių и DataDog, prasidėjo įvyksta avarijos Heroku programose, sustojo prijungti OpenLDAP klientus, problemos, susijusios su laiškų siuntimu į SMTPS ir SMTP serverius su STARTTLS, yra ištaisytos. Be to, yra problemų su įvairiais Ruby, PHP ir Python scenarijais, kurie naudoja http kliento modulį. Dėl naršyklės problemos paveikia Epiphany, kuri nustojo įkelti skelbimų blokavimo sąrašus.

„Go“ programoms problema neturi įtakos, kaip siūlo „Go“. savo įgyvendinimą TLS.

Buvo manomakad problema turi įtakos senesniems platinimo leidimams (įskaitant Debian 9, Ubuntu 16.04, RHEL 6/7), kurios naudoja problemines OpenSSL šakas, tačiau problema pasirodė taip pat paleidžiant APT paketų tvarkyklę dabartiniuose Debian 10 ir Ubuntu 18.04/20.04 leidimuose, nes APT naudoja GnuTLS biblioteką. Problemos esmė yra ta, kad daugelis TLS / SSL bibliotekų analizuoja sertifikatą kaip linijinę grandinę, o pagal RFC 4158 sertifikatas gali būti nukreiptas paskirstytas ciklinis grafikas su keliais patikimumo inkarais, į kuriuos reikia atsižvelgti. Apie šį OpenSSL ir GnuTLS trūkumą ji buvo žinomas daugelį metų. „OpenSSL“ problema buvo išspręsta 1.1.1 šakoje ir „GnuTLS“ lieka nepataisyta.

Kaip problemos sprendimo būdą, siūloma pašalinti „AddTrust External CA Root“ sertifikatą iš sistemos saugyklos (pavyzdžiui, pašalinti jį iš /etc/ca-certificates.conf ir /etc/ssl/certs, o tada paleiskite "update-ca-certificates -f -v"), po kurio OpenSSL pradeda apdoroti paprastai kryžmiškai pasirašytus sertifikatus su savo dalyvavimu. Naudodami APT paketų tvarkyklę savo rizika galite išjungti sertifikatų tikrinimą atskiroms užklausoms (pvz., „apt-get update -o Acquire::https::download.jitsi.org::Verify-Peer=false“). ).

Norėdami užblokuoti problemą Minkšta fetrinė skrybėlė и RHEL „AddTrust“ sertifikatą siūloma įtraukti į juodąjį sąrašą:

trust dump —filter «pkcs11:id=%AD%BD%98%7A%34%B4%26%F7%FA%C4%26%54%EF%03%BD%E0%24%CB%54%1A;type=cert» \
> /etc/pki/ca-trust/source/blacklist/addtrust-external-root.p11-kit
update-ca-trust ekstraktas

Tačiau šis metodas neveikia skirtas GnuTLS (pavyzdžiui, paleidžiant wget įrankį nuolat gauna sertifikato patvirtinimo klaidą).

Serverio pusėje galite pakeisti užsakymas sertifikatų sąrašas patikimumo grandinėje, kurį serveris siunčia klientui (jei sertifikatas, susietas su "AddTrust External CA Root" yra pašalintas iš sąrašo, kliento patvirtinimas bus sėkmingas). Norėdami patikrinti ir sukurti naują pasitikėjimo grandinę, galite naudoti paslaugą whatsmychaincert.com. Sectigo taip pat jeigu alternatyvus kryžminiu parašu pasirašytas tarpinis sertifikatas "AAA sertifikavimo paslaugos“, kuris galios iki 2028 m. ir leis išlaikyti suderinamumą su senesnėmis OS versijomis.

Papildymas: Problema taip pat yra pasirodo LibreSSL.

Šaltinis: opennet.ru

Добавить комментарий