Hackeri využili funkciu protokolu OpenPGP, ktorá je známa už viac ako desať rokov.
Povieme vám, o čo ide a prečo to nemôžu uzavrieť.
/Unsplash/
Problémy so sieťou
V polovici júna neznámy
Hackeri kompromitovali certifikáty dvoch správcov projektu GnuPG, Roberta Hansena a Daniela Gillmora. Načítanie poškodeného certifikátu zo servera spôsobí zlyhanie GnuPG – systém jednoducho zamrzne. Existuje dôvod domnievať sa, že útočníci sa tam nezastavia a počet napadnutých certifikátov sa bude len zvyšovať. V súčasnosti zostáva rozsah problému neznámy.
Podstata útoku
Hackeri využili zraniteľnosť v protokole OpenPGP. V komunite je známa už desaťročia. Dokonca aj na GitHub
Pár výberov z nášho blogu na Habré:
Podľa špecifikácie OpenPGP môže ktokoľvek pridať k certifikátom digitálne podpisy na overenie ich vlastníka. Navyše maximálny počet podpisov nie je nijako regulovaný. A tu nastáva problém – sieť SKS umožňuje umiestniť na jeden certifikát až 150 tisíc podpisov, ale GnuPG takéto číslo nepodporuje. Pri načítavaní certifikátu teda GnuPG (ale aj iné implementácie OpenPGP) zamrzne.
Jeden z užívateľov
$ 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
Aby toho nebolo málo, servery kľúčov OpenPGP neodstraňujú informácie o certifikátoch. Deje sa tak, aby ste mohli sledovať reťazec všetkých akcií s certifikátmi a zabrániť ich nahradeniu. Preto nie je možné eliminovať narušené prvky.
Sieť SKS je v podstate veľký „súborový server“, na ktorý môže ktokoľvek zapisovať dáta. Na ilustráciu problému, minulý rok rezident GitHub
Prečo nebola zraniteľnosť uzavretá?
Nebol dôvod túto zraniteľnosť uzavrieť. Predtým sa nepoužíval na útoky hackerov. Hoci IT komunita
Aby sme boli spravodliví, stojí za zmienku, že v júni stále
/Unsplash/
Čo sa týka chyby v pôvodnom systéme, jej oprave bráni zložitý synchronizačný mechanizmus. Sieť kľúčových serverov bola pôvodne napísaná ako dôkaz koncepcie pre doktorandskú prácu Yarona Minského. Navyše bol pre prácu zvolený pomerne špecifický jazyk, OCaml. Autor:
V každom prípade GnuPG neverí, že sa sieť niekedy podarí opraviť. V príspevku na GitHub dokonca vývojári napísali, že neodporúčajú pracovať s SKS Keyserver. V skutočnosti je to jeden z hlavných dôvodov, prečo iniciovali prechod na novú službu keys.openpgp.org. Ďalší vývoj udalostí môžeme len sledovať.
Pár materiálov z nášho firemného blogu:
Zdroj: hab.com