Pas analizës: çfarë dihet për sulmin e fundit në rrjetin e serverëve kripto-çelës SKS Keyserver

Hakerët përdorën një veçori të protokollit OpenPGP që është i njohur për më shumë se dhjetë vjet.

Ne ju tregojmë se cili është thelbi dhe pse ata nuk mund ta mbyllin atë.

Pas analizës: çfarë dihet për sulmin e fundit në rrjetin e serverëve kripto-çelës SKS Keyserver
/Unsplash/ Çunlea Ju

Problemet e rrjetit

Në mes të qershorit, i panjohur kreu një sulm në një rrjet të serverëve të çelësave kriptografikë Serveri i çelësave SKS, i ndërtuar mbi protokollin OpenPGP. Ky është një standard IETF (RFC4880), i cili përdoret për të enkriptuar emailet dhe mesazhet e tjera. Rrjeti SKS u krijua tridhjetë vjet më parë për të shpërndarë certifikatat publike. Ai përfshin mjete të tilla si GnuPG për enkriptimin e të dhënave dhe krijimin e nënshkrimeve dixhitale elektronike.

Hakerët komprometuan certifikatat e dy mirëmbajtësve të projektit GnuPG, Robert Hansen dhe Daniel Gillmor. Ngarkimi i një certifikate të dëmtuar nga serveri bën që GnuPG të dështojë - sistemi thjesht ngrin. Ka arsye për të besuar se sulmuesit nuk do të ndalen me kaq, dhe numri i certifikatave të komprometuara vetëm do të rritet. Për momentin, shkalla e problemit mbetet e panjohur.

Thelbi i sulmit

Hakerët përfituan nga një dobësi në protokollin OpenPGP. Ajo është e njohur për komunitetin prej dekadash. Edhe në GitHub mund të gjeni shfrytëzimet përkatëse. Por deri më tani askush nuk ka marrë përgjegjësinë për mbylljen e "vrimës" (për arsyet do të flasim më në detaje më vonë).

Disa zgjedhje nga blogu ynë në Habré:

Sipas specifikimit OpenPGP, çdokush mund të shtojë nënshkrime dixhitale në certifikata për të verifikuar pronarin e tyre. Për më tepër, numri maksimal i nënshkrimeve nuk është i rregulluar në asnjë mënyrë. Dhe këtu lind një problem - rrjeti SKS ju lejon të vendosni deri në 150 mijë nënshkrime në një certifikatë, por GnuPG nuk e mbështet një numër të tillë. Kështu, gjatë ngarkimit të certifikatës, GnuPG (si dhe zbatimet e tjera OpenPGP) ngrin.

Një nga përdoruesit kreu një eksperiment — importimi i certifikatës iu deshën rreth 10 minuta. Certifikata kishte më shumë se 54 mijë nënshkrime, dhe pesha e saj ishte 17 MB:

$ gpg --homedir=$PWD --recv C4BC2DDB38CCE96485EBE9C2F20691179038E5C6
gpg: key F20691179038E5C6: 4 duplicate signatures removed
gpg: key F20691179038E5C6: 54614 signatures not checked due to missing keys
gpg: key F20691179038E5C6: 4 signatures reordered
gpg: key F20691179038E5C6: public key "Daniel Kahn Gillmor <[email protected]>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1
$ ls -lh pubring.gpg
-rw-r--r--  1 filippo  staff    17M  2 Jul 16:30 pubring.gpg

Për t'i bërë gjërat edhe më keq, serverët e çelësave OpenPGP nuk heqin informacionin e certifikatës. Kjo është bërë në mënyrë që të mund të gjurmoni zinxhirin e të gjitha veprimeve me certifikata dhe të parandaloni zëvendësimin e tyre. Prandaj, është e pamundur të eliminohen elementët e komprometuar.

Në thelb, rrjeti SKS është një "server skedari" i madh në të cilin çdokush mund të shkruajë të dhëna. Për të ilustruar problemin, vitin e kaluar banor i GitHub krijoi një sistem skedarësh, i cili ruan dokumentet në një rrjet serverësh të çelësave kriptografikë.

Pse nuk u mbyll vulnerabiliteti?

Nuk kishte asnjë arsye për të mbyllur cenueshmërinë. Më parë, nuk ishte përdorur për sulme hakerash. Edhe pse komuniteti i IT pyeti për një kohë të gjatë Zhvilluesit e SKS dhe OpenPGP duhet t'i kushtojnë vëmendje problemit.

Për të qenë të drejtë, vlen të theksohet se në qershor ata ende nisur serveri i çelësit eksperimental çelësat.openpgp.org. Ai siguron mbrojtje kundër këtyre llojeve të sulmeve. Sidoqoftë, databaza e tij është e mbushur nga e para, dhe vetë serveri nuk është pjesë e SKS. Prandaj, do të duhet kohë para se të përdoret.

Pas analizës: çfarë dihet për sulmin e fundit në rrjetin e serverëve kripto-çelës SKS Keyserver
/Unsplash/ Rubén Bagües

Sa i përket gabimit në sistemin origjinal, një mekanizëm kompleks sinkronizimi e pengon atë të rregullohet. Rrjeti i serverëve kyç u shkrua fillimisht si një provë e konceptit për tezën e doktoraturës së Yaron Minsky. Për më tepër, një gjuhë mjaft specifike, OCaml, u zgjodh për veprën. Nga sipas mirëmbajtësi Robert Hansen, kodi është i vështirë për t'u kuptuar, kështu që i bëhen vetëm korrigjime të vogla. Për të modifikuar arkitekturën SKS, ajo do të duhet të rishkruhet nga e para.

Në çdo rast, GnuPG nuk beson se rrjeti do të rregullohet ndonjëherë. Në një postim në GitHub, zhvilluesit madje shkruan se ata nuk rekomandojnë të punoni me SKS Keyserver. Në fakt, kjo është një nga arsyet kryesore pse ata filluan kalimin në çelësat e ri të shërbimit.openpgp.org. Mund të shikojmë vetëm zhvillimin e mëtejshëm të ngjarjeve.

Disa materiale nga blogu ynë i korporatës:

Burimi: www.habr.com

Shto një koment