AddTrusti juuresertifikaadi aegumine põhjustas tõrkeid süsteemides, kus on kasutusel OpenSSL ja GnuTLS.

30. mai lõppes 20-aastane AddTrusti juuresertifikaadi kehtivusaeg AddTrust, mis IRC-d, mis peeti tõsiseks takistuseks uute tulijate arutlustesse kaasamisel. Samuti on märgitud, et IRC protokoll on moraalselt ja tehniliselt vananenud, mistõttu ei ole see tänapäeval nii mugav kui sooviks, tihti blokeeritakse tulemüürides ja see ei paku piisavaid tööriistu rämpsposti ja suhtlemisnormide rikkumiste kaitsmiseks. ühe suurima sertifitseerimiskeskuse Sectigo (Comodo) sertifikaatidesse ristallkiri (cross-signed) genereerimiseks. Ristallkiri tagas ühilduvuse aegunud seadmetega, milles ei olnud uut USERTrusti juuresertifikaati lisatud.

AddTrusti juuresertifikaadi aegumine põhjustas tõrkeid süsteemides, kus on kasutusel OpenSSL ja GnuTLS.

Teoreetiliselt pidi AddTrusti juuresertifikaadi kehtivuse lõpp tooma kaasa vaid ühilduvuse katkemise aegunud süsteemidega (Android 2.3, Windows XP, Mac OS X 10.11, iOS 9 jne), sest teine juuresertifikaat, mida ristallkirjas kasutatakse, jääb kehtima ja kaasaegsed brauserid arvestavad sellega usaldusketi kontrollimisel. Practikas leiti probleeme ristallkirjade kontrollimisel TLS-klientides, sealhulgas OpenSSL 1.0.x ja GnuTLS põhistes. Turvaline ühendus ei hakanud enam töötama, kui serveris kasutati AddTrusti juuresertifikaadiga seotud Sectigo sertifikaati, mis tõi esile vea sertifikaadi aegumise kohta.

Kui kaasaegsete brauserite kasutajad ei märganud AddTrust'i juuresertifikaadi aegumist ristallkirjastatud Sectigo sertifikaate töödeldes, siis erinevates kolmandate osapoolte rakendustes ja serverite töötlejatest hakkasid ilmuma probleemid, mis tõid kaasa rikkumine paljude infrastruktuuride töö katkemise, mis kasutavad krüpteeritud sidekanaleid komponentide vahelise suhtlemise jaoks.

Näiteks esines probleeme probleeme juurdepääsuga teatud paketirepositoridele Debianis ja Ubuntu (apt hakkas andma sertifikaadi kontrollimise vea), skriptide väljakutsed läbi utiliitide 'curl' ja 'wget' kukkusid läbi, ilmnesid vead Gitiga töötamisel, katkes Roku striimimise platvormi töö, töötlejad lakkasid tööst Stripe ja DataDog, hakkasid toimuma kokkuvarisemised Heroku rakendustes, lakkasid ühenduma OpenLDAP kliendid, ilmnesid probleemid SMTPS ja SMTP serveritele posti saatmisel STARTTLS-iga. Lisaks ilmnesid probleemid erinevates Ruby-, PHP- ja Python-skriptides, mis kasutasid http-klientide moodulit. Brauserites puudutab Epiphany, kus reklaamiblokeerimise nimekirjad ei hakanud enam laadima.

Go keeles kirjutatud programmid ei ole selle probleemi all, kuna Go pakub omatehtud TLS.

Oletati, et probleem mõjutab vanade distributsioonide väljaandeid (sealhulgas Debian 9, Ubuntu 16.04, RHEL 6/7) milles kasutatakse probleemseid OpenSSL harusid, kuid probleem ilmnes ka APT paketihalduri töös, käesolevate Debian 10 ja Ubuntu 18.04/20.04 väljaannetes, kuna APT kasutab GnuTLS'i teeki. Probleemi olemus seisneb selles, et paljud TLS/SSL teegid tõlgendavad sertifikaati kui lineaarselt ahelat, samas kui vastavalt RFC 4158-le võib sertifikaat esindada suunatud jaotatud tsüklit ja mitmeid usaldusväärsuse tugipunkte, mida tuleb arvestada. Sellest probleemist OpenSSL-is ja GnuTLS-is oli teada on räägitud juba aastaid.OpenSSL-is oli probleem lahendatud harus 1.1.1, kuid GnuTLS jäänud veel parandatud.

lahendusena probleemide kõrvaldamiseks soovitatakse eemaldada süsteemi sertifikaadihoidlast sertifikaat 'AddTrust External CA Root' (nt eemaldada failidest /etc/ca-certificates.conf ja /etc/ssl/certs, seejärel käivitada 'update-ca-certificates -f -v'), pärast mida OpenSSL hakkab normaalselt töötlema ristallkirjastatud sertifikaate. Kasutades APT paketihaldurit on oma riskil võimalik teatud päringute puhul sertifikaatide kontrollimine keelata (nt 'apt-get update -o Acquire::https::download.jitsi.org::Verify-Peer=false').

Probleemi blokeerimiseks Fedora ja RHEL soositakse lisada AddTrust sertifikaat musta nimekirja:

usaldusdump —filter «pkcs11:id=;type=cert»
> /etc/pki/ca-trust/source/blacklist/addtrust-external-root.p11-kit
update-ca-trust extract

Kuid see meetod ei toimi GnuTLS'i puhul ei lahenda probleemi (nt 'wget' rakenduse käivitamisel jätkuvalt esitatakse sertifikaadi kontrollimise viga).

Serveripoolt saab muuta sertifikaatide esitlemise järjekorda usaldusketis, mida server saadab kliendile (kui 'AddTrust External CA Root' sertifikaat eemaldatakse loendist, läbib klient kontrolli edukalt). Uue usaldusketi kontrollimiseks ja genereerimiseks võib kasutada teenust whatsmychaincert.com. Sectigo samuti pakkus alternatiivse ristallkirjastatud vahe-sertifikaadi 'AAA Certificate Services'', mis kehtib kuni 2028. aastani ja aitab säilitada ühilduvuse vanemate operatsioonisüsteemide versioonidega.

Lisa: Probleem puudutab ka LibreSSL. näitab ennast LibreSSL-is.

Allikas: opennet.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster