Сейчас на форуме: YDS, _MBK_, user99 (+9 невидимых)

 eXeL@B —› Основной форум —› Спертые байты UltraProtect 1.x
Посл.ответ Сообщение

Ранг: 253.9 (наставник)
Активность: 0.130
Статус: Участник

Создано: 31 декабря 2005 02:39
· Личное сообщение · #1

Может кто-нибудь помочь по восстановлению сабжа? С импортом я разобрался, а вот со спертыми байтами пока нет...
На форуме уже проходила тема от 25 ноября, но там никто ничего так и не сказал.
Жду ответов!

-----
MicroSoft? Is it some kind of a toilet paper?





Ранг: 199.6 (ветеран), 12thx
Активность: 0.10
Статус: Участник
www.uinc.ru

Создано: 31 декабря 2005 04:04
· Личное сообщение · #2

Они размазаны по всему телу протектора между слоями полиморфа - проще методом медитаци восстановить.



Ранг: 253.9 (наставник)
Активность: 0.130
Статус: Участник

Создано: 31 декабря 2005 05:05
· Личное сообщение · #3

Ты, наверное, имел в виду code replacement? Я это трогать не собирался, а восстановить хотел scrambled OEP.

-----
MicroSoft? Is it some kind of a toilet paper?




Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 31 декабря 2005 05:53
· Личное сообщение · #4

Tim
Посмотри на www.reversing.be/topic=tutorials есть хороший мануал по снятию UltraProtect 1.x!



Ранг: 253.9 (наставник)
Активность: 0.130
Статус: Участник

Создано: 31 декабря 2005 07:44 · Поправил: Tim
· Личное сообщение · #5

pavka
Эх, да есть он у меня... =( Но все равно, thanks

-----
MicroSoft? Is it some kind of a toilet paper?




Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 31 декабря 2005 08:00
· Личное сообщение · #6

Tim
НЕ растраивайся! Другого способа все равно нет, как самому разбираться! Мануал там хороший на реальной программе!




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

Создано: 31 декабря 2005 11:49
· Личное сообщение · #7

вообще с краденым на оеп кодом всё зависит от версии... в более старых, где байты крадутся только до первого call, действительно рулит медитация =) В старших версия тырят уже, к примеру, весь дельфи-стаб - там уже медитация врятли поможет (по крайней мере я не на том уровне владею медитацией =)), поэтому надо ставить EP на начало выполнения краденых байт, но там тоже будут свои заморочки связанные с тем что между слоями выполнения этих байт прот иногда юзает свою иат - соответственно надо восстановить и его извратную иат (несложно впринципе - взять код её формирования из самого прота).
ЗЫ ещё я видел ацпр в котором байты стыренные до первого call выполняются где-то вначале кода прота (ещё до раскриптовки запакованного кода и формирования импорта), а остальные выполняются уже на своём месте... но в принципе это не сильно усложняет распаковку.



Ранг: 253.9 (наставник)
Активность: 0.130
Статус: Участник

Создано: 01 января 2006 00:17
· Личное сообщение · #8

Вот, залил вырезанный exe'шник проги.

ripped_exe.7z http://timqwerty.narod.ru/ripped_exe.7z - 3,56 МБ

-----
MicroSoft? Is it some kind of a toilet paper?




Ранг: 253.9 (наставник)
Активность: 0.130
Статус: Участник

Создано: 01 января 2006 08:05
· Личное сообщение · #9

Есть небольшое движение... но оно слишком медленное... Пытаюсь найти начало краденого OEP...

-----
MicroSoft? Is it some kind of a toilet paper?




Ранг: 253.9 (наставник)
Активность: 0.130
Статус: Участник

Создано: 02 января 2006 05:27 · Поправил: Tim
· Личное сообщение · #10

DrGolova, Mario555
Что это еще за метод медитации? Скажите нормальными словами!

Кстати, если запустить прогу без скрытия отладчика, то она упадет прямо на OEP, т.к. там будут нули (их ровно 40), прямо до первого call. Это, похоже, меняет дело. Что делать дальше?

Дамп, с восстановленным импортом:
Dumped_.7z http://timqwerty.narod.ru/Dumped_.7z - 2,57 МБ

-----
MicroSoft? Is it some kind of a toilet paper?




Ранг: 253.9 (наставник)
Активность: 0.130
Статус: Участник

Создано: 02 января 2006 09:18 · Поправил: Tim
· Личное сообщение · #11

Добрался таки до самого интересного для меня места!!!

00B720A7 8BDE MOV EBX, ESI
00B720A9 E8 5290FFFF CALL opm.00B6B100
00B720AE 8B85 4B814100 MOV EAX, DWORD PTR SS:[EBP+41814B]
00B720B4 0385 46F84000 ADD EAX, DWORD PTR SS:[EBP+40F846]
00B720BA 8985 4B814100 MOV DWORD PTR SS:[EBP+41814B], EAX
00B720C0 E8 3B90FFFF CALL opm.00B6B100
00B720C5 C685 08814100 E>MOV BYTE PTR SS:[EBP+418108], 0E8
00B720CC E8 2F90FFFF CALL opm.00B6B100
00B720D1 C785 09814100 F>MOV DWORD PTR SS:[EBP+418109], 25FF
00B720DB 8D85 4B814100 LEA EAX, DWORD PTR SS:[EBP+41814B]
00B720E1 8985 0B814100 MOV DWORD PTR SS:[EBP+41810B], EAX
00B720E7 E8 1490FFFF CALL opm.00B6B100
00B720EC 8DBD B87E4100 LEA EDI, DWORD PTR SS:[EBP+417EB8]
00B720F2 8D8D FD804100 LEA ECX, DWORD PTR SS:[EBP+4180FD]
00B720F8 2BCF SUB ECX, EDI
00B720FA C1E9 02 SHR ECX, 2
00B720FD E8 CC87FFFF CALL opm.00B6A8CE
00B72102 AB STOS DWORD PTR ES:[EDI]
00B72103 ^ E2 F8 LOOPD SHORT opm.00B720FD
00B72105 61 POPAD
00B72106 EB 01 JMP SHORT opm.00B72109


Обратите внимание на последний джамп. Он ведет нас на прыжок к false OEP (в секции кода). Кстати, этот прыжок динамически генерируется вышеприведенным кодом.

Вот он:

00B72109 - FF25 4B21B700 JMP DWORD PTR DS:[B7214B] ; opm.009E99C0

Как видно из комментария, это false OEP.

Сейчас нужно разобраться, где в этом коде наш настоящий OEP.

Жду ваших умозаключений!

Листинг процедуры 00B6B100:

00B6B100 E8 00000000 CALL opm.00B6B105
00B6B105 5D POP EBP
00B6B106 81ED 05114100 SUB EBP, opm.00411105
00B6B10C C3 RETN


Листинг процедуры 00B6A8CE:

00B6A8CE 52 PUSH EDX
00B6A8CF 0F31 RDTSC
00B6A8D1 C1D0 02 RCL EAX, 2
00B6A8D4 05 8F02A742 ADD EAX, 42A7028F
00B6A8D9 13C4 ADC EAX, ESP
00B6A8DB 33C1 XOR EAX, ECX
00B6A8DD 3185 D5084100 XOR DWORD PTR SS:[EBP+4108D5], EAX
00B6A8E3 034424 F8 ADD EAX, DWORD PTR SS:[ESP-8]
00B6A8E7 D1D0 RCL EAX, 1
00B6A8E9 5A POP EDX
00B6A8EA C3 RETN


-----
MicroSoft? Is it some kind of a toilet paper?




Ранг: 253.9 (наставник)
Активность: 0.130
Статус: Участник

Создано: 02 января 2006 09:43 · Поправил: Tim
· Личное сообщение · #12

Edit:
Что-то я гоню сегодня... То, что я здесь написал до этого - лучше не читать!

-----
MicroSoft? Is it some kind of a toilet paper?




Ранг: 253.9 (наставник)
Активность: 0.130
Статус: Участник

Создано: 02 января 2006 10:49
· Личное сообщение · #13

Такие новости:
OEP похоже не краденый вовсе. Дамп падает по адресу 00403D4E, там идет вызов CALL EAX, причем EAX - нормальный адрес, прога падает дальше. Судя по коду, который там выполняется - это что-то от протектора (вот гад - даже в секции кода обустроился!).

Выручайте, млин!

-----
MicroSoft? Is it some kind of a toilet paper?



 eXeL@B —› Основной форум —› Спертые байты UltraProtect 1.x
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати