Сейчас на форуме: Rio (+4 невидимых)

 eXeL@B —› Вопросы новичков —› Некоторые проблемы с крекми
Посл.ответ Сообщение

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

Создано: 06 апреля 2008 18:56
· Личное сообщение · #1

Здрасьте всем.
Помогите понять. Есть крекми dump.ru/files/n/n72434786/
Там реализована антиотладка. Я могу её обойти. Но я не могу понять вот чего. В некоторых участках программа не хочет почему то патчиться. Когда я патчу

00401E40 |. 7E 0C JLE SHORT CrkGenMe.00401E4E

после сохраняю все изменения в файл. Всё нормально. Но как только я открываю пропатченный файл в Оле, оказывается что никаких изменений нет. Самое смешное, что если открыть пропатченный файл в каком нить Hiew, он показывает что байты поменялись, но при этом Оля не хочет это видеть. Т.е. Hiew и Оля дают разные результаты считывания файла. Что это за магия?

P.S
Ещё для развития может кто обьяснит, почему при установке бряка на

00401E28 /$ 55 PUSH EBP

он никак не реагирует. Если же вручную трасировать до этого куска, то выводится мессага

"OllyDbg set byte at address 00401E28 to CC (code of command INT3, used as breakpoint). Now this byte contains it is original value 89. Probably you are debugging self modified cods or set breakpoint on data"

Заранее благодарен, если кто поможет.



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

Создано: 06 апреля 2008 20:06
· Личное сообщение · #2

На оба вопроса один ответ - Nukimi пишет:
Probably you are debugging self modified cods


Иными словами крякми в ходе выполнения перезаписывает (модифицирует) секцию кода (или отдельные участки). Скорее всего это делается в SEH'ах хотя не обязательно.

-----
Всем привет, я вернулся




Ранг: 107.5 (ветеран)
Активность: 0.150
Статус: Участник

Создано: 06 апреля 2008 21:31
· Личное сообщение · #3

Nukimi пишет:
не хочет почему то патчиться.

Может программа востанавливает "жизненоважные" байты?

-----
Md5 fcbb6c9c9a5029b24d70f2d67c7cca74




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

Создано: 08 апреля 2008 12:45
· Личное сообщение · #4

Может попробовать ставить аппаратный бряк на чтение/запись тех команд, которые не желают патчиться? Так можно отловить процедуру перезаписи участков кода и отсюда плясать. Отрубить ее вообще или изменить, чтобы записывала то, что тебе нужно. А чтобы убедиться в том, что код переписывается в процессе, может стоит снять дамп и глянуть его хьювом?



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

Создано: 08 апреля 2008 18:48
· Личное сообщение · #5

Раскурил. Оказывается там открывается текущий процесс и в него пишутся определённые данные, восстанавливая прежние байты. Спасибо всем.

P.S. Кстати, может кто даст интересные ссылки на статьи по самомодификации. Естественно гугль рулит, просто может кто то уже знает что и где интересное лежит. Просто интересно стало.


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


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