Մայիսի 30-ին լրացել է արմատային վկայագրի գործողության 20-ամյա ժամկետը Որը ստեղծել Sectigo (Comodo) սերտիֆիկացման խոշորագույն մարմիններից մեկի խաչաձև ստորագրված վկայականները: Խաչաձև ստորագրումը թույլ տվեց համատեղելիություն հին սարքերի հետ, որոնց արմատային վկայականների պահեստում ավելացված չէ USERTRust-ի նոր արմատային վկայագիրը:
Տեսականորեն, AddTrust root վկայագրի անջատումը պետք է հանգեցնի միայն ժառանգական համակարգերի հետ համատեղելիության խզման (Android 2.3, Windows XP, Mac OS X 10.11, iOS 9 և այլն), քանի որ խաչաձև ստորագրության մեջ օգտագործված երկրորդ արմատային վկայականը մնում է վավեր, և ժամանակակից զննարկիչները այն հաշվի են առնում վստահության շղթան ստուգելիս։ Գործնականում Խնդիրներ խաչաձև ստորագրության հաստատման հետ կապված ոչ զննարկիչ TLS սպասառուներում, ներառյալ OpenSSL 1.0.x-ի և GnuTLS-ի վրա հիմնվածները: Ապահով կապն այլևս չի հաստատվում սխալմամբ, որը ցույց է տալիս, որ վկայագիրը հնացած է, եթե սերվերն օգտագործում է Sectigo վկայական, որը կապված է վստահության շղթայով AddTrust արմատային վկայագրի հետ:
Եթե ժամանակակից բրաուզերների օգտատերերը չնկատեցին AddTrust արմատային վկայագրի հնացածությունը խաչաձև ստորագրված Sectigo վկայագրերը մշակելիս, ապա խնդիրներ սկսեցին ի հայտ գալ տարբեր երրորդ կողմի հավելվածներում և սերվերի կողմի մշակիչներում, ինչը հանգեցրեց. շատ ենթակառուցվածքներ, որոնք օգտագործում են գաղտնագրված կապի ուղիները բաղադրիչների միջև փոխգործակցության համար:
Օրինակ՝ կային որոշ փաթեթների պահոցների հասանելիությամբ Debian и Ubuntu (apt-ը սկսեց վերադարձնել վկայականի ստուգման սխալ), «curl» և «wget» կոմունալ ծառայություններն օգտագործող սկրիպտային հարցումները սկսեցին ձախողվել, սխալներ նկատվեցին Git-ն օգտագործելիս, Roku հոսքային հարթակն աշխատում է, մշակողներն այլևս չեն կանչվում и , սկսվեց Heroku հավելվածներում, OpenLDAP-ի սպասառուները միանում են, հայտնաբերվում են STARTTLS-ով SMTPS և SMTP սերվերներ նամակներ ուղարկելու հետ կապված խնդիրներ: Բացի այդ, խնդիրներ են նկատվում Ruby, PHP և Python տարբեր սկրիպտներում, որոնք օգտագործում են http հաճախորդի հետ մոդուլ։ Բրաուզերի խնդիր Epiphany-ը, որը դադարեցրեց գովազդի արգելափակման ցուցակների բեռնումը:
Go ծրագրերի վրա այս խնդիրը չի ազդում, քանի որ Go-ն առաջարկում է TLS.
որ խնդիրը ազդում է բաշխումների ավելի հին թողարկումների վրա (ներառյալ Debian 9, Ubuntu 16.04, ) որոնք օգտագործում են խնդրահարույց OpenSSL ճյուղեր, բայց խնդիրը նաև APT փաթեթների կառավարիչը ընթացիկ թողարկումներում գործարկելիս Debian 10 եւ Ubuntu Ապրիլի 18.04/20.04-ը, քանի որ APT-ն օգտագործում է GnuTLS գրադարանը: Խնդիրն այն է, որ շատ TLS/SSL գրադարաններ վկայականը վերլուծում են որպես գծային շղթա, մինչդեռ RFC 4158-ի համաձայն, վկայականը կարող է ներկայացնել ուղղորդված բաշխված ցիկլիկ գրաֆ՝ բազմաթիվ վստահության խարիսխներով, որոնք պետք է հաշվի առնվեն: Այս խնդիրը լուծվում է OpenSSL-ում և GnuTLS-ում: . OpenSSL-ում խնդիրը շտկվել է 1.1.1 ճյուղում, իսկ մեջ մնում է .
Որպես լուծում, առաջարկվում է հեռացնել «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») .
Խնդիրը արգելափակելու համար и Առաջարկվում է ավելացնել AddTrust վկայագիրը սև ցուցակում.
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 քաղվածք
Բայց այս մեթոդը GnuTLS-ի համար (օրինակ, վկայագրի ստուգման սխալը շարունակում է հայտնվել wget կոմունալ ծրագիրը գործարկելիս):
Սերվերի կողմից դուք կարող եք սերվերի կողմից հաճախորդին ուղարկված վստահության շղթայում վկայագրերի ցանկը (եթե «AddTrust External CA Root»-ի հետ կապված վկայականը հանվի ցանկից, ապա հաճախորդի ստուգումը հաջող կլինի): Վստահության նոր շղթա ստուգելու և առաջացնելու համար կարող եք օգտվել ծառայությունից . Sectigo նույնպես այլընտրանքային խաչաձև ստորագրված միջանկյալ վկայական»«, որը կգործի մինչև 2028 թվականը և կպահպանի համատեղելիությունը ՕՀ-ի հին տարբերակների հետ։
Հավելում. Խնդիր նույնպես LibreSSL-ում:
Source: opennet.ru
