Сейчас на форуме: zds, -Sanchez- (+8 невидимых)

 [email protected] —› Протекторы —› EXE32Pack 1.3x -> SteelBytes
Посл.ответ Сообщение


Ранг: 283.6 (наставник), 56thx
Активность: 0.130
Статус: Участник
Author of GeTaOEP

Создано: 04 июля 2005 14:47
· Личное сообщение · #1

Значит - жертва эксперимента http://www.axitech.hu/nettransport/downloads/NT2Setup_multi.exe .
Казалось бы,что тут распаковывать - OEP находится легко,далее зациклил на команде...
JMP EAX ; EAX = OEP = 0048EA40
...снял дамп.При восстановлении импорта в ImpRec каким-то мерзким образом отказывалась определяться одна функция.Посмотрел через "Dissassemdle/Hex View" - вроде оказалась библиотека mfc42.dll/108A - ладно,вписал её туда вручную.В итоге,дамп отказывается запускаться.
Начав ковырять,выяснил,что,с одной стороны,программа вызывает функцию GetFileAttributesA и,если возвращаемое значение -1, нас направляют на ExitProcess.С другой стороны,чуть ниже вызывается некая функция,которая возвращает в регистре AL либо ноль,либо единицу.Если это ноль, нас опять откоммандировывают на ExitProcess.И таких мест несколько,а может и больше...
Смешно то,что даже оригинальный исполняемый файл перестаёт запускаться,если изменить его название (это как раз тот случай,когда функция GetFileAttributesA возвращает значение 0xFFFFFFFF (-1) .

Собственно вопрос : "Что делать?"
И где можно найти статью об этом (те две ссылки,что я нашёл,оказались битыми) ?

-----
the Power of Reversing team





Ранг: 420.3 (мудрец)
Активность: 0.240
Статус: Участник

Создано: 04 июля 2005 15:01
· Личное сообщение · #2

DillerInc, блин...
Так бы и писал, что "программа уже ломаная, а я хочу начиться распаковывать". Ведь так не интересно, азарта нет...
Что нарыл еще?

-----
Сколько ни наталкивали на мысль – все равно сумел увернуться





Ранг: 332.0 (мудрец)
Активность: 0.180
Статус: Участник
•Pr0tEcToRs KiLLeR•

Создано: 04 июля 2005 15:10
· Личное сообщение · #3

DillerInc пишет:
Собственно вопрос : "Что делать?"

для начала попробовать переименовать дамп так как называется исходный файл =) Думаю к пакеру это всё отношения не имеет, просто дополнительные проверки добавленные автором проги... ну захотелось ему чтобы название не меняли Ж)))




Ранг: 283.6 (наставник), 56thx
Активность: 0.130
Статус: Участник
Author of GeTaOEP

Создано: 04 июля 2005 15:25
· Личное сообщение · #4

Mario555 пишет:
Думаю к пакеру это всё отношения не имеет, просто дополнительные проверки добавленные автором проги

...в натуре что-ли,а я уже было подумал,что эта штука позаковыристее ASProtect'а .
Mario555 пишет:
для начала попробовать переименовать дамп так как называется исходный файл

...пробовал - тогда программа вылетает по второму варианту,описанному мною выше.
ValdiS пишет:
Ведь так не интересно, азарта нет...

...извини,конечно,откуда мне было знать .
Попробую ещё поковырять...

-----
the Power of Reversing team





Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 04 июля 2005 15:54
· Личное сообщение · #5

DillerInc пишет:
Попробую ещё поковырять...


Проблема в libcrypto.dll. Она возвращает 0, а нужно 1.
Запакована тем же пакерером что и сама прога.

Первая проверка:

