Mozilla ngetrapake CRLite kanggo mriksa sertifikat TLS sing bermasalah

Perusahaan Mozilla diumumake babagan wiwitan tes ing Firefox saben wengi, mekanisme anyar kanggo ndeteksi sertifikat sing dicabut - CRLite. CRLite ngidini sampeyan ngatur pamriksa panjabutan sertifikat sing efektif marang basis data sing di-host ing sistem pangguna. implementasi CRLite Mozilla diterbitake ing free lisènsi MPL 2.0. Kode kanggo ngasilake database lan komponen server ditulis ing Python lan Go. Bagian klien ditambahake menyang Firefox kanggo maca data saka database disiapake ing basa Rust.

Verifikasi sertifikat nggunakake layanan eksternal adhedhasar protokol sing isih digunakake OCSP (Protokol Status Sertifikat Online) mbutuhake akses jaringan sing dijamin, ndadΓ©kakΓ© wektu tundha sing signifikan ing pangolahan panjalukan (rata-rata 350ms) lan duwe masalah kanggo njamin kerahasiaan (server OCSP sing nanggapi panjaluk nampa informasi babagan sertifikat tartamtu, sing bisa digunakake kanggo ngadili apa situs sing dibukak pangguna). Ana uga kamungkinan mriksa lokal marang dhaptar C.R.L. (Dhaptar Pembatalan Sertifikat), nanging kerugian saka metode iki yaiku ukuran data sing diundhuh sing gedhe banget - saiki database sertifikat sing dicabut manggoni babagan 300 MB lan terus berkembang.

Kanggo mblokir sertifikat sing wis dikompromi lan dicabut dening panguwasa sertifikasi, Firefox wis nggunakake dhaptar ireng terpusat wiwit 2015. OneCRL ing kombinasi karo telpon kanggo layanan Browsing Aman Google kanggo ngenali kemungkinan kegiatan angkoro. OneCRL, kaya CRLSets ing Chrome, tumindak minangka link penengah sing aggregates dhaftar CRL saka panguwasa sertifikasi lan menehi siji layanan OCSP terpusat kanggo mriksa sertifikat revoked, nggawe iku bisa ora kanggo ngirim panjalukan langsung kanggo panguwasa sertifikasi. Sanajan akeh karya kanggo nambah linuwih layanan verifikasi sertifikat online, data telemetri nuduhake manawa luwih saka 7% OCSP njaluk wektu metu (sawetara taun kepungkur, angka iki 15%).

Kanthi gawan, yen ora bisa verifikasi liwat OCSP, browser nganggep sertifikat kasebut sah. Layanan kasebut bisa uga ora kasedhiya amarga masalah jaringan lan watesan ing jaringan internal, utawa diblokir dening panyerang - kanggo ngliwati pemeriksaan OCSP sajrone serangan MITM, cukup mblokir akses menyang layanan mriksa. Sebagian kanggo nyegah serangan kasebut, teknik wis ditindakake Wajib - Pokok, sing ngidini sampeyan nambani kesalahan akses OCSP utawa ora kasedhiya OCSP minangka masalah karo sertifikat, nanging fitur iki opsional lan mbutuhake registrasi khusus sertifikat.

CRLite ngidini sampeyan nggabungake informasi lengkap babagan kabeh sertifikat sing dicabut dadi struktur sing gampang dianyari, mung ukuran 1 MB, sing ndadekake bisa nyimpen database CRL lengkap ing sisih klien.
Browser bakal bisa nyinkronake salinan data babagan sertifikat sing dicabut saben dina, lan database iki bakal kasedhiya ing kahanan apa wae.

CRLite nggabungke informasi saka Sertifikat Transparansi, log umum kabeh sertifikat sing ditanggepi lan dicabut, lan asil sertifikat scan ing Internet (macem-macem dhaptar CRL panguwasa sertifikasi diklumpukake lan informasi babagan kabeh sertifikat sing dikenal dikumpulake). Data dikemas kanthi nggunakake cascading Saringan Bloom, struktur probabilistik sing ngidini deteksi palsu saka unsur ilang, nanging ora kalebu omission saka unsur ana (i.e., karo kemungkinan tartamtu, positif palsu kanggo certificate bener bisa, nanging sertifikat revoked dijamin bakal dikenali).

Kanggo ngilangi positip palsu, CRLite wis ngenalake level filter korektif tambahan. Sawise nggawe struktur kasebut, kabeh cathetan sumber ditelusuri lan ana positip palsu sing diidentifikasi. Adhedhasar asil pamriksan iki, struktur tambahan digawe, sing disambungake menyang sing pertama lan mbenerake asil positif palsu. Operasi kasebut diulang nganti positip palsu sajrone mriksa kontrol rampung diilangi. Biasane, nggawe 7-10 lapisan cukup kanggo nutupi kabeh data. Wiwit status database, amarga sinkronisasi periodik, rada ketinggalan ing kahanan saiki CRL, mriksa sertifikat anyar sing ditanggepi sawise nganyari pungkasan database CRLite ditindakake kanthi nggunakake protokol OCSP, kalebu nggunakake OCSP Stapling (Respon OCSP sing disertifikasi dening panguwasa sertifikasi ditularake dening server sing nglayani situs kasebut nalika negosiasi sambungan TLS).

Mozilla ngetrapake CRLite kanggo mriksa sertifikat TLS sing bermasalah

Nggunakake saringan Bloom, irisan informasi Desember saka WebPKI, kalebu 100 yuta sertifikat aktif lan 750 ewu sertifikat sing dicabut, bisa dikemas dadi struktur ukuran 1.3 MB. Proses generasi struktur cukup intensif sumber daya, nanging ditindakake ing server Mozilla lan pangguna diwenehi nganyari sing wis siap. Contone, ing wangun binar, data sumber digunakake sak generasi mbutuhake bab 16 GB memori nalika disimpen ing Redis DBMS, lan ing wangun heksadesimal, mbucal kabeh nomer serial certificate njupuk bab 6.7 GB. Proses nglumpukake kabeh sertifikat sing dicabut lan aktif mbutuhake udakara 40 menit, lan proses ngasilake struktur rangkep adhedhasar panyaring Bloom butuh 20 menit liyane.

Mozilla saiki njamin yen database CRLite dianyari kaping papat dina (ora kabeh nganyari dikirim menyang klien). Generasi nganyari delta durung dileksanakake - panggunaan bsdiff4, digunakake kanggo nggawe nganyari delta kanggo rilis, ora nyedhiyakake efisiensi sing cukup kanggo CRLite lan nganyari ora cukup gedhe. Kanggo ngilangi kekurangan iki, direncanakake kanggo ngolah ulang format struktur panyimpenan kanggo ngilangi pambangunan lan mbusak lapisan sing ora perlu.

CRLite saiki bisa digunakake ing Firefox ing mode pasif lan digunakake bebarengan karo OCSP kanggo nglumpukake statistik babagan operasi sing bener. CRLite bisa diowahi menyang mode scan utama, kanggo nindakake iki, sampeyan kudu nyetel parameter security.pki.crlite_mode = 2 ing babagan:config.

Mozilla ngetrapake CRLite kanggo mriksa sertifikat TLS sing bermasalah

Source: opennet.ru

Add a comment