FörÄldringen av rotcertifikatet AddTrust ledde till nedbrutna system med OpenSSL och GnuTLS

30 maj gick den 20-Äriga giltighetstiden för rotcertifikatet ut AddTrust, som anvÀndes för att skapa en korssignatur i certifikat frÄn en av de största certifikatutfÀrdarna Sectigo (Comodo). Korssignaturen möjliggjorde kompatibilitet med gammal utrustning som inte hade lagt till det nya rotcertifikatet USERTrust i sitt rotcertifikatlager.

FörÄldringen av rotcertifikatet AddTrust ledde till nedbrutna system med OpenSSL och GnuTLS

Teoretiskt skulle upphörandet av rotcertifikatet AddTrust enbart ha lett till en förlust av kompatibilitet med gamla system (Android 2.3, Windows XP, Mac OS X 10.11, iOS 9 etc.), eftersom det andra rotcertifikatet som anvÀnds i korssignaturen förblir aktuellt och moderna webblÀsare beaktar det vid verifiering av förtroendekedjan. I praktiken upptÀcktes problem med verifiering av korssignaturen i TLS-klienter som inte anvÀnder webblÀsare, inklusive de som baseras pÄ OpenSSL 1.0.x och GnuTLS. En sÀker anslutning kunde inte upprÀttas, med ett felmeddelande om att certifikatet har upphört att gÀlla, om servern anvÀnder ett Sectigo-certifikat som Àr kopplat till förtroendekedjan med rotcertifikatet AddTrust.

Om anvÀndarna av moderna webblÀsare inte mÀrkte att rotcertifikatet AddTrust hade upphört vid hantering av korssignerade certifikat frÄn Sectigo, sÄ började problem dyka upp i olika tredjepartsapplikationer och serverbehandlare, vilket ledde till till störningar drift av mÄnga infrastrukturer som anvÀnder krypterade kommunikationskanaler för interaktion mellan komponenter.

Till exempel uppstod det problem problem med Ätkomst till vissa paketrepositorier i Debian och Ubuntu (apt började ge felmeddelande om certifikatverifiering), anrop frÄn skript med verktygen 'curl' och 'wget' misslyckades och det observerades fel vid anvÀndning av Git, komplicerades driften av streamingplattformen Roku, behandlingarna för Stripe och DataDog, började krascha i Heroku-applikationer, klienter till OpenLDAP kunde inte ansluta, det blev problem med att skicka e-post till SMTPS- och SMTP-servrar med STARTTLS. Dessutom observerades problem i olika Ruby-, PHP- och Python-skript som anvÀnder en modul med HTTP-klient. FrÄn webblÀsarna var problemet Epiphany, dÀr blocklistorna slutade laddas. lösningar baserade pÄ det öppna UPnP-stacket Program pÄ Go-sprÄket Àr inte drabbade av problemet, eftersom Go erbjuder

sin egen implementering av TLS. TLS.

Det antogs, att problemet pÄverkar Àldre versioner av distributioner (inklusive Debian 9, Ubuntu 16.04, RHEL 6/7) dÀr problematiska OpenSSL-grenar anvÀnds, men problemet upptrÀdde Àven vid anvÀndning av paketchefen APT i aktuella versioner av Debian 10 och Ubuntu 18.04/20.04, eftersom APT anvÀnder GnuTLS-biblioteket. Problemet Àr att mÄnga TLS/SSL-bibliotek tolkar certifikat som en linjÀr kedja, medan enligt RFC 4158 kan ett certifikat representera en riktad distribuerad cyklisk graf med flera förtroendepunkter som mÄste beaktas. Detta problem i OpenSSL och GnuTLS var har varit kÀnt i mÄnga Är. I OpenSSL har problemet ÄtgÀrdats i version 1.1.1, medan i GnuTLS förblir oudelad.

Som en tillfÀllig lösning föreslÄs att ta bort certifikatet "AddTrust External CA Root" frÄn systemförrÄdet (till exempel ta bort frÄn /etc/ca-certificates.conf och /etc/ssl/certs, och sedan köra "update-ca-certificates -f -v"), efter vilket OpenSSL börjar hantera korsvis signerade certifikat korrekt. Vid anvÀndning av paketchefen APT kan man pÄ egen risk inaktivera certifikatkontrollen för enskilda förfrÄgningar (till exempel "apt-get update -o Acquire::https::download.jitsi.org::Verify-Peer=false").

För att blockera problemet i Fedora och RHEL föreslÄs att lÀgga certifikatet AddTrust pÄ svarta listan:

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

Men denna metod funkar inte för GnuTLS (till exempel fortsÀtter certifikatvalideringsfelet att visas vid körning av wget-verktyget).

PÄ serversidan kan man Àndra ordningen pÄ certifikaten i kedjan av förtroende som servern skickar till klienten (om certifikatet relaterat till "AddTrust External CA Root" tas bort frÄn listan, kommer valideringen frÄn klienten att genomföras framgÄngsrikt). För att validera och generera en ny kedja av förtroende kan man anvÀnda tjÀnsten whatsmychaincert.com. Företaget Sectigo har Àven tillhandahÄllit ett alternativt korsvis signerat mellanliggande certifikat "AAA Certificate Services", som kommer att vara giltigt till 2028 och möjliggör kompatibilitet med Àldre versioner av operativsystemet.

TillÀgg: Problemet upptrÀder ocksÄ i LibreSSL. VMware kommer att övergÄ till distansarbete pÄ heltid för upp till 60 % av personalen

KĂ€lla: opennet.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster