AddTrust արմատային վկայագրի հնացումը առաջացնում է խափանումներ OpenSSL և GnuTLS համակարգերում
Մայիսի 30-ին լրացել է արմատային վկայագրի գործողության 20-ամյա ժամկետը AddTrust- ըՈրը դիմել է ստեղծել Sectigo (Comodo) սերտիֆիկացման խոշորագույն մարմիններից մեկի խաչաձև ստորագրված վկայականները: Խաչաձև ստորագրումը թույլ տվեց համատեղելիություն հին սարքերի հետ, որոնց արմատային վկայականների պահեստում ավելացված չէ USERTRust-ի նոր արմատային վկայագիրը:
Տեսականորեն, AddTrust արմատային վկայագրի դադարեցումը պետք է հանգեցնի միայն հին համակարգերի հետ համատեղելիության խախտման (Android 2.3, Windows XP, Mac OS X 10.11, iOS 9 և այլն), քանի որ խաչաձև ստորագրության մեջ օգտագործված երկրորդ արմատային վկայագիրը մնում է: վավեր և ժամանակակից բրաուզերները դա հաշվի են առնում վստահության շղթան ստուգելիս: Գործնականում հայտնվեց Խնդիրներ խաչաձև ստորագրության հաստատման հետ կապված ոչ զննարկիչ TLS սպասառուներում, ներառյալ OpenSSL 1.0.x-ի և GnuTLS-ի վրա հիմնվածները: Ապահով կապն այլևս չի հաստատվում սխալմամբ, որը ցույց է տալիս, որ վկայագիրը հնացած է, եթե սերվերն օգտագործում է Sectigo վկայական, որը կապված է վստահության շղթայով AddTrust արմատային վկայագրի հետ:
Եթե ժամանակակից բրաուզերների օգտատերերը չնկատեցին AddTrust արմատային վկայագրի հնացածությունը խաչաձև ստորագրված Sectigo վկայագրերը մշակելիս, ապա խնդիրներ սկսեցին ի հայտ գալ տարբեր երրորդ կողմի հավելվածներում և սերվերի կողմի մշակիչներում, ինչը հանգեցրեց. խախտումաշխատել շատ ենթակառուցվածքներ, որոնք օգտագործում են գաղտնագրված կապի ուղիները բաղադրիչների միջև փոխգործակցության համար:
Օրինակ՝ կային խնդիրներ Debian-ում և Ubuntu-ում փաթեթների որոշ պահեստարաններ մուտք գործելու դեպքում (բնությունը սկսեց ստեղծել վկայականի ստուգման սխալ), «curl» և «wget» կոմունալ ծառայություններն օգտագործող սկրիպտներից հարցումները սկսեցին ձախողվել, սխալներ են նկատվել Git-ն օգտագործելիս, խախտվել է Roku հոսքային հարթակն աշխատում է, մշակողներն այլևս չեն կանչվում Շերտագիծ и DataDog, սկսվեց տեղի են ունենում վթարներ Heroku հավելվածներում, կանգ առավ OpenLDAP-ի սպասառուները միանում են, հայտնաբերվում են STARTTLS-ով SMTPS և SMTP սերվերներ նամակներ ուղարկելու հետ կապված խնդիրներ: Բացի այդ, խնդիրներ են նկատվում Ruby, PHP և Python տարբեր սկրիպտներում, որոնք օգտագործում են http հաճախորդի հետ մոդուլ։ Բրաուզերի խնդիր ազդում է Epiphany-ը, որը դադարեցրեց գովազդի արգելափակման ցուցակների բեռնումը:
Go ծրագրերի վրա այս խնդիրը չի ազդում, քանի որ Go-ն առաջարկում է սեփական իրականացում TLS.
Ենթադրվում էրոր խնդիրն ազդում է ավելի հին բաշխման թողարկումների վրա (ներառյալ Debian 9, Ubuntu 16.04, RHEL 6/7) որոնք օգտագործում են խնդրահարույց OpenSSL ճյուղեր, բայց խնդիրը դրսևորվել է նաև, երբ APT փաթեթի կառավարիչը աշխատում է Debian 10-ի և Ubuntu 18.04/20.04-ի ընթացիկ թողարկումներում, քանի որ APT-ն օգտագործում է GnuTLS գրադարանը: Խնդիրի էությունը կայանում է նրանում, որ TLS/SSL գրադարաններից շատերը վկայականը վերլուծում են որպես գծային շղթա, մինչդեռ RFC 4158-ի համաձայն՝ վկայագիրը կարող է ներկայացնել ուղղորդված բաշխված շրջանաձև գրաֆիկ մի քանի վստահելի խարիսխներով, որոնք պետք է հաշվի առնել: OpenSSL-ի և GnuTLS-ի այս թերության մասին էրհայտնի էերկար տարիների ընթացքում. OpenSSL-ում խնդիրը շտկվել է 1.1.1 ճյուղում, իսկ մեջ gnuTLS մնում է չուղղված.
Որպես լուծում, առաջարկվում է հեռացնել «AddTrust External CA Root» վկայագիրը համակարգի պահոցից (օրինակ՝ հեռացնել /etc/ca-certificates.conf և /etc/ssl/certs-ից, այնուհետև գործարկել «update-ca»: -վկայականներ -f -v"), որից հետո OpenSSL-ը սկսում է իր մասնակցությամբ սովորաբար մշակել խաչաձև ստորագրված վկայագրերը: APT փաթեթի կառավարիչից օգտվելիս դուք կարող եք անջատել վկայագրի ստուգումը առանձին հարցումների համար ձեր ռիսկով (օրինակ՝ «apt-get update -o Acquire::https::download.jitsi.org::Verify-Peer=false») .
Խնդիրը արգելափակելու համար Fedora и RHEL- ը Առաջարկվում է ավելացնել AddTrust վկայագիրը սև ցուցակում.
Բայց այս մեթոդը չգործող GnuTLS-ի համար (օրինակ, վկայագրի ստուգման սխալը շարունակում է հայտնվել wget կոմունալ ծրագիրը գործարկելիս):
Սերվերի կողմից դուք կարող եք փոխելկարգը սերվերի կողմից հաճախորդին ուղարկված վստահության շղթայում վկայագրերի ցանկը (եթե «AddTrust External CA Root»-ի հետ կապված վկայականը հանվի ցանկից, ապա հաճախորդի ստուգումը հաջող կլինի): Վստահության նոր շղթա ստուգելու և առաջացնելու համար կարող եք օգտվել ծառայությունից whatsmychaincert.com. Sectigo նույնպես предоставила այլընտրանքային խաչաձև ստորագրված միջանկյալ վկայական»AAA վկայագրի ծառայություններ«, որը կգործի մինչև 2028 թվականը և կպահպանի համատեղելիությունը ՕՀ-ի հին տարբերակների հետ։
Հավելում. Խնդիր նույնպես դրսեւորվում է LibreSSL-ում: