Uudet zip-pommitiedostot 4,5PB tietoa 46 Mt tiedostoon

Turvavalvonta avaa yksityisyyden

ZIP-tiedostot ovat olleet kätevä tapa pakata tietoja kuljetuksen ja säilyttämisen helpottamiseksi vuosikymmenien ajan. Mutta 5,25 tuuman ja 3,5 tuuman levykkeen pitkäikäisyyden realiteetit tekivät monilevyisiin zip-arkistoihin vedoten uhkapelin, kun kyse oli tietojen pitkäaikaisesta säilyttämisestä. Vuosien ajan olemme tienneet, että on mahdollista luoda tiedostotyyppi, joka tunnetaan nimellä 'zip-pommi' - näennäisesti pieni zip-tiedosto, joka sisälsi kerroksen kerroksen sisäkkäisiä zip-arkistoja, jotta tietojoukon lopullinen purettu versio olla monta suuruusluokkaa suurempi kuin lopullinen versio. Tuntemattoman alkuperän tiedosto, nimeltään 42.zip, on levinnyt verkossa vuosien ajan ja pakannut 4,5 kt dataa 42 kt: n tiedostoon tällä menetelmällä. Virustentorjuntaohjelmat ja pakkauksen purkaminen estävät tyypillisesti nyt zip-pommien toiminnan kieltäytymällä houkuttelemasta purkamiskerrokseen rekursiivisen datan kerroksen jälkeen.



Tutkija David Fifieldillä on kehitetty oman tyyppinen vetoketjupommi, joka parantaa (tai 'parantaa') tätä käytäntöä. Hänen tiedostokoko on paljon suurempi, mikä vaatii 46 Mt: n perustiedoston laajentumisen 4,5 kt: n arkistoksi - mutta se ei ole riippuvainen rekursiosta pakkauksensa saavuttamiseksi.

Syy siihen, että zip-pommit käyttävät rekursiota, johtuu siitä, että ZIP-jäsentimissä käytetty DEFLATE-algoritmi ei voi saavuttaa yli 1032: 1-pakkaussuhdetta. Jos haluat enemmän pakkausta kuin mitä, sinun on toistettava. Fifield löysi tavan ohittaa tämä raja. Kuten hän kirjoittaa blogissaan:



Tässä artikkelissa kerrotaan, miten rakennetaan ei-rekursiivinen zip-pommi, jonka pakkaussuhde ylittää DEFLATE-raja-arvon 1032. Se toimii päällekkäin tiedostot zip-säiliön sisällä, jotta voidaan viitata erittäin pakattujen tietojen 'ytimeen' useissa tiedostoissa tekemättä useita kopioita siitä. Vetoketjupommin ulostulokoko kasvaa neliöllisesti syötteen koossa; ts. puristussuhde paranee, kun pommi kasvaa. Rakenne riippuu sekä zip- että DEFLATE-ominaisuuksista - sitä ei voida suoraan siirtää muihin tiedostomuotoihin tai pakkausalgoritmeihin. Se on yhteensopiva useimpien zip-jäsentäjien kanssa, lukuun ottamatta 'suoratoisto' jäsentimiä, jotka jäsentyvät yhdellä kierroksella kuulematta ensin zip-tiedoston keskihakemistoa.



Jotta tämä menetelmä toimisi, Fifieldin oli tarkistettava, miten tiedot tallennetaan zip-tiedostoihin, ja valittava sopiva Deflate-toteutus saadakseen menetelmän toimimaan.

Tyhjennä-vertailu

Kuva David Fifield

Hän käytti bulk_deflate, mukautettua kompressoria, joka on erikoistunut toistuvien tavujen merkkijonon pakkaamiseen, koska se pystyy pakkaamaan tietoja tiheämmin kuin zlib, info_ZIP tai Zopfli. Vaikka bulk_deflate ylittää nämä ratkaisut, hän huomauttaa, että se ei ole yhtä tehokas yleisissä käyttötapauksissa. Hänen oli myös käytettävä ZIP64-standardin laajennusta, joka tunnetaan nimellä ZIP64, luomaan tiedosto, jossa on yli 281 Tt tiedonsiirtoa. ZIP64: n avulla voit rakentaa tehokkaasti äärettömän vetoketjupommin.

Fifieldin blogissa on paljon enemmän tietoa kuin tämä. Siinä kerrotaan, miten zip-pommi luotiin, tarkat muutokset taustalla olevaan standardiin ja arvioidaan muiden pakkausalgoritmien käyttöä Deflaten lisäksi saman idean käsittelemiseksi. Esimerkiksi Bzip2: ta voidaan käyttää myös zip-pommien luomiseen, vaikka se ei ole niin tehokas.



Jotkut viruksentorjuntaohjelmat, jotka voivat havaita rekursiiviset zip-pommit, voivat jo havaita myös tämän menetelmän niiden luomiseksi, ja Fifieldin mielestä on melko helppo suojata niitä vastaan. Silti se on esimerkki siitä, kuinka koodia voidaan muokata luovasti, jotta uudentyyppiset korkean pakkaustiedoston tiedostot, joiden ei aiemmin tiedetty olevan mahdollisia. Vaikka erittäin yksinkertainen hyökkäys, vetopommin voidaan ajatella olevan jollain tapaa analoginen DoS-hyökkäykseen yksittäistä järjestelmää vastaan. Kopioimalla kaikki käytettävissä olevat suorittimen, RAM-muistin ja tallennusresurssit kone voidaan tehdä vastaamattomaksi ja käyttökelvottomaksi. Se on hyökkäysmenetelmä, joka on peräisin Internetin varhaisimmista päivistä (ensimmäinen tunnettu zip-pommi oli ladattu vuonna 1996 ). Aiheen jatkuva tutkimus on mielenkiintoinen tekniikan tarina, vaikka massiivisen hyökkäyksen mahdollisuus on melko pieni.

Copyright © Kaikki Oikeudet Pidätetään | 2007es.com