![]() |
eXeL@B —› Основной форум —› Исследование Auto Debug 3.0 |
<< . 1 . 2 . 3 . >> |
Посл.ответ | Сообщение |
|
Создано: 28 июня 2006 21:14 · Личное сообщение · #1 Обнаружил сёдня у себя на харде, но злобный наг достал просто ![]() [ссылка] hxxp://hellspawn.nm.ru/tmp/setup.exe [размер] 1.16мб [запакована] ASPack 2.12 + PECompact 1.xx интересно взломать самому ![]() уже насколько часов бъюсь, вот что нарыл: -куча int 3 в коде -проверка на бряки -проверка crc -издебаггер презент ![]() заставить работать расспакованную пока не удалось... собственно в это и интерес, ну теперь к коду:
проверку крк вроде нашёл, ща настряпую лоадер... Прога интересная, советую посмотреть ![]() ----- [nice coder and reverser] ![]() |
|
Создано: 29 июня 2006 18:08 · Личное сообщение · #2 0043C461 FF15 F4724400 call dword ptr ds:[4472F4] ; kernel32.CreateThread 0043C467 85C0 test eax,eax 0043C469 75 1C jnz short DebugApi.0043C487 0043C46B FF15 54724400 call dword ptr ds:[447254] ; ntdll.RtlGetLastWin32Error 0043C471 8BF8 mov edi,eax 0043C473 56 push esi 0043C474 E8 A6FCFFFF call DebugApi.0043C11F 0043C479 85FF test edi,edi 0043C47B 59 pop ecx 0043C47C 74 07 je short DebugApi.0043C485 Похоже что здесь! ![]() |
|
Создано: 29 июня 2006 18:14 · Поправил: Hellspawn · Личное сообщение · #3 достали меня эти потоки, а ты распаковывать не пробывал? один упёртый фрагмент кода 00420E76 - начало 00422276 - конец 1400 - размер + ещё упёрта процедура CALL 00430B2C + надо занопить некоторые вызовы CALL 0043B8E0 - который ещё пишет на их место... + тулзу которая пихает дамы от пе-тулз куда надо ![]() з.ы. вот ещё что нашёл
Medsft пишет: Правда для довольно старой версии но судя по вашим описаниям ничего не изменилось. Исходников нет. Забыл давно было. а чем нам это поможет? ![]() ----- [nice coder and reverser] ![]() |
|
Создано: 29 июня 2006 18:20 · Личное сообщение · #4 Не там точно потоки Threads Ident Entry Data block Last error Status Priority User time System time 00000104 7C810856 7FFDB000 ERROR_SUCCESS (00000000) Active 32 + 0 0.0000 s 0.0000 s 00000A3C 00472001 7FFDF000 ERROR_NOT_ENOUGH_MEMORY (00000008) Active 32 + 0 0.0901 s 0.0801 s 00000AC0 7C810856 7FFDE000 ERROR_SUCCESS (00000000) Active 32 + 0 19.1875 s 0.0100 s 00000BE8 7C810856 7FFDC000 ERROR_ENVVAR_NOT_FOUND (000000CB) Active 32 + 0 0.0100 s 0.0000 s 00000FE0 7C810856 7FFDD000 ERROR_SUCCESS (00000000) Active 32 + 0 0.1902 s 0.0000 s И все 0012F560 0043C48B |ThreadFunction = DebugApi.0043C48B ![]() |
|
Создано: 29 июня 2006 19:56 · Поправил: Hellspawn · Личное сообщение · #5 всё она почти повержана, проверь на своей винде.. [отредактировано] 1) 00423E6E .^ 0F84 0DFFFFFF JE 00423D81 // - проверка какой-то суммы 1 2) 0043CE80 <> 8B4424 0C MOV EAX,DWORD PTR SS:[ESP+C] // проверка крк 3) 00423D45 . /74 0F JE SHORT 00423D56 // - проверка какой-то суммы 2 00423D67 . /74 0C JE SHORT 00423D75 // - проверка какой-то суммы 3 4) 00420F96 . /74 0C JE SHORT 00420FA4 // - странный прыг он выполняется только когда прога не изменена и не введён левый с.н. 5) - ? 004210D2 <> $ 55 PUSH EBP // - процедура выхода из проги при несовпадении какой-либо крк, можно вбить в начало тупо ret ![]() С зависание разобрался, проверку крк надо было пропатчить более аккуратно, вообщем прога взломана осталось с инлайном разобраться... Там 2 пакера висят ![]() [/отредактировано] и ещё pavka, можно смело ставить бряку суда 004317D8, прерваться снять бряку дойти до рет, и почти все процедуры будут расшифрованны! ![]() з.ы. хоть кто-нибудь ещё попробуйте прогу) вот вам крекми выше среднего! а то ломать всякие элементарные зищиты мы мастера ![]() ----- [nice coder and reverser] ![]() |
|
Создано: 29 июня 2006 21:39 · Личное сообщение · #6 Hellspawn пишет: а смысл? просто поставь галку в exceptions - ignore int3 дык я ставил сначала долбаную галку, нихрена. Там надо было настроить ОллиАдвансед, там ета долбаная прога юзаеть какието натив фии, ща сделал, всё нормуль. Кста пипл, нихто не пробовл стрипнуть гнилые секции пакеров? Там после унпака какието секции странные, почему-то 2 .rsrc? Или там всё как обычно? ![]() |
|
Создано: 29 июня 2006 21:50 · Поправил: Hellspawn · Личное сообщение · #7 |
|
Создано: 29 июня 2006 22:18 · Личное сообщение · #8 Hellspawn пишет: тебе удалось дамп запустить? "Удалось" ![]() ![]() стал лепить бряки на SEH обработчек етих инт3 (ето ваще правильно?). Потом прочтал чё вы тут написали, пропатчил, таже фигня ![]() и на 004210D2 у меня не PUSH EBP, код у меня другой! может я не всё декриптонул или зафиксил? Наверно всётаки я чёто не так сделал ![]() ![]() |
|
Создано: 30 июня 2006 04:48 · Личное сообщение · #9 |
|
Создано: 30 июня 2006 10:10 · Поправил: Hellspawn · Личное сообщение · #10 |
|
Создано: 30 июня 2006 10:50 · Личное сообщение · #11 |
|
Создано: 30 июня 2006 12:38 · Личное сообщение · #12 |
|
Создано: 30 июня 2006 13:24 · Поправил: Hellspawn · Личное сообщение · #13 pavka - хз, может ты не так пропатчил, вот попробуй я набросал лоадер, гонял мин 15 всё ок, тока с рег. особо не разбирался, просто пропачил наг, чтобы проверить все глюки... Medsft - лоадер всосал ![]() ![]() ----- [nice coder and reverser] ![]() |
|
Создано: 30 июня 2006 14:29 · Личное сообщение · #14 |
|
Создано: 30 июня 2006 14:30 · Личное сообщение · #15 |
|
Создано: 30 июня 2006 14:59 · Личное сообщение · #16 |
|
Создано: 30 июня 2006 15:18 · Личное сообщение · #17 |
|
Создано: 30 июня 2006 15:21 · Личное сообщение · #18 |
|
Создано: 30 июня 2006 15:39 · Личное сообщение · #19 |
|
Создано: 30 июня 2006 15:45 · Личное сообщение · #20 |
|
Создано: 30 июня 2006 16:24 · Поправил: Hellspawn · Личное сообщение · #21 хм.. да там что-то с ИД не так, т.е. он у меня после ребута другой ![]() всё, интересно от чего генерится? кстати для облегчения наших мук набацал скриптик, отключает все проверки (которые нашёл) ![]() ----- [nice coder and reverser] ![]() |
|
Создано: 20 июля 2006 17:36 · Личное сообщение · #22 |
|
Создано: 20 июля 2006 19:50 · Поправил: Ultras · Личное сообщение · #23 |
|
Создано: 20 июля 2006 20:13 · Личное сообщение · #24 |
|
Создано: 20 июля 2006 20:21 · Личное сообщение · #25 |
|
Создано: 21 июля 2006 05:05 · Личное сообщение · #26 |
|
Создано: 21 июля 2006 07:23 · Личное сообщение · #27 |
|
Создано: 21 июля 2006 11:35 · Личное сообщение · #28 |
|
Создано: 21 июля 2006 16:42 · Личное сообщение · #29 Вероятно пропустил еще одну проверку Но выход усть. В оле ищешь WaitSingleObject CMP eax, xxx .после него если не сделать джамп идут разного рода проверки в частности считается контрольная сумма и наличие ВРМ так-что выход очевиден. Ultras`у Здесь по ходу не релиз делают а только изучают защиту (по крайней мере я так думаю), а потому файла представлена не причесанная (отключена защита по DRX, антидамп, BP, checksum) чтобы можно было посмотреть че да как. Алгоритм генерации ключа например ![]() ![]() |
|
Создано: 24 июля 2006 22:29 · Поправил: Hellspawn · Личное сообщение · #30 вижу хоть кто-то взялся за неё... приятно ![]() Jupiter пишет: очевидно, что в данном случае у Hellspawn & pavka интерес спортивный ;))) ты прав, меня эта прога просто привела в ярость ![]() вообщем всё пашет, может ещё с ключиком поколдую.. вот собрался писать статью по её исследованию, ведь там есть несколько очень интересных моментов ![]() и прога, мягко сказать не для новичка... Fallen Angel пишет: Через секунд 20-30 молча слетает чел пропустил ещё одну проверочку ![]() ![]() ----- [nice coder and reverser] ![]() |
|
Создано: 25 июля 2006 08:58 · Личное сообщение · #31 Fallen Angel пишет: Через секунд 20-30 молча слетает чел пропустил ещё одну проверочку там не сложно, лови ExitProcess (насколько я помню) Я бы назвал такой подход не совсем верным поскольку exitprocess является финалом работы защиты а сам механизм защиты спрятан за "исключениями" причем на другой странице так что проследить последовательность up-реверсинга порой бывает трудно (в данной проге) мой же подход с ловлей waitforsingleobject cmp eax,xxx jnz xxx modify jmp является стандартом для прогера данного продукта который он не нарушает с 2003 года и момента появления проги на рынке . И опять же по моим наблюдениям после релиза патча 2003 года афтор усложнил именно выходы на конечные точки проги типа exitprocess, reboot. Ну это конечно не все есть там еще пара вкусностей так что статья думаю выйдет поучительная. ![]() |
<< . 1 . 2 . 3 . >> |
![]() |
eXeL@B —› Основной форум —› Исследование Auto Debug 3.0 |