Penamatan sijil akar AddTrust menyebabkan ranap sistem OpenSSL dan GnuTLS

Pada 30 Mei, tempoh sah 20 tahun sijil akar telah tamat AddTrustYang digunakan untuk menjana sijil ditandatangani silang salah satu pihak berkuasa pensijilan terbesar Sectigo (Comodo). Tandatangan silang dibenarkan untuk keserasian dengan peranti lama yang tidak mempunyai sijil akar USERTRust baharu yang ditambahkan pada stor sijil akarnya.

Penamatan sijil akar AddTrust menyebabkan ranap sistem OpenSSL dan GnuTLS

Secara teorinya, penyahaktifan sijil akar AddTrust hanya akan menyebabkan kerosakan dalam keserasian dengan sistem legasi (Android 2.3, Windows XP, Mac OS X 10.11, iOS 9, dll.), memandangkan sijil akar kedua yang digunakan dalam tandatangan silang kekal sah dan pelayar moden mengambil kiranya semasa mengesahkan rantaian kepercayaan. Dalam praktiknya muncul Masalah dengan pengesahan tandatangan silang dalam pelanggan TLS bukan penyemak imbas, termasuk yang berdasarkan OpenSSL 1.0.x dan GnuTLS. Sambungan selamat tidak lagi diwujudkan dengan ralat yang menunjukkan bahawa sijil sudah lapuk jika pelayan menggunakan sijil Sectigo yang dipautkan oleh rantai amanah kepada sijil akar AddTrust.

Jika pengguna penyemak imbas moden tidak menyedari keusangan sijil akar AddTrust semasa memproses sijil Sectigo yang ditandatangani silang, maka masalah mula timbul dalam pelbagai aplikasi pihak ketiga dan pengendali bahagian pelayan, yang membawa kepada pelanggaran bekerja banyak infrastruktur yang menggunakan saluran komunikasi yang disulitkan untuk interaksi antara komponen.

Sebagai contoh, terdapat masalah dengan akses kepada beberapa repositori pakej dalam Debian и Ubuntu (apt mula mengembalikan ralat pengesahan sijil), permintaan skrip menggunakan utiliti "curl" dan "wget" mula gagal, ralat diperhatikan semasa menggunakan Git, dilanggar Platform penstriman Roku berfungsi, pengendali tidak lagi dipanggil Jalur и DataDog, bermula ranap berlaku dalam aplikasi Heroku, berhenti Pelanggan OpenLDAP menyambung, masalah dengan menghantar mel ke pelayan SMTPS dan SMTP dengan STARTTLS dikesan. Di samping itu, masalah diperhatikan dalam pelbagai skrip Ruby, PHP dan Python yang menggunakan modul dengan klien http. Masalah penyemak imbas mempengaruhi Epiphany, yang berhenti memuatkan senarai sekatan iklan.

Program Go tidak terjejas oleh masalah ini kerana Go menawarkan pelaksanaan sendiri TLS.

Ia telah diandaikan, bahawa masalah tersebut menjejaskan keluaran pengedaran yang lebih lama (termasuk Debian 9, Ubuntu 16.04, RHEL 6/7) yang menggunakan cawangan OpenSSL yang bermasalah, tetapi masalahnya terzahir sendiri juga semasa menjalankan pengurus pakej APT dalam keluaran semasa Debian 10 dan Ubuntu 18.04/20.04 April, kerana APT menggunakan pustaka GnuTLS. Masalahnya ialah banyak pustaka TLS/SSL menghuraikan sijil sebagai rantai linear, manakala menurut RFC 4158, sijil boleh mewakili graf kitaran teragih terarah dengan berbilang sauh kepercayaan yang perlu dipertimbangkan. Isu ini ditangani dalam OpenSSL dan GnuTLS. было diketahui selama bertahun-tahun sekarang. Dalam OpenSSL masalah telah dibetulkan dalam cawangan 1.1.1, dan dalam gnuTLS tinggal tidak diperbetulkan.

Sebagai penyelesaian, adalah dicadangkan untuk mengalih keluar sijil "AddTrust External CA Root" daripada stor sistem (contohnya, alih keluar daripada /etc/ca-certificates.conf dan /etc/ssl/certs, dan kemudian jalankan "update-ca -certificates -f -v"), selepas itu OpenSSL mula biasanya memproses sijil ditandatangani silang dengan penyertaannya. Apabila menggunakan pengurus pakej APT, anda boleh melumpuhkan pengesahan sijil untuk permintaan individu atas risiko anda sendiri (contohnya, “apt-get update -o Acquire::https::download.jitsi.org::Verify-Peer=false”) .

Untuk menyekat masalah dalam Fedora и RHEL Adalah dicadangkan untuk menambah sijil AddTrust ke senarai hitam:

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
ekstrak kemas kini-ca-trust

Tetapi kaedah ini tidak berfungsi untuk GnuTLS (contohnya, ralat pengesahan sijil terus muncul semasa menjalankan utiliti wget).

Di bahagian pelayan anda boleh untuk berubah perintah menyenaraikan sijil dalam rantaian amanah yang dihantar oleh pelayan kepada pelanggan (jika sijil yang dikaitkan dengan "AddTrust External CA Root" dialih keluar daripada senarai, maka pengesahan pelanggan akan berjaya). Untuk menyemak dan menjana rantaian kepercayaan baharu, anda boleh menggunakan perkhidmatan tersebut whatsmychaincert.com. Sectigo juga disediakan sijil perantara yang ditandatangani silang alternatif "Perkhidmatan Sijil AAA“, yang akan sah sehingga 2028 dan akan mengekalkan keserasian dengan versi OS yang lebih lama.

Tambahan: Masalah juga muncul dalam LibreSSL.

Sumber: opennet.ru

Beli pengehosan yang boleh dipercayai untuk tapak dengan perlindungan DDoS, pelayan VPS VDS 🔥 Beli pengehosan laman web yang boleh dipercayai dengan perlindungan DDoS, pelayan VPS VDS | ProHoster