Packers és kicsomagolás programok
Második kiadás, felülvizsgált
A téma ezt a cikket, itt módon. A Dummpy hírlevelet. amelyek közül az egyik vagyok guru, én kérték, a következő kérdést:
Hello mindenkinek! Magyarázd el, mi kicsomagoló? Babrált a lemezen prog és találkozott olyan állat - „kicsomagoló”. Magyarázza el, mi a teendő vele? Mi ez? Azzal, amit eszik? Megértettem, hogy olyan típusú program.
Tehát, kicsomagoló. Ez - elszívó programokat. Ezért a program lehet csomagolni. Hogyan? Erre vannak speciális konzervgyárak. De először nézzük vpomnit hogy elnevezés „csomagolás”.
Archivers remélhetőleg jól ismertek. Ilyen program például - népszerű WinZip és a WinRAR az interneten. Archiváló lehetővé teszi, hogy a csomag a fájlokat. És mi van a csomagoláson, vagy ahogy mondani szokás, a tömörítés?
Egyszerűsített esetben lehet a következőkben szerepel. A speciális algoritmikus módszerek, az archiváló van a fájl ismétlődő szekvenciák és felváltja őket egy rövid kódokat. Például a szöveges fájlokat gyakran ismételt néhány, például a betűk, „e”, „a” vagy egy szóközt. Takeouttal kiszámítja az előfordulások számát a karakterek a szöveget, majd épít egy optimalizált szimbólumtáblát, amelyben a leggyakrabban használt szimbólumok a legrövidebb kódok Morse-kódot. Az összes szöveg recoded szerint az új táblát, és a folyamat ismétlődik. Gyakran kiderül, hogy nem csak az egyes betűket, hanem a sorrend, így a kombinációt „stb”, „art” vagy "<запятая><пробел>. „Fájl átkódolás kell állítani, ha a mérete optimalizálás után megszűnik csökken.
Természetesen a archiváló lehetővé teszi, hogy tömöríteni a nem csak a szöveges fájlokat. Mivel a szöveg kerül bemutatásra, mint egy sor kódot, adatgyűjtő ugyanolyan sikerrel, és összenyomja a nem-szöveges fájlokat. Például, a program fájlok, például EXE vagy DLL, néhány parancskódokat sokkal gyakrabban, mint mások. Emellett számos kapcsolókat hordoznak úgynevezett összehangolás. ahol az egyes szegmensek kiegészített nullák programozni, amíg a szegmens méretet válik többszöröse egy bizonyos értéket, mondjuk, 8 vagy 16 bájt. Következésképpen, a program fájlok is tartalmaz sok „víz”, amely „squeeze” az archiváló. Átlagban, a program fájlok tömörítve valahol a 40-50%.
A tömörítés nagyon előnyös információk terjesztése, mivel lehetővé teszi a veszteségmentes tegye le egy támogató kisebb és jelentősen csökkenti a letöltési időt a hálózaton. De levéltárak által létrehozott hagyományos tömörítő programok, van egy nagy hátránya: a kép őket nem állnak közvetlenül. Későbbi felhasználás céljából kivonat fájlokat az archívumból (unzip). Általános szabály, hogy ez ugyanaz a program, amit használni a csomagoláson. Persze, van olyan dolog, mint egy önkicsomagoló archívumokat, de alapvetően nem változik. Csak kicsomagolni ezt az archívumot, nincs szükség további szoftverre van szükség, és minden. És ki ez az egész az azonos fájlokat nem állnak rendelkezésre közvetlen felhasználásra.
„Milyen kár!” - mondhatnánk. Van egy csomó jó program, amit használni ritkán, de tartsa őket az archívumban kényelmetlen. Mi lenne, ha a program futtatásához felbontása nélkül? Az nagyon jó lenne! Ez hogy lehetséges?
Talán. Efölött csoda nem csak te. Programozók sokáig, az egész osztály a programok erre a célra. Hívja őket csomagolók. A legismertebb ilyen jellegű programok - LZExe, PKLite, diéta aspack DOS és a Windows. Ezek lehetővé teszik, hogy a csomag a terméket, hogy egy kisebb futtatható fájlt. E. Például néhány programot, prg.exe, volt egy mérete 800 KB, és a tömörítés után csökkent a 350 KB, de még működőképes.
Nem fikció benne. csomagoló munka sok tekintetben hasonlít a munkát a történész. Tény, hogy a tömörítő egy speciális archiváló létre futtatható program fájlokat. Az eredmény az ő munkája - egy önkicsomagoló archívum, amely a programot. Amikor futtatja a program kicsomagolja magát, majd elkezd dolgozni.
Packer következő lépéseket. Fő kód programot (EXE, DLL, CPL, BPL, stb) csomagolt szegmensekben valamilyen módszerrel (LZW, ZIP, stb). A dekompressziós eljárás végrehajtása előtt később a program elején adunk hozzá, és a módosított fájlt a lemezre. Packers programok Windows kihúzta a fő erőforrás fájl ikon és az alkalmazás van összeállítva, csomagolatlan formában a program fájlt az „Explorer” nézett tisztességes.
Lehetőségek és kicsomagolás - egy sor különböző. A legegyszerűbb lehetőség: a program induláskor teljesen kicsomagolva. Bizonyos esetekben, a kifinomult, felvenni a harcot a hackerek, a program egyes részeit is kibontja csak hivatkozik rájuk (a sebesség csökkentésére). A legtöbb csomagolók dolgoznak egy módszer „a memóriából a memória”, azaz a. E. A program kicsomagolása egy új szegmensét memóriába, majd elfogy. TÁPLÁLKOZÁS (talán néhány megvalósítások) kicsomagolva egy ideiglenes fájlba a lemezen, ami nagyon kellemetlen, és nem jelent védelmet.
Csomagolás a program is a legegyszerűbb módja annak, hogy megvédje a hacker szakszerűtlen hacker-cracker. Néhány csinálni. Ezen túlmenően a tömörített programot egy bizonyos módon védve van a vírusoktól, mert a mögöttes kód nem érhető el a módosítás egy fájl vírust.
A legnépszerűbb példája egy olyan program, amely mindig szállított formájában tömörített fájlok - Antivirus Dr. Web. DOS-változat a program tele van az étrend és a verzió a Windows - ASPACK'om. Végtére is, akkor valószínűleg sokszor élvezte Dr. Web'om, még annak tudatában, hogy van csomagolva.
Figyelembe véve a programok a csomagolási folyamat, akkor visszatérhet a feltett kérdésre az elején a cikk: „Milyen állat - kicsomagoló?”
Ha van olyan program,-konzervgyár, mondhatnánk tehát, ott kell lennie a program-kicsomagolás. Minden zár van egy kulcs. Sőt, mint már említettük, a program csomagolás zaschiaet ez a hacker szakszerűtlen. De az igazi profik ez nem probléma?
Rendben van. Kicsomagoló is elég. Ez AutoHack, betörés, CUP, stb -. Mindegyikük DOS. Én személy szerint nem kicsomagolás Windows-programok nem találkoznak. Bár nem hazudik, volt egy - UnASPack. Mindenesetre volt kicsomagolni a fájlokat aspack csak a korábbi verziók, és ezért használhatatlan volt - nem volt ilyen fájlokat. Találkoztam egy említés UCFCUP32. Ítélve a címet, akkor kell egy Windows változata a korábban megnevezett jutott. Teszteld nem volt szükséges, és semmi több határozott róla nem tudok mondani.
Két alapvetően eltérő módszer kicsomagolás csomagolt programok: egy specifikus csomagoló és nyomon követése.
Egy másik módja, hogy nyomást, - nyomkövetés - egy alapvetően más. Ez alkotta a hackerek. Tracer fut a program végrehajtásához, majd belép debug módban, és próbál „érzékeli” a pillanat, amikor a kicsomagolás a program befejeződött, és átkerül a menedzsment. Ha ez sikerül, a nyomjelző egy olyan program szegmensek teljesítő azok elrendezése és ír a lemezre. Azt is mondta, hogy „letépett egy pillanatfelvétel a program” (mert ez volt írva a dokumentációban néhány a programok, úgy tűnik, AutoHack vagy betörés). A kapott fájl nem lesz bájtonként azonos az eredeti programot, t. Hogy. Elrendezési technikákat biztosan eltér az nyomjelző és az eredeti elrendezés a programot. Másrészt, ez egyáltalán nincs értéke, ha a program helyesen működik az operációs rendszer, az eljárást felvétel szegmenseket a fájlt. Így a nyoma egy univerzális módon kibontani programokat.
Nem mindig, de lehetőség van a „fogás” A rajt pillanatát a kicsomagolt programot. Van maszkolás technikák ellen jelölőanyagok. Egyikük már említett a felülvizsgálat a programcsomag - kicsomagolás a program egyes részeit legalább utalva rá. Ha a végrehajtás során a program nem teljesen kicsomagolva, - nincs router nem fog segíteni. Bár, mint védelmi módszereket és a hacker technikákat folyamatosan javult.
Befejezésül hadd idézzek egy konkrét példát. Amikor azt vizsgáljuk, a CUP programot a DOS, munkák módszer alkalmazására, kivonat minden a fájlokat, hogy én adtam neki. Beleértve a legegzotikusabb csomagolt szoftver, amely CUP fejlesztők egyszerűen nem tudom. Mindez ismét megerősíti az elhangzottakat a nyomjelző.
Ha tudja, hogy valami új, ami a tömítések vagy kicsomagoló program kérdése van ebben a témában, kérem. Én nagyon boldog lesz.
[Hiba történt a feldolgozás ezen irányelv]
[Hiba történt a feldolgozás ezen irányelv]