Čítačky PDF, ako je Adobe Reader, boli zdrojom mnohých bezpečnostných zraniteľností v priebehu rokov. Je to preto, že súbor PDF nie je len dokument - môže obsahovať skripty, vložené médiá a ďalšie sporné veci.
Dokumenty PDF nie sú len dokumenty
Formát súboru PDF je v skutočnosti veľmi komplikovaný. Môže obsahovať veľa vecí, nie len text a obrázky, ako môžete očakávať. PDF podporuje mnohé funkcie, ktoré by pravdepodobne nemali, ktoré v minulosti otvorili mnoho bezpečnostných otvorov.
- JavaScript: Súbory PDF môžu obsahovať kód JavaScript, ktorý je rovnaký jazyk používaný webovými stránkami vo vašom prehliadači. Dokumenty PDF môžu byť dynamické a spúšťať kód, ktorý upravuje obsah PDF alebo manipuluje s funkciami prehliadača PDF. Z historického hľadiska boli mnohé chyby spôsobené formátmi PDF, ktoré používajú kód JavaScript na využitie programu Adobe Reader. Implementácia jazyka Adobe Reader v jazyku JavaScript obsahuje aj rozhrania JavaScript API špecifické pre Adobe, z ktorých niektoré boli neisté a boli zneužité.
- Zabudovaný Flash: Súbory PDF môžu obsahovať vložený obsah vo formáte Flash. Akékoľvek zraniteľnosti v aplikácii Flash by sa mohli použiť aj na kompromitáciu aplikácie Adobe Reader. Až do 10. apríla 2012 Adobe Reader obsahoval vlastný Flash Player. Ochranné chyby, ktoré boli odstránené v hlavnom prehrávači Flash Player, nemuseli byť upravené v balíku Flash Player Player Adobe Reader o niekoľko týždňov neskôr, takže bezpečnostné otvory boli otvorené pre použitie. Program Adobe Reader teraz používa prehrávač Flash Player nainštalovaný vo vašom systéme namiesto interného prehrávača.
- Spustenie akcií: Súbory PDF mali možnosť spustiť ľubovoľný príkaz po otvorení potvrdzovacieho okna. V starších verziách programu Adobe Reader by sa súbor PDF mohol pokúsiť o spustenie nebezpečného príkazu, ak používateľ klikne na tlačidlo OK. Program Adobe Reader teraz obsahuje čiernu listinu, ktorá obmedzuje súbory PDF zo spustenia spustiteľných súborov.
- GOTO: Súbory PDF môžu obsahovať vstavané súbory PDF, ktoré môžu byť zašifrované. Keď používateľ načíta hlavný súbor PDF, mohol okamžite načítať jeho vložený súbor PDF. To umožňuje útočníkom skryť škodlivé súbory PDF vo vnútri iných súborov PDF, blázniť antivírusové skenery tým, že im zabraňuje preskúmať skrytý súbor PDF.
- Ovládacie prvky vložených médií: Okrem aplikácie Flash môžu dokumenty PDF obsahovať v minulosti médiá Windows Media Player, RealPlayer a QuickTime. To by umožnilo PDFu zneužiť slabé miesta v týchto vložených ovládacích prvkoch prehrávača multimédií.
Existuje mnoho ďalších funkcií vo formáte PDF, ktoré zvyšujú jeho povrch, vrátane možnosti vložiť ľubovoľný súbor do PDF a použiť 3D grafiku.
Zabezpečenie PDF sa zlepšilo
Teraz by ste mali dúfajme pochopiť, prečo sú súbory Adobe Reader a PDF zdrojom toľkých bezpečnostných zraniteľností. Súbory PDF môžu vyzerať ako jednoduché dokumenty, ale nedajte sa oklamať - pod povrchom by sa mohlo stať oveľa viac.
Dobrou správou je, že sa zlepšila bezpečnosť PDF. Spoločnosť Adobe pridala v Adobe Reader X karanténu s názvom Chránený režim. Tento program spúšťa PDF v obmedzenom uzamknutom prostredí, kde má prístup iba k určitým častiam vášho počítača, nie k vášmu celému operačnému systému. Je to podobné tomu, ako sa izolácia webovej stránky Chrome izoluje z ostatného počítača. To vytvára oveľa viac práce pre útočníkov. V prehliadači PDF nemusia jednoducho nájsť bezpečnostnú chybu - musia nájsť bezpečnostnú chybu a potom použiť druhú chybu zabezpečenia v karanténe kvôli úniku z karantény a poškodeniu zvyšku počítača. To nie je nemožné, ale od zavedenia karantény bolo v programe Adobe Reader objavené a využívané oveľa menej bezpečnostných zraniteľností.
Zatiaľ čo sa môžeme pýtať, či by mali PDF dokumenty skutočne robiť všetky tieto veci, zabezpečenie PDF sa prinajmenšom zlepšilo. To je viac ako môžeme povedať pre plug-in Java, čo je strašné a v súčasnosti je primárnym útokom na webe. Pred spustením obsahu Java vás Chrome varuje, ak máte nainštalovaný aj plug-in Java.