Vlákno názorů k článku Kompresní algoritmy v souborech ZIP: Store a Shrink od LD - Central Directory na konci souboru. Tato vlastnost také...

  • Článek je starý, nové názory již nelze přidávat.
  • 13. 4. 2021 7:47

    LD

    Central Directory na konci souboru. Tato vlastnost také umožňuje pěknou hříčku, jak vytvořit soubor, který se chová zároveň jako PNG tak i jako ZIP.
    Tak se ZIPem se obecně dají dělat různé kousky, třeba zip bomba. Kdysi jsem k tomu četl pěkný článek a myslím, že to byl tento - https://www.bamsoftware.com/hacks/zipbomb
    (Mám trochu nepořádek v záložkách)

  • 13. 4. 2021 8:56

    bez přezdívky

    Myslím, že těch triků s central directory bylo víc. Jeden srandovní trik spočíval v tom, že se vytvořil soubor ZIP se dvěma centrálními adresáři, což v součinnosti s některými programy dělalo divy. Trik byl určený k obejití ochrany emailů. Při kontrole emailu se objevil a prošel legitimní soubor (třeba JPG), ale při rozbalování se rozbalovalo podle druhého centrálního adresáře (v konkrétně šlo o spustitelný soubor). Ale záleželo to na tom, jak se program stavěl k okolnostem, které nebyly zcela definované ve specifikaci. Tam sice je, že centrální adresář musí být jen jeden, ale už tam myslím není, že je to nutné kontrolovat a jak se má program zachovat, když tam jsou dva. WinRAR to sežral i s navijákem, průzkumník Windows vyhodil chybu a skončil a 7-zip zobrazil chybu, ale dál fungoval a rozbaloval stejné soubory které se kontrolovaly.

    [ https://www.bleepingcomputer.com/news/security/specially-crafted-zip-files-used-to-bypass-secure-email-gateways/ ]

  • 14. 4. 2021 19:34

    Marek

    Něco podobného bylo problémem na Androidu. Android aplikace (soubory s příponou *.apk) jsou vlastně *.jar archívy, což jsou vlastně *.zip archívy. Archív obsahoval dva soubory, třeba a.class a b.class. Kde ten první obsahuje nevinný kód aplikace a ten druhý obsahuje malware nebo virus. Hex editorem potom v tom ZIPu přejmenujeme b.class na a.class (a možná opravíme checksum, už si to nepamatuju). Při instalaci takové aplikace ji jedna komponenta Androidu napřed zkontroluje. Jiná komponenta Androidu ji pak nainstaluje. Problém je v tom, že každá komponenta Androidu rozbalí jiný soubor a.class, tudíž kontrola projde, ale nainstaluje se virus. Jedna komponenta byla napsaná v Cčku a druhá v Javě. Řešením je (podle mě) odmítnout takový archív v obou komponentách. Marek.