Mozilla zbaton CRLite për të kontrolluar për certifikata problematike TLS

Kompania Mozilla i shpallur në lidhje me fillimin e testimit në ndërtesat e natës të Firefox-it një mekanizëm të ri për zbulimin e certifikatave të revokuara - CRLite. CRLite ju lejon të organizoni një kontroll efektiv të revokimit të certifikatës kundër një baze të dhënash të vendosur në sistemin e përdoruesit. Implementimi CRLite i Mozilla-s botuar nën licencën falas MPL 2.0. Kodi për gjenerimin e bazës së të dhënave dhe komponentët e serverit janë shkruar në Piton dhe shko. Pjesët e klientit të shtuara në Firefox për leximin e të dhënave nga baza e të dhënave përgatitur në gjuhën Rust.

Verifikimi i certifikatës duke përdorur shërbime të jashtme bazuar në protokollin që përdoret ende OCSP (Protokolli i Statusit të Certifikatës në internet) kërkon akses të garantuar në rrjet, çon në një vonesë të konsiderueshme në përpunimin e kërkesave (mesatarisht 350 ms) dhe ka probleme me sigurimin e konfidencialitetit (serverët OCSP që u përgjigjen kërkesave marrin informacion në lidhje me certifikatat specifike, të cilat mund të përdoren për të gjykuar nëse çfarë faqet që përdoruesi hap). Ekziston edhe mundësia e kontrollit lokal kundrejt listave C.R.L. (Certificate Revocation List), por disavantazhi i kësaj metode është madhësia shumë e madhe e të dhënave të shkarkuara - aktualisht baza e të dhënave e certifikatave të revokuara zë rreth 300 MB dhe rritja e saj vazhdon.

Për të bllokuar certifikatat që janë komprometuar dhe revokuar nga autoritetet e certifikimit, Firefox ka përdorur një listë të zezë të centralizuar që nga viti 2015 OneCRL në kombinim me një thirrje për shërbim Shfletimi i Sigurt i Google për të identifikuar aktivitetin e mundshëm keqdashës. OneCRL, si CRLSset në Chrome, vepron si një lidhje e ndërmjetme që grumbullon listat CRL nga autoritetet e certifikimit dhe ofron një shërbim të vetëm të centralizuar OCSP për kontrollimin e certifikatave të revokuara, duke bërë të mundur që të mos dërgohen kërkesa drejtpërdrejt te autoritetet e certifikimit. Pavarësisht nga puna e madhe për të përmirësuar besueshmërinë e shërbimit të verifikimit të certifikatave në internet, të dhënat e telemetrisë tregojnë se më shumë se 7% e OCSP kërkon afat (disa vite më parë kjo shifër ishte 15%).

Si parazgjedhje, nëse është e pamundur të verifikohet nëpërmjet OCSP, shfletuesi e konsideron certifikatën të vlefshme. Shërbimi mund të jetë i padisponueshëm për shkak të problemeve të rrjetit dhe kufizimeve në rrjetet e brendshme, ose i bllokuar nga sulmuesit - për të anashkaluar kontrollin OCSP gjatë një sulmi MITM, thjesht bllokoni hyrjen në shërbimin e kontrollit. Pjesërisht për të parandaluar sulme të tilla, është zbatuar një teknikë Domosdoshmëri-kapëse, i cili ju lejon të trajtoni një gabim aksesi OCSP ose mosdisponueshmërinë e OCSP si problem me certifikatën, por kjo veçori është opsionale dhe kërkon regjistrim të veçantë të certifikatës.

CRLite ju lejon të konsolidoni informacionin e plotë për të gjitha certifikatat e revokuara në një strukturë lehtësisht të përditësuar, me madhësi vetëm 1 MB, e cila bën të mundur ruajtjen e një baze të dhënash të plotë CRL në anën e klientit.
Shfletuesi do të jetë në gjendje të sinkronizojë çdo ditë kopjen e tij të të dhënave për certifikatat e revokuara dhe kjo bazë të dhënash do të jetë e disponueshme në çdo kusht.

