PGPdisk: príbeh polo-hoaxu

1. 9. 2006
Doba čtení: 3 minuty

Sdílet

Prednedávnom sa na Roote objavila správička s údajnou chybou v PGPdisku. O pár dní bolo treba dávať veci na pravú mieru. Skúsime odpovedať, čo sa stalo, prečo sa to stalo a čo to znamená. Môžme spať v kľude? Je PGP bezpečné? Čo je a čo nie je pravda?

Poznámka redakce: Zprávičky zmíněné v úvodníku se jmenují: Bezpečnostná chyba v PGPdisku a TrueCrypte a Môžte spať v kľude: PGP je bezpečné.

Divadlo začína

Pred niekoľkými mesiacmi, zhruba okolo marca-mája, sa objavilo pôvodné oznámenie o „chybe“ v PGPdisku. Nevenovalo sa tomu príliš veľa pozornosti. Dňa 21. augusta 2006 sa Max A. pýta na ozrejmenie „chyby“ a prípadných dôsledkov (pozn.: archív je dosť pozadu oproti stavu odoslaných mailov, jedná sa o moderovaný mailing-list). Na konci spomeniem, ako sa to celé týka TrueCryptu.

Zápletka

Po krátkej debate mimo mailing-list posielam do mailing-listu otázku, že ako to teda je. Mailing-list na chvíľu ustal, potom sa privalili odpovede naraz. Údajne nejaký mierne zmätený človek písal pôvodný príspevok na safehack.com. Že bol mierne zmätený, bolo jasné aj mne, pretože v texte preskakuje z jednej témy k druhej, že by to zmiatlo aj polo-osvieteného nosorožca, ak by nemal veľa času.

Čo je a čo nie je pravda

Je pravda:
Je možné preskočiť debuggerom fázu overovania hesla oproti uloženému hashu. Stačí zastaviť program a zmeniť CS:EIP.

Nie je pravda:
Debugger stačí na rozšifrovanie disku. (/endof: „nie je pravda“, ďalej je pravda, aby sme v tom nemali guláš) Kód vyzerá zhruba takto:

if (hash(entered_passphrase) eq hashed_passphrase_stored)
{
    decrypt_disk_encryption_key_using_key_derived_from_passphrase();
    decrypt_disk();
} 

Tj. preskočenie fázy overenia hesla síce disk „rozšifruje“, ale bude tam náhodný balast. Spomenutý kód je viac-menej štandardná technika, ako sa ochrániť napr. proti preklepom.

Je pravda:
Ak útočník odchytí heslo a zistí „čistý odkrytý“ kľúč použitý na zašifrovanie disku, zmena hesla bez prešifrovania disku nepomôže. PGPdisk údajne má veľké tlačítko „Re-encrypt“, ktoré zmienený problém rieši. TrueCrypt umožňuje napr. administrátorovi odšifrovať disk, ak užívateľ zabudol passphrase, ale len keď a práve keď TrueCrypt volume bol na začiatku vytvorený s touto featurou, viz TrueCrypt FAQ (samozrejme, uhádnutie passphrase je iná vec). V dokumentácii k TrueCryptu som zatiaľ nenašiel, či je možné zmeniť šifrovací kľúč a prešifrovať volume, určite je však možné vytvoriť nový volume a dáta skopírovať.

Je pravda:
„Chyba“ PGPdisku je záležitosťou dokumentácie.

It's more of a usage/documentation issue, really; an end-user might believe that changing the passphrase re-encrypted the entire disk beyond their ability to retrieve it. (Dave Korn, Sun, 27 Aug 2006 08:46:52 –0700)

Čiže end-user by sa mohol domnievať, že zmenou hesla sa prešifroval celý disk, čo nie je pravda. V dokumentácii to naozaj neviem nájsť, Mr. G. tvrdí to isté:

  • pgpdisk „reencrypt“ site:pgpi.org
  • pgp „reencrypt“ site:pgpi.org
  • pgp „re-encrypt“ site:pgpi.org
  • pgp disk „re-encrypt“ site:pgpi.org
  • pgpdisk „re-encrypt“ site:pgpi.org

No documents found.

Avšak ‚pgpdisk „re-encrypt“ site:pgp.com‘ už dáva pozitívny výsledok: PGP Desktop 9.5 for Windows User's Guide, PGP Desktop 9.5 for Mac OS X User's Guide a tam zmienka o Re-encrypt je.

ict ve školství 24

Akademie Root.cz

logoV rámci Akademie Root.cz připravujeme odborná školení a semináře určené nejen profesionálům, ale všem, kteří chtějí posílit své teoretické i praktické znalostí v oblasti IT. Školení vedou zkušení lektoři s mnohaletou praxí v oboru. Chcete-li rozšířit své obzory a zlepšit svou kvalifikaci, jsou naše školení tou správnou volbou.

Rozuzlenie: poučenie z krízového vývoja

Nechali sme sa poniektorí nachytať. Zároveň sa tým ale preukázalo niekoľko faktov:

  1. naozaj existuje kontrola nad open-source softwarom. Potencionálny vnútorný útočník by síce mohol vniesť backdoor, no po čase by sa to zistilo
  2. lepší jeden false alarm než nepovšimnutý skutočný alarm, aspoň sme sa kopu vecí naučili
  3. paradoxne, skutočné alarmy spôsobia oveľa menej rozruchu než false alarmy, to je moje subjektívne pozorovanie, narážam tým na chybu v GnuPG, kde bolo možné zistiť privátny podpisovací ElGamal kľúč

Záver: trocha zdravej paranoje nezaškodí

Neoveroval som, či naozaj PGPdisk má „Re-encrypt“, takže možno ma všetci klamú (berte radšej s humorom).

Autor článku

Autor textu pracuje jako programátor pro výzkum a vývoj v Laboratořích CZ.NIC, výzkumném a vývojovém centru správce české národní domény.