Am spart cheile unei Autorități de Certificare din anii '90. Iată ce am descoperit despre sălbăticia securității web
Când Cheile RSA de 512 Biți Au Devenit Istorie
Din când în când, comunitatea de criptografie recomandă discret retragerea unor dimensiuni de chei care altădată păreau de nedepășit. Ce era considerat sigur în anii '90 astăzi pare periculos de vulnerabil. Și iată că recent, un cercetător în securitate a demonstrat că poate factoriza chei RSA de 512 de biți provenite din autorități de certificare (CA) abandonate — acele rădăcini în care browserele își pun încrederea pentru a verifica identitatea site-urilor web.
Cheile respective proveneau din Netscape 4.51, lansat în martie 1999, și includeau certificate de la o CA canadiană numită E-Certify. Aceste rădăcini au rămas trusted pentru conexiuni SSL până în 2003, când comunitatea a recunoscut în sfârșit că 512 biți nu fuseseră niciodată suficienți.
De Ce 512 Biți A Fost Întotdeauna O Alegere Proastă
RSA-512 folosește un modul de 512 de biți — produsul a două numere prime mari. În anii '90, factorizarea unui astfel de număr era posibilă teoretic, dar greu de realizat în practică. Doar că matematica nu s-a schimbat; puterea de calcul s-a schimbat dramatic.
Un procesor modern Ryzen 9 poate factoriza o cheie RSA de 512 de biți în aproximativ 30 de ore, folosind instrumente open-source precum CADO-NFS. În 1999, aceeași cheie ar fi necesitat fie un supercomputer, fie un efort distribuit masiv.
Ceea ce e cu adevărat interesant: chiar și în 1999, asta era la limită. RSA-155 (un număr de 512 biți cu 155 de cifre zecimale) a fost factorizat în august 1999 — la doar câteva luni după ce certificatele E-Certify au fost distribuite. Cercetătorul a observat că aceste chei probabil nu ar fi trebuit emise deloc.
Contextul Istoric al Web PKI
Web PKI — sistemul de autorități de certificare care asigură HTTPS — a fost construit pe presupuneri de încredere care par acum naive. În anii '90, producătorii de browsere livrau zeci de certificate rădăcină de la autorități din întreaga lume, cu standardizare minimă privind dimensiunea cheilor sau practicile operaționale.
Netscape, care practic inventase comerțul web cu SSL în 1994, era deosebit de permisiv. Internet Explorer era mai conservator — nicio rădăcină CA RSA de 512 biți nu a fost livrată vreodată cu IE. Dar abordarea Netscape a creat un artifact istoric: certificate CA de 512 biți care au rămas trusted pe orice sistem cu o versiune veche de Netscape și un ceas incorect setat.
Ce Înseamnă Asta Pentru Securitatea Modernă
Concluzia nu e doar „nu folosi niciodată RSA de 512 biți." Asta e evident. Mesajul mai important e că standardele de securitate sunt documente vii. O cheie RSA de 2048 de biți, cerută de practicile actuale, va fi considerată cândva prea mică. Proiectul NIST pentru standardizarea criptografiei post-cuantice e deja în desfășurare, pentru că cercetătorii anticipează că procesoarele cuantice vor sparge RSA într-o zi.
Pentru dezvoltatori și organizații, această lecție istorică subliniază câteva principii esențiale:
- Planifică migrarea algoritmilor: Infrastructura ta va avea nevoie de actualizări pe măsură ce standardele criptografice evoluează. Evită codificarea hard a algoritmilor specifici.
- Urmărește termenele de retragere: Autoritățile de certificare și browserele anunță regulat datele de sunset pentru dimensiuni mai vechi de chei și funcții hash.
- Automatizează reînnoirea certificatelor: Procesele manuale duc la certificate uitate și configurații depășite.
- Folosește certificate transparency: CA-urile moderne trebuie să înregistreze certificatele public, ceea ce face mai greu pentru actori malițioși să obțină certificate false.
Partea Distractivă
Dincolo de implicațiile de securitate, e ceva inedit în a sparge chei criptografice de la o autoritate de certificare dispărută. Cercetătorul a publicat cheile private E-Certify și chiar a configurat un server HTTPS de test care funcționează cu Netscape Navigator 4.51. E o capsulă temporală — dovedește că aceste certificate vechi pot autentifica în continuare conexiuni, cel puțin pentru browsere care sunt mai bătrâne decât mulți dintre dezvoltatorii de azi.
Dacă vrei să explorezi arhive vechi de certificate, cercetătorul a publicat instrumente și instrucțiuni pentru extragerea și analiza certificatelor rădăcină istorice. Ai putea găsi alte CA-uri uitate cu chei la fel de slabe. E un reminder că istoria internetului lasă urme, și nu toate au fost sigure de la bun început.
Data viitoare când configurezi TLS pentru o aplicație, acordă-ți un moment să apreciezi cât de departe am ajuns — și cât de automat platforma ta de hosting gestionează probabil reînnoirea certificatelor, dimensiunea cheilor și selecția cipher suites. Zilele sălbatice ale CA-urilor cu 512 biți sunt în urmă, dar lecțiile despre igiena criptografică rămân la fel de relevante ca întotdeauna.