CRLite kombinon informacionin nga Transparenca e Certifikatës, një regjistër publik i të gjitha certifikatave të lëshuara dhe të revokuara dhe rezultatet e skanimit të certifikatave në internet (listat e ndryshme CRL të autoriteteve të certifikimit janë mbledhur dhe informacioni për të gjitha certifikatat e njohura është grumbulluar). Të dhënat paketohen duke përdorur kaskadë Filtrat e lulëzimit, një strukturë probabilistike që lejon një zbulim të rremë të një elementi që mungon, por përjashton lëshimin e një elementi ekzistues (d.m.th., me një probabilitet të caktuar, një pozitiv fals për një certifikatë të saktë është i mundur, por certifikatat e revokuara garantohen të identifikohen).

Për të eliminuar pozitivët e rremë, CRLite ka prezantuar nivele shtesë korrigjuese të filtrit. Pas gjenerimit të strukturës, të gjitha të dhënat e burimit kërkohen dhe identifikohen çdo rezultat fals. Bazuar në rezultatet e këtij kontrolli, krijohet një strukturë shtesë, e cila kaskadohet në të parën dhe korrigjon rezultatet false që rezultojnë. Operacioni përsëritet derisa të eliminohen plotësisht rezultatet false gjatë kontrollit të kontrollit. Në mënyrë tipike, krijimi i 7-10 shtresave është i mjaftueshëm për të mbuluar plotësisht të gjitha të dhënat. Meqenëse gjendja e bazës së të dhënave, për shkak të sinkronizimit periodik, mbetet pak prapa gjendjes aktuale të CRL, kontrollimi i certifikatave të reja të lëshuara pas përditësimit të fundit të bazës së të dhënave CRLite kryhet duke përdorur protokollin OCSP, duke përfshirë përdorimin e Stapling OCSP (përgjigja OCSP e certifikuar nga autoriteti i certifikimit transmetohet nga serveri që shërben sitin kur negocion një lidhje TLS).

Mozilla zbaton CRLite për të kontrolluar për certifikata problematike TLS

Duke përdorur filtrat Bloom, pjesa e dhjetorit e informacionit nga WebPKI, që mbulon 100 milionë certifikata aktive dhe 750 mijë çertifikata të revokuara, mundi të paketohej në një strukturë prej 1.3 MB në madhësi. Procesi i krijimit të strukturës është mjaft intensiv me burime, por kryhet në serverin Mozilla dhe përdoruesit i jepet një përditësim i gatshëm. Për shembull, në formë binare, të dhënat e burimit të përdorura gjatë gjenerimit kërkojnë rreth 16 GB memorie kur ruhen në Redis DBMS, dhe në formë heksadecimal, një grumbullim i të gjithë numrave serial të certifikatave merr rreth 6.7 GB. Procesi i grumbullimit të të gjitha certifikatave të revokuara dhe aktive zgjat rreth 40 minuta dhe procesi i gjenerimit të një strukture të paketuar bazuar në filtrin Bloom zgjat 20 minuta të tjera.

Mozilla aktualisht siguron që baza e të dhënave CRLite të përditësohet katër herë në ditë (jo të gjitha përditësimet u dërgohen klientëve). Gjenerimi i përditësimeve delta nuk është zbatuar ende - përdorimi i bsdiff4, i përdorur për të krijuar përditësime delta për lëshimet, nuk siguron efikasitet adekuat për CRLite dhe përditësimet janë jashtëzakonisht të mëdha. Për të eliminuar këtë pengesë, është planifikuar të ripunohet formati i strukturës së ruajtjes për të eliminuar rindërtimin dhe fshirjen e panevojshme të shtresave.

CRLite aktualisht punon në Firefox në modalitetin pasiv dhe përdoret paralelisht me OCSP për të grumbulluar statistika rreth funksionimit të saktë. CRLite mund të kalohet në modalitetin kryesor të skanimit; për ta bërë këtë, duhet të vendosni parametrin security.pki.crlite_mode = 2 në about:config.

Mozilla zbaton CRLite për të kontrolluar për certifikata problematike TLS

Burimi: opennet.ru

Shto një koment