ПредишенСледващото

Second Edition, Ревизираната

Темата на тази статия, тук има начин. В Dummpy бюлетин. една от които аз съм гуру, аз бях помолен следния въпрос:

Здравейте на всички! Обясни ми какво unpacker? Опипа на диска в прог и попаднах на такова животно - "unpacker". Обяснете какво да правя с него? Какво е това? С какво се хранят? Разбирам, че това е вид програма.

Така че, unpacker. Това е - за изваждане на програми. Поради това, програмата може да бъде опакован. Как? За това има специални опаковчици. Но, vpomnit нека първо това, означени с термина "опаковка".

Архиватори надяваме добре известни. Примери за такива програми - популярни в WinZip и WinRAR онлайн. Archiver ви позволява да пакет файлове. И това, което е опаковката, или както се казва, компресията?

Опростена случай може да се представи по следния начин. Използване на специални алгоритмични методи, за архиватор е в файлови повтарящи се последователности и ги замества с по-кратки кодове. Така например, в текст файлове често повтарят някои от буквите, например, "д", "а" или космически характер. Храна за вкъщи изчислява броя на повторения на героите в текста, а след това изгражда оптимизирана маса символ, в които най-често използваните символи са най-кратките кодове в морзов код. Всички текстът се рекодират в съответствие с новата таблица, и процесът се повтаря. Тя често се установява, че не само отделните букви, но също така и тяхната последователност, като например комбинация от "и т.н.", "изкуство" или "<запятая><пробел>. "Файл транскодиране се спира, когато размерът му след оптимизация престава да намалява.

Естествено, архиватор ви позволява да компресирате не само текстови файлове. Тъй като текстът се представя като набор от кодове, данни дървар със същия успех и компреси, различни от текстови файлове. Така например, в програмните файлове, като EXE или DLL, някои командни кодове са много по-често, отколкото други. В допълнение, много свръзки носят т.нар подравняване. където отделните сегменти са допълнени с нули за програмиране, докато размерът на сегмент става кратно на определена стойност, да речем, 8 или 16 байта. Вследствие на това на програмните файлове също съдържат много "вода", която може да "вмъкне" в архиватор. Като цяло, на програмните файлове са компресирани някъде в 40-50%.

Компресия е много изгодно за разпространение на информация, тъй като тя дава възможност без загуби то място по подкрепа на по-малки и значително да намали времето за изтегляне от мрежата. Но архиви, създадени с конвенционалните програми за компресиране, имат един основен недостатък: файловете в тях не са достъпни директно. За по-късно се използва за извличане на файлове от архива (разархивирайте). Като правило, това е една и съща програма, която е била използвана за опаковката им. Разбира се, има такова нещо като саморазархивиращи се архиви, но по същество това не променя. Просто да разопаковате този архив, без допълнителен софтуер се изисква и всички. И от това всички едни и същи файлове не са достъпни за директна употреба.

"Колко жалко!" - Може да се каже. Имам много от най-големите програми, които използвам рядко, но ги пазят в архива неудобно. Какво става, ако бихте могли да стартирате програмата без да се разопакова? Това би било страхотно! Възможно ли е това?

Може би. Над това чудо не само вас. Програмистите за дълго време, цял клас програми за тази цел. Обади им се опаковат. Най-известните програми от този вид - LZExe, PKLite, ДИЕТА ASPack за DOS и за Windows. Те ви позволяват да опаковате продукта си, може да получи по-малък изпълним файл. Е. Например, някоя програма, prg.exe, имаше размер на 800 KB, и след компресията е намалена до 350 KB, но все още е действащ.

Не фантастика в него. опаковчик работа по много начини, подобни на работата на историка. В действителност, опаковчик е специализиран архиватор създаден изпълними програмни файлове. Резултатът от работата му - саморазархивиращ се архив, който съдържа програмата. Когато стартирате програмата, се разархивира, а след това започва да работи.

Пакър следните стъпки. Главен код програма (EXE, DLL, CPL, BPL, и т.н.) Опаковани в сегмента по някакъв начин (LZW, ZIP и т.н.). се добавя своята процедура декомпресия, преди да извършвате по-късно в началото на програмата, както и на текущото изображение се записва на диск. Пакърс програми за Windows е изтеглен от главния иконата на файла ресурс и прилагането са сглобени в неопакован си вид във файла с програма в "Explorer" изглеждаше прилично.

Опции за опаковане и разопаковане - различен набор. Най-лесният вариант: на програмата при стартиране на напълно разопакован. В някои случаи, изтънчен, предназначени за борба с хакери, части от програмата са декомпресира само когато ги съотнасяне (намаляване на скоростта). Повечето опаковчици работят по метода "от паметта на памет", т.е.. Д. Програмата се разархивира на нов сегмент на паметта, а след това изтече. ДИЕТА (може би някои реализации) разархивира на временен файл на диска, което е много неудобно, а не защита.

Опаковане на програмата е също така най-лесният начин да го предпазите от хакерски непрофесионално хакер-бедняк. Някои се справят. В допълнение, сгъстен програма по определен начин се предпазва от вируси, защото основната си код не е на разположение за модификация на вирус файл.

Най-популярният пример за програма, която винаги се показва под формата на пакетирани файлове - антивируса Dr. Web. DOS-версия на програмата е пълен с диета и версия за Windows - ASPACK'om. В крайна сметка, най-вероятно много пъти се радваха на д-р Web'om, дори и да знае, че той е пълен.

След разглеждане на програмите на процеса на опаковане, ние можем да се върнем към въпроса, поставен в началото на статията: "Що за животно - unpacker"

Ако има програмно опаковчици, може да се каже, следователно, трябва да има програма, разопаковане. За всяка брава има ключ. В действителност, както е споменато по-горе, програма опаковки го zaschiaet от хакерски непрофесионално. Но за истинските плюсовете това не е проблем?

Добре. Unpacker също има достатъчно. Тя AutoHack, Intruder, CUP, и т.н. -. Всички от тях за DOS. Аз лично нямам разопаковане програми на Windows не се намира. Въпреки, че не се лъжа, имаше един - UnASPack. Въпреки това, той трябваше да се разопакова файловете ASPack само по-старите версии и затова е безполезно - Нямах никакви такива файлове. Срещнах се споменава за UCFCUP32. Ако се съди по заглавието, тя трябва да е Windows-версия на предишно наименование купа. Тествайте че не е необходимо, и нищо по-категоричен относно не мога да кажа.

Има два коренно различен метод за разопаковането опаковани програми: насочена към конкретна опаковчик и проследяване.

Друг начин да се декомпресира, - проследяване - фундаментално различен. Тя е измислена от хакери. Tracer пусне програмата да изпълнява, и след това да влезе в режим на отстраняване на грешки и се опитва да "открие" момента, в разопаковането на програмата е завършена, и ще бъдат прехвърлени към управлението. Ако това успее, следящия е програма, сегменти, извършващи им оформление и пише на диска. Също така е казал, че "откъсна моментна снимка на програмата" (тъй като е записано в документацията за някои от програмите, както изглежда, AutoHack или Intruder). Полученият файл няма да байт за байт идентична с оригиналната програма, т. За. Техники експонация сигурност се различават от маркера и оригиналното оформление на програмата. От друга страна, тя няма абсолютно никаква стойност, ако програмата работи правилно за операционната система, процедурата за запис сегменти във файла. По този начин, следата е универсален начин да се декомпресира програми.

Не винаги, обаче, е възможно да се "хване" момента на стартиране на програмата разопаковани. Има маскиращи техники срещу маркери. Една от тях вече беше споменато в прегледа на пакета от програми - разопаковане части от програмата, най-малко, отнасящи се до него. Ако по време на изпълнение на програмата, никога не напълно разопаковани, - няма рутер няма да помогне. Въпреки че, както методи на защита и хакерски техники непрекъснато се подобряват.

В заключение, позволете ми да цитирам един конкретен пример. При тестване на програмата CUP за DOS, работи метод проследяването, разархивирате файловете, че я е дал. Включително най-екзотичните пакетиран софтуер, който CUP разработчиците просто не може да знае. Всичко това още веднъж потвърждава това, което беше казано за следящия.

Ако знаете нещо ново за опаковчици или unpacker програмата и имат въпроси по тази тема, моля. Аз ще бъда много щастлив.


[Възникна грешка при обработката на настоящата директива]

[Възникна грешка при обработката на настоящата директива]

Свързани статии

Подкрепете проекта - споделете линка, благодаря!