00461996 CALL DWORD PTR SS:[ESP+24]
0046199A ADD ESP,14
0046199D CMP AL,1 [если 0- не прыгаем
0046199F JE SHORT NetTrans.004619B7
004619A1 MOV EAX,DWORD PTR SS:[ESP+30]
004619A5 PUSH EAX
004619A6 CALL DWORD PTR DS:[<&msvcrt.free>]; msvcrt.free
004619AC ADD ESP,4
004619AF PUSH -64
004619B1 CALL DWORD PTR DS:[<&kernel32.ExitProces>; kernel32.ExitProcess
004619B7 PUSH 0
004619B9 CALL DWORD PTR DS:[<&kernel32.GetModuleH>; kernel32.GetModuleHandleA

Вторая проверка:

00461A64 CALL DWORD PTR SS:[ESP+24]
00461A68 ADD ESP,14
00461A6B CMP AL,1 тоже самое
00461A6D JE SHORT NetTrans.00461A85
00461A6F MOV ECX,DWORD PTR SS:[ESP+30]
00461A73 PUSH ECX
00461A74 CALL DWORD PTR DS:[<&msvcrt.free>] ; msvcrt.free
00461A7A ADD ESP,4
00461A7D PUSH -65
00461A7F CALL DWORD PTR DS:[<&kernel32.ExitProces>; kernel32.ExitProcess
00461A85 MOV EDX,DWORD PTR SS:[ESP+18]
00461A89 PUSH EDX
00461A8A CALL DWORD PTR DS:[<&kernel32.FreeLibrar>; kernel32.FreeLibrary




Ранг: 420.3 (мудрец)
Активность: 0.240
Статус: Участник

Создано: 04 июля 2005 15:57
· Личное сообщение · #6

DillerInc, в дампе по адресам 46199f и 461a6d делаешь JMP, имя дампа меняешь на имя оригинального EXE-шника. И радуешься жизни. А сам EXE32Pack 1.3x -> SteelBytes распаковывается в течении пары минут.

DillerInc пишет:
При восстановлении импорта в ImpRec каким-то мерзким образом отказывалась определяться одна функция.

У меня все в норме сразу же...

-----
Сколько ни наталкивали на мысль – все равно сумел увернуться





Ранг: 420.3 (мудрец)
Активность: 0.240
Статус: Участник

Создано: 04 июля 2005 15:59
· Личное сообщение · #7

NIKOLA, опередил.

-----
Сколько ни наталкивали на мысль – все равно сумел увернуться





Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 04 июля 2005 16:05
· Личное сообщение · #8

ValdiS пишет:
У меня все в норме сразу же...


У меня тоже.

ValdiS пишет:
А сам EXE32Pack 1.3x -> SteelBytes распаковывается в течении пары минут.


ValdiS пишет:
опередил


У меня ушло время, ещё меньше



Ранг: 192.3 (ветеран), 18thx
Активность: 0.120
Статус: Участник
stoned machine-gunner

Создано: 04 июля 2005 18:35
· Личное сообщение · #9

ValdiS пишет:
Так бы и писал, что "программа уже ломаная, а я хочу начиться распаковывать". Ведь так не интересно, азарта нет...
Что нарыл еще?

не хочешь, не смотри! хватит флудить, блин, это не чат! притензии к содержанию сообщения могут предъявлять только администратор и модераторы, коим ты не являешься!
DillerInc
на вопросы, не касающиеся топика, можешь не отвечать или в ПМ. И это касается всех участников. ;)
NIKOLA
Разговоры о погоде, времени и т.п. в ПМ.

-----
once you have tried it, you will never want anything else





Ранг: 283.6 (наставник), 56thx
Активность: 0.130
Статус: Участник
Author of GeTaOEP

Создано: 04 июля 2005 18:48
· Личное сообщение · #10

ValdiS пишет:
в дампе по адресам 46199f и 461a6d делаешь JMP, имя дампа меняешь на имя оригинального EXE-шника. И радуешься жизни

...ну,так и я могу .
Проблема в том,что в моём случае она падает ещё в каком-то месте,и у меня уже заканчивается терпение ковыряться в этой дряни.
Главное - это то,что я теперь имею представление о такой вещи как EXE32Pack .

gloom
Моё уважение .

-----
the Power of Reversing team





Ранг: 328.7 (мудрец), 73thx
Активность: 0.170.01
Статус: Участник

Создано: 04 июля 2005 19:31
· Личное сообщение · #11

а секцию этот пакер позволяет прибавить или увеличить в размерах последнюю
так как OEP вполне доступен?




Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 04 июля 2005 22:52
· Личное сообщение · #12

DillerInc пишет:
Проблема в том,что в моём случае она падает ещё в каком-то месте


Может дамп кривой или импорт.




Ранг: 283.6 (наставник), 56thx
Активность: 0.130
Статус: Участник
Author of GeTaOEP

Создано: 05 июля 2005 00:04
· Личное сообщение · #13

NIKOLA пишет:
Может дамп кривой или импорт

...дамп я снимал с помощью PETools,зациклившись на команде JMP EAX .
Та неопределившаяся функция находилась в самом низу "дерева", т.е. в самом нижнем thunk. И была она в этом thunk только одна.
Я определил её как mfc42.dll/108A .
Если не трудно,посмотри,пожалуйста,что у тебя там.

P.S. Может кто знает какую-нибудь программу,запакованную EXE32Pack,которая "нормально" распаковывается ?
Ну,чтобы был хоть какой-то положительный опыт .

-----
the Power of Reversing team





Ранг: 500.6 (!), 7thx
Активность: 0.260
Статус: Участник

Создано: 05 июля 2005 00:16
· Личное сообщение · #14

DillerInc

Отладчик то какой ?

IAT в атаче.

7381_iat_NetTransport.txt




Ранг: 420.3 (мудрец)
Активность: 0.240
Статус: Участник

Создано: 05 июля 2005 09:26
· Личное сообщение · #15

DillerInc
Проверь свой IAT: для mfc42.dll должно быть 249h определившихся функций. Приаттачь его. У меня такой же, как у NIKOLA.

DillerInc пишет:
Та неопределившаяся функция находилась в самом низу "дерева"

Не знаю, у меня они все подряд шли, скорее всего это ошибка...

DillerInc пишет:
...дамп я снимал с помощью PETools

Я использовал Лорда, размер моего дампа - 1 339 392 байт (без восстановленного импорта),
1 343 488 байт - с импортом. Секцию пакера я не удалял.

-----
Сколько ни наталкивали на мысль – все равно сумел увернуться





Ранг: 283.6 (наставник), 56thx
Активность: 0.130
Статус: Участник
Author of GeTaOEP

Создано: 05 июля 2005 13:55
· Личное сообщение · #16

NIKOLA пишет:
Отладчик то какой ?

...всё тот же - SoftIce .
ValdiS пишет:
Проверь свой IAT: для mfc42.dll должно быть 249h определившихся функций

...посмотрел у себя - так и есть.Получается,что та последняя функция у меня ни к селу,ни к городу.Ну,я её и отчикал.Затем в HIEW поменял нужные условные переходы на безусловные.
И далее идёт кульминационный момент - дамп,сделанный с помощью PETools,отказывается в таком случае работать,выдавая ошибку:
"такой-то файл is not a valid Win32 application" .
Дамп же,сделанный с помощью LordPE,благополучно запускается!!
Вот уж не знаю - первый раз у меня такое с PETools ...

В общем,благодарю всех за участие и поддержку .

-----
the Power of Reversing team





Ранг: 420.3 (мудрец)
Активность: 0.240
Статус: Участник

Создано: 05 июля 2005 14:07
· Личное сообщение · #17

DillerInc пишет:
Вот уж не знаю - первый раз у меня такое с PETools

У меня было, из-за чего такое происходит не знаю сам. Поэтому снимаю дамп и Лордом, и PETools, и
даже Олькой (правда, ее дамп всегда больше по размеру). Как говориться, на всякий пожарный...

-----
Сколько ни наталкивали на мысль – все равно сумел увернуться




Ранг: 384.1 (мудрец)
Активность: 0.250
Статус: Участник
www.int3.net

Создано: 05 июля 2005 14:22
· Личное сообщение · #18

ValdiS пишет:
Как говориться, на всякий пожарный...

Могу ещё штуки 4 дампера посоветовать...

-----
Подписи - ЗЛО! Нужно убирать!



 [email protected] —› Протекторы —› EXE32Pack 1.3x -> SteelBytes
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати