Контакты

Для связи с нами можно использовать:
irc://irc.chatnet.ru:#gfs
icq://546460
email://cobalt[@]gfs-team.ru

Все материалы предоставлены только с ознакомительной целью
ГлавнаяСтатьиКрэкингРучная распаковка UPX
© outlaw 10.12.2007

Программа: Nokitel
Программа написанна на: Borland C++
На предмет: Ручная распаковка UPX
Инструменты: Ollydbg, Pe Tools, Import REC, PEID, ResRebuild, LordPE.
Автор: OutLaw

Привет сегодня мы будет распаковывать в ручную программу которая запакована UPX, в моем случае это мой крякмис "Nokitel", но ты можешь взять любую программу которая запакована UPX и проделать все операции которые мы рассмотрим в этой статье. Как ты уже знаешь из статьи "Ручная распаковка Neo-Lite 2.0"

Нам надо найти оригинальную точку входа "OEP", что собвствено и делаем запускаем Ollydbg если перед вами выскачело диологовое окно нажмите "нет" и так мы в отладчике и видим:

004DBB20 > $ 60             PUSHAD    <- Мы тут, PUSHAD - данная команда 
                                            /// сохраняет все регистры в стеке
004DBB21   . BE 00604700    MOV ESI,Nokitel.00476000
004DBB26   . 8DBE 00B0F8FF  LEA EDI,DWORD PTR DS:[ESI+FFF8B000]
004DBB2C   . 57             PUSH EDI
004DBB2D   . 83CD FF        OR EBP,FFFFFFFF
004DBB30   . EB 10          JMP SHORT Nokitel.004DBB42

Приступаем к поиску оригинальной точки входа "OEP", как ты помнишь мы должны найти команду "POPAD" и после нее должен быть прыжок "JMP" нажмем три раза "Page Down" или можно в дизассемблере в поиск вбить "POPAD", и потом записать адрес и перейти по нему в отладчике, что тебе будет подуше выбирать тебе, но тем немение я делаю по первому способу и так мы нашли такой код:

004DBC71   > FF96 E0301000  CALL DWORD PTR DS:[ESI+1030E0]
004DBC77   > 61             POPAD    <- Перейдем сюда и поставим бряку "F2" 
004DBC78   .-E9 7F56F2FF    JMP Nokitel.004012FC   <- Прыжок к оригинальной 
		/// точки входа

Поставили бряку на адрес 004DBC77 теперь зупускаем программу и сразу же остановились на нашем брэкпоинте ( Опять же повторюсь для тех кто в танке брэкпоинт это точка останова, наличие брэкпоинта на каком либо адрессе говорит о том где программа остановиться, будь то вызов диалогово окна или вызов о старте программы), посмотрим на прыжок после, 004012FC это адрес как ты уже понял перехода на оригинальную точку входа, записываем его в блокнот, и сворачиваем(не закрываем) ольгу(ollydbg). Теперь нам надо снять дамп, для этого открываем программу PE Tools, в процесах ищем нашу программу, как только мы ее нашли нажимаеи правой кнопкой по программе и в меню нажимет "Dump Full", выбираем куда сохранить дамп я его сохранил на рабочий стол, потом видим диологовое окна, нажимаем "ОК", теперь можем закрыть PE Tools.

Дальше нам придется восстанавливать импорт таблицы для этого запускаем Import REC, находим в процесах нашу программу, теперь как ты помнишь мы найдем настоящий "OEP" в прошлой статье мы занимались математикой и тут мы то же этим занимаемся, 004012FC - 00400000 =12FC, как ты знаешь из курса информатики первые нули мы не считаем а просто отбрасываем, и так у нас настоящия точка входа "12FC" вписываем его в программу в поле OEP, рядом кнопка "IAT AutoSearch" нажимаем ее, появится диологовое окно с надписью "Found Something!" окно просит нас нажать на кнопку "Get Imports", потом в окне мы увидим "YES" если у тебя "NO" то значит ты что то не так сделал. И так потом нажимам "Fix Dump" и выбираем дамп который мы сохранили на рабочем столе(или где ты его сохранили) и после этого увидим сообщение "Dumped_exe saved successfully", у программы востоновлен импорт у меня на рабочем столе появился Dumped_exe, не закрываем "Import REC" и открываем программу PEID, в нем нам надо открыть дамп с исправленой таблицей импорта что мы и делаем нажмем на кнопку"..." и выбираем Dumped_exe, в PEID нажимем на кнопку "->" потом выбираем "Plugins" и выбираем "Rebuild PE" в появившемся окне нажимем "Rebuild" потом "Exit", потом закрываем сам PEID.

Далее востонавливаем ресурсы с помощью программы ResRebuild, она консольная так что для удобства юзать ее лучше через "Far", переносим наш Dumped_.exe в папку с ResRebuild, и в Far`е прописываем "resrebld.exe Dumped_.exe .rsrc" в папке появится файл .rsrc, он нам понадобится когда будем когда мы будем удалять и востонавливать ресурсы.

И так дальше загружаем Lord PE, нажимаем в не на PE Editor, в появившемся окошке выбираем наш дамп, после чего появится еще окно в нем мы делаем следующие, а имено нажимаем на "Sections". Далее, нам надо удалить две последнии секции это "rsrc" и "mackt", для этого нажимаем по секции "mackt" правой кнопкой и в появившемся окне выбираем "wipe selection header", то же самое и с секции "rsrc", потом вставляем новую секцию ресурсов для этого тыкаем по любой строке правой кнопкой и выбираем "load section from disk" выбираем наш файл "rsrc", после появится табличка "Section loaded successfully", потом закрываем наше маленькое окошко, и в другом окне нажмем "Save" что бы сохранить наши действия, ну и потом exit.

Ну и наконец последниц шаг, это опять повторное востоновление импорта, вот теперь ты понял почему мы не закрывали Import REC, если ты все таки закрыл, я тебе скажу одно: делай все заново и не спиши. И так делаем следующие нажимаем "Fix Dump" выбираем Dumped_.exe, увидим опять "Dumped_exe saved successfully" ну вот и все, программа распакована. Если не хочешь заморачиваться то скачай просто сам пакер UPX и пропиши "upx.exe -d программа.exe".




© outlaw 10.12.2007

e-Commerce Partners Network
MedVetoff написал:

Я все сделал как указано в статье, но у меня ничего не вышло.Выдает ошибку - что не является приложением win32.У меня программа-русификатор.Для autoPlay Mediastudio 7.1
Пробовал распаковать через upx, но там пишет что стоит защита.Как мне ее снять?

DoDo написал:

У меня все получилось, MedVetoff делай точно так же как в статье, может ты где то Import REC, закрыл.

DoDo написал:

Еще какая версия UPX то? если новая то качай тогда новый UPX и upx.exe -d программа.exe

icegex написал:

Как альтернатива анпакнуть можно самим пакером.

DoDo написал:

В статье и написано цитирую "Если не хочешь заморачиваться то скачай просто сам пакер
UPX и пропиши "upx.exe -d программа.exe"

И все! ;)

Evil Coder написал:

Ну да,для ленивых конечно можно и не заморачиваться,но уж если не поймёшь как вручную анпакнуть такие пакеры,то уж никогда не мечтай что сможешь справиться с такими как StarForce.:D

knownwhat написал:

в раздел для детей!

Mazahaka написал:

Все когда-то с этого начинали,а крэкерами сразу не рождаются,новичкам сойдёт.)

Guest написал:

подскажите где скачать ResRebuild

|||| написал:

подскажите где скачать ResRebuild

Cracklab.ru

Insendio написал:

Спасибо и Респект автору ! Полезные инфЫ

Ник:

Текст:
P Br B I Qute



Код: обновить
Последние комментарии
24.06.2017 21:15:55 DeweyAloma написал:
If you have a desire to learn how to earn from...
Ручная распаковка NeoLite 2.0
24.06.2017 14:43:35 Issacpam написал:
Ckaйп evg7773 Ламинин +38097-613-1437 Laminine LPGN в Хуст Закарпатье 28 usd...
Взлом домофонов
21.06.2017 04:39:52 PRO написал:
Взлом и подбор паролей на почтовых сервисах и социальных сетях. Работаем со всеми...
Взлом E-mail (email, почты, мыла)
Реклама

Тут должна была быть ваша реклама, но мы потеряли глиняную табличку с ее текстом. SapeId: 665044

Rambler's Top100