![]() |
eXeL@B —› Вопросы новичков —› Странный UPX |
Посл.ответ | Сообщение |
|
Создано: 14 августа 2007 19:51 · Личное сообщение · #1 Здравствуйте! Недавно мне попалась одна прога Power Mixer (аудио микшер).Я испробовал кучу анализаторов(PEID, RDG, EXEinfo) разных версий, но результат один и тот-же Nothing found *. Только DIE говорит UPX <modified>. Прога явно запакована, но с подобным пакером я ещё не встречался. EP: 004CD060: 55 push ebp 004CD061: 8BEC mov ebp, esp 004CD063: 83EC40 sub esp, 00000040h 004CD066: 53 push ebx 004CD067: 56 push esi 004CD068: 57 push edi 004CD069: 60 pushad 004CD06A: E800000000 call 004CD06Fh 004CD06F: B929434000 mov ecx, 00404329h 004CD074: 81E989394000 sub ecx, 00403989h 004CD07A: 5A pop edx 004CD07B: 81EA2F394000 sub edx, 0040392Fh 004CD081: 8BEA mov ebp, edx Пытаюсь запустить в отладчике , вылетает с ошибкой. Заранее спасибо за любую помощь. Ссылки: slil.ru/24714600 (файлы отдельно) ~300kb slil.ru/24714606 (инст.) ~500kb ![]() |
|
Создано: 14 августа 2007 22:02 · Личное сообщение · #2 |
|
Создано: 14 августа 2007 23:26 · Поправил: El_Diablo · Личное сообщение · #3 |
|
Создано: 14 августа 2007 23:29 · Личное сообщение · #4 похоже UPX обработанный какой-то дрянью. Взял олю от внекрилова+плагин от хелла. И все будет тип топ. ![]() ![]() |
|
Создано: 14 августа 2007 23:33 · Личное сообщение · #5 |
|
Создано: 15 августа 2007 09:50 · Поправил: ReZiDenT_USSR · Личное сообщение · #6 |
|
Создано: 15 августа 2007 10:46 · Личное сообщение · #7 |
|
Создано: 15 августа 2007 17:16 · Личное сообщение · #8 cadet Распакованный файл действительно не запускается. Я распаковывал так: hr esp-4 жмем 2 раза, далее применяем плагин Analyse This!, потом F8, потом Shift+F8, попадаем в область системных библиотек, выходим из нее по F8, далее попадаем в функцию программы: 004C8781 BE 00704800 MOV ESI,00487000 Листаем вниз находим прыжок на OEP: 004C8934 - E9 B379F8FF JMP 004502EC - ставим бряк Ну и F8, мы на OEP. Но все равно файл после этого не запускается. Может кто знает в чем беда? ![]() |
|
Создано: 15 августа 2007 17:19 · Личное сообщение · #9 Распаковал: Entry Point: 000502EC Image Base: 00400000 Image size: 000D1200 Мне кажется где-то есть просто проверочка на распакованность... ReZiDenT_USSR пишет: Из всех имеющихся у меня модификаций OllyDBG запускается только в ODBG для execryptor'а У меня запустилось в обычной ольке(только со стилем от TSRh). Плагины которые у меня тут стоят: 1 CommandBar 2 Code Ripper 3 HideDebugger 4 OllyDump 5 FullDisasm 6 OdbgScript и всё. ![]() ----- все багрепорты - в личные сообщения ![]() |
|
Создано: 15 августа 2007 17:29 · Личное сообщение · #10 HandMill пишет: Распаковал: Entry Point: 000502EC Image Base: 00400000 Image size: 000D1200 У меня аналогично, но когда я запускаю мой распакованный файл он просто не запускается и ничего не пишет, т.е. симптомы как-будто стоит таймер или проверка на распакованность, а когда от cadet и HandMill, то выдает ошибку, интересно почему так? ![]() |
|
Создано: 15 августа 2007 18:27 · Поправил: ReZiDenT_USSR · Личное сообщение · #11 HandMill пишет: Распаковал: Entry Point: 000502EC Image Base: 00400000 Image size: 000D1200 У меня всё тоже самое, но прога запускается и терминейдиться в этом месте: 00451353 |. /74 07 JE SHORT 0045135C <-- если занопить, происходит ошибка 00451355 |. |E8 1D000000 CALL 00451377 0045135A |. |5F POP EDI 0045135B |. |C3 RET 0045135C |> \FF7424 08 PUSH DWORD PTR SS:[ESP+8] ; /ExitCode 00451360 |. 893D 54C64A00 MOV DWORD PTR DS:[4AC654],EDI ; | 00451366 \. FF15 50B24700 CALL DWORD PTR DS:[<&kernel32.ExitProces>; \ExitProcess 0045136C . 5F POP EDI 0045136D . C3 RET deepred пишет: но когда я запускаю мой распакованный файл он просто не запускается и ничего не пишет скорее всего тоже самое. P.S. Незнаю, может быть у меня одного только так, дамп cadet 'а нормально запустился несколько раз, а потом стал выдавать при запуске ошибку ![]() ![]() |
|
Создано: 15 августа 2007 22:35 · Личное сообщение · #12 |
|
Создано: 15 августа 2007 23:16 · Личное сообщение · #13 |
|
Создано: 16 августа 2007 05:47 · Личное сообщение · #14 |
|
Создано: 16 августа 2007 05:52 · Личное сообщение · #15 ReZiDenT_USSR Вот, попробуй этот вариант, у меня работает нормально. Пришлось пропатчить, чтобы не вылетал. ![]() ![]() |
|
Создано: 16 августа 2007 08:53 · Поправил: ReZiDenT_USSR · Личное сообщение · #16 |
|
Создано: 16 августа 2007 09:46 · Личное сообщение · #17 |
|
Создано: 16 августа 2007 10:42 · Личное сообщение · #18 Там мутирующий код так прыжок на oep выглядит до запуска 004C891F 8F ??? ; Unknown command 004C8920 C8 C6876C ENTER 87C6,6C 004C8924 FF81 856EA4C1 INC DWORD PTR DS:[ECX+C1A46E85] 004C892A 5A POP EDX 004C892B 81D4 8812BE42 ADC ESP,42BE1288 004C8931 46 INC ESI 004C8932 EE OUT DX,AL ; I/O command 004C8933 3F AAS 004C8934 E3 2A JECXZ SHORT pwmixer1.004C8960 004C8936 AD LODS DWORD PTR DS:[ESI] 004C8937 2B2D ADAAA7A4 SUB EBP,DWORD PTR DS:[A4A7AAAD] А так перед прыжком 004C8922 57 PUSH EDI 004C8923 FFD5 CALL NEAR EBP 004C8925 58 POP EAX 004C8926 61 POPAD 004C8927 8D4424 80 LEA EAX,DWORD PTR SS:[ESP-80] 004C892B 6A 00 PUSH 0 004C892D 39C4 CMP ESP,EAX 004C892F ^ 75 FA JNZ SHORT pwmixer1.004C892B 004C8931 83EC 80 SUB ESP,-80 004C8934 - E9 B379F8FF JMP pwmixer1.004502EC Интересно, что это за криптор ![]() ![]() |
|
Создано: 16 августа 2007 15:25 · Личное сообщение · #19 ReZiDenT_USSR пишет: Там мутирующий код так прыжок на oep выглядит до запуска 004C891F 8F ??? ; Unknown command 004C8920 C8 C6876C ENTER 87C6,6C 004C8924 FF81 856EA4C1 INC DWORD PTR DS:[ECX+C1A46E85] 004C892A 5A POP EDX 004C892B 81D4 8812BE42 ADC ESP,42BE1288 004C8931 46 INC ESI 004C8932 EE OUT DX,AL ; I/O command 004C8933 3F AAS 004C8934 E3 2A JECXZ SHORT pwmixer1.004C8960 004C8936 AD LODS DWORD PTR DS:[ESI] 004C8937 2B2D ADAAA7A4 SUB EBP,DWORD PTR DS:[A4A7AAAD] Нет там мутирующего кода. Можешь поставить бряк на выполнение и он не сработает. У всех трабл возник, из-за того что в распакованном файле функция 0042D1AD FF15 88B34700 CALL DWORD PTR DS:[<&kernel32.OpenMutexA>; kernel32.OpenMutexA возвращает ноль, а в не распакованном файле возвращается хендл. deepred пишет: Просто занопил это место: 0042D1C4 F735 7CA44A00 DIV DWORD PTR DS:[4AA47C] По адресу 4AA47C как раз должен лежать хендл, а лежит ноль поэтому возникало исключение и прога завершалась. Дальше по коду есть ещё вызов kernel32.OpenMutexA в моем дампе возвращается ноль, в дампе deepred возвращается хендл. Я вообщем накосячил с импортом, не туда его записал. 0042DF7E F7F9 IDIV ECX Чуть ниже опять идет деление на ноль(хендл), если занопить, то наг не появляется. Полазил по инету почитал про функцию OpenMutexA, но так и не понял нафиг она нужна, что такое мутексы и почему в распакованном файле она возвращает ноль. Может кто мне объяснит доступным крякерским языком, чё за функция такая? ![]() |
|
Создано: 16 августа 2007 16:26 · Личное сообщение · #20 |
|
Создано: 16 августа 2007 16:56 · Личное сообщение · #21 |
![]() |
eXeL@B —› Вопросы новичков —› Странный UPX |