Mozilla ievieŔ CRLite, lai pārbaudītu, vai nav problemātisku TLS sertifikātu

Uzņēmums Mozilla paziņoja par testÄ“Å”anas sākumu Firefox nakts versijās jauns mehānisms atsaukto sertifikātu noteikÅ”anai - CRLite. CRLite ļauj organizēt efektÄ«vu sertifikātu atsaukÅ”anas pārbaudi, salÄ«dzinot datu bāzi, kas mitināta lietotāja sistēmā. Mozilla CRLite ievieÅ”ana publicēts saskaņā ar bezmaksas MPL 2.0 licenci. Ir ierakstÄ«ts datu bāzes un servera komponentu Ä£enerÄ“Å”anas kods Pitons un Iet. Firefox ir pievienotas klienta daļas datu nolasÄ«Å”anai no datu bāzes sagatavots rÅ«sas valodā.

Sertifikāta pārbaude, izmantojot ārējos pakalpojumus, pamatojoties uz joprojām izmantoto protokolu OCSP (Online Certificate Status Protocol) prasa garantētu piekļuvi tÄ«klam, rada ievērojamu pieprasÄ«juma apstrādes aizkavÄ“Å”anos (vidēji 350 ms) un ir problēmas ar konfidencialitātes nodroÅ”ināŔanu (OCSP serveri, atbildot uz pieprasÄ«jumiem, saņem informāciju par konkrētiem sertifikātiem, pēc kura var spriest, vai vietnes, ko lietotājs atver). Ir arÄ« iespēja veikt vietējo pārbaudi ar sarakstiem C.R.L. (Certificate Revocation List), taču Ŕīs metodes trÅ«kums ir ļoti lielais lejupielādēto datu apjoms ā€“ Å”obrÄ«d atsaukto sertifikātu datubāze aizņem aptuveni 300 MB un tās izaugsme turpinās.

Lai bloķētu sertifikātus, kurus ir apdraudējuÅ”as un atsaukuÅ”as sertifikācijas iestādes, Firefox kopÅ” 2015. gada ir izmantojis centralizētu melno sarakstu. OneCRL apvienojumā ar izsaukumu uz servisu Google droŔā pārlÅ«koÅ”ana lai identificētu iespējamu ļaunprātÄ«gu darbÄ«bu. OneCRL, piemēram CRLSets pārlÅ«kā Chrome darbojas kā starpsaite, kas apkopo CRL sarakstus no sertifikācijas iestādēm un nodroÅ”ina vienu centralizētu OCSP pakalpojumu atsaukto sertifikātu pārbaudei, ļaujot nesÅ«tÄ«t pieprasÄ«jumus tieÅ”i sertifikācijas iestādēm. Neskatoties uz lielo darbu, lai uzlabotu tieÅ”saistes sertifikātu verifikācijas pakalpojuma uzticamÄ«bu, telemetrijas dati liecina, ka vairāk nekā 7% OCSP pieprasÄ«jumu noildze (pirms dažiem gadiem Å”is rādÄ«tājs bija 15%).

Pēc noklusējuma, ja nav iespējams pārbaudÄ«t, izmantojot OCSP, pārlÅ«kprogramma uzskata, ka sertifikāts ir derÄ«gs. Pakalpojums var nebÅ«t pieejams tÄ«kla problēmu un iekŔējo tÄ«klu ierobežojumu dēļ vai uzbrucēju bloķēts ā€” lai apietu OCSP pārbaudi MITM uzbrukuma laikā, vienkārÅ”i bloķējiet piekļuvi pārbaudes pakalpojumam. Daļēji, lai novērstu Ŕādus uzbrukumus, ir ieviesta tehnika Must-Staple, kas ļauj OCSP piekļuves kļūdu vai OCSP nepieejamÄ«bu uzskatÄ«t par sertifikāta problēmu, taču Ŕī funkcija nav obligāta un tai nepiecieÅ”ama Ä«paÅ”a sertifikāta reÄ£istrācija.

CRLite ļauj apvienot pilnīgu informāciju par visiem atsauktajiem sertifikātiem viegli atjaunināmā struktūrā, tikai 1 MB lielumā, kas ļauj klienta pusē saglabāt pilnīgu CRL datu bāzi.
PārlÅ«kprogramma katru dienu varēs sinhronizēt savu datu kopiju par atsauktajiem sertifikātiem, un Ŕī datu bāze bÅ«s pieejama jebkuros apstākļos.

CRLite apvieno informāciju no Sertifikāta caurspÄ«dÄ«gums, publisks žurnāls par visiem izsniegtajiem un atsauktajiem sertifikātiem un sertifikātu skenÄ“Å”anas rezultāti internetā (tiek apkopoti dažādi sertifikācijas iestāžu CRL saraksti un apkopota informācija par visiem zināmajiem sertifikātiem). Dati tiek iesaiņoti, izmantojot kaskādi Bloom filtri, varbÅ«tÄ«bas struktÅ«ra, kas ļauj nepatiesi noteikt trÅ«kstoÅ”u elementu, bet izslēdz esoŔā elementa izlaiÅ”anu (t.i., ar noteiktu varbÅ«tÄ«bu ir iespējams kļūdaini pozitÄ«vs rezultāts pareizam sertifikātam, bet atsauktie sertifikāti tiek garantēti identificēti).

Lai novērstu viltus pozitÄ«vus rezultātus, CRLite ir ieviesis papildu koriģējoÅ”us filtru lÄ«meņus. Pēc struktÅ«ras Ä£enerÄ“Å”anas tiek meklēti visi avota ieraksti un tiek identificēti visi viltus pozitÄ«vie rezultāti. Pamatojoties uz Ŕīs pārbaudes rezultātiem, tiek izveidota papildu struktÅ«ra, kas tiek kaskādēta uz pirmo un izlabo iegÅ«tos viltus pozitÄ«vos rezultātus. DarbÄ«bu atkārto, lÄ«dz tiek pilnÄ«bā novērsti kļūdaini pozitÄ«vi kontrolpārbaudes rezultāti. Parasti pietiek ar 7ā€“10 slāņu izveidi, lai pilnÄ«bā aptvertu visus datus. Tā kā datu bāzes stāvoklis periodiskas sinhronizācijas dēļ nedaudz atpaliek no paÅ”reizējā CRL stāvokļa, jauno sertifikātu, kas izsniegti pēc CRLite datu bāzes pēdējās atjaunināŔanas, pārbaude tiek veikta, izmantojot OCSP protokolu, tostarp izmantojot OCSP skavoÅ”ana (OCSP atbildi, ko sertificējusi sertifikācijas iestāde, pārsÅ«ta vietni apkalpojoÅ”ais serveris, vienojoties par TLS savienojumu).

Mozilla ievieŔ CRLite, lai pārbaudītu, vai nav problemātisku TLS sertifikātu

Izmantojot Bloom filtrus, WebPKI decembra informācijas daļu, kas aptver 100 miljonus aktÄ«vo sertifikātu un 750 tÅ«kstoÅ”us atsaukto sertifikātu, varēja iesaiņot 1.3 MB lielā struktÅ«rā. StruktÅ«ras Ä£enerÄ“Å”anas process ir diezgan resursietilpÄ«gs, taču tas tiek veikts uz Mozilla servera un lietotājam tiek dots gatavs atjauninājums. Piemēram, binārajā formā Ä£enerÄ“Å”anas laikā izmantotajiem avota datiem ir nepiecieÅ”ami aptuveni 16 GB atmiņas, ja tie tiek glabāti Redis DBVS, un heksadecimālā formā visu sertifikātu sērijas numuru izgāztuves apjoms aizņem apmēram 6.7 GB. Visu atsaukto un aktÄ«vo sertifikātu apkopoÅ”anas process aizņem apmēram 40 minÅ«tes, savukārt pakotnes struktÅ«ras Ä£enerÄ“Å”anas process, pamatojoties uz BlÅ«ma filtru, aizņem vēl 20 minÅ«tes.

PaÅ”laik Mozilla nodroÅ”ina, ka CRLite datubāze tiek atjaunināta četras reizes dienā (ne visi atjauninājumi tiek piegādāti klientiem). Delta atjauninājumu Ä£enerÄ“Å”ana vēl nav ieviesta - bsdiff4 izmantoÅ”ana, ko izmanto laidienu delta atjauninājumu izveidei, nenodroÅ”ina atbilstoÅ”u CRLite efektivitāti un atjauninājumi ir nepamatoti lieli. Lai novērstu Å”o trÅ«kumu, tiek plānots pārveidot krātuves struktÅ«ras formātu, lai novērstu nevajadzÄ«gu slāņu pārbÅ«vi un dzÄ“Å”anu.

CRLite paÅ”laik darbojas pārlÅ«kprogrammā Firefox pasÄ«vajā režīmā un tiek izmantots paralēli OCSP, lai uzkrātu statistiku par pareizu darbÄ«bu. CRLite var pārslēgt uz galveno skenÄ“Å”anas režīmu; lai to izdarÄ«tu, failā about:config ir jāiestata parametrs security.pki.crlite_mode = 2.

Mozilla ievieŔ CRLite, lai pārbaudītu, vai nav problemātisku TLS sertifikātu

Avots: opennet.ru

Pievieno komentāru