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

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

Ранг: 1.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 19 июня 2006 16:42
· Личное сообщение · #1

Я новичок, помогите разобраться мне с простым вопросом.
Существует ПрогаВ1 и существует лоадер для нее меняющий в памяти байты.
Подскажите НОВИЧКУ как можно определить по каким а дресам и какие байты меняет лоадер?
Вопрос задаю в связи с тем что вышла нов вер. ПрогаВ2 и надо сделать лоадер для нее.
Пробовал делать дампы прогВ1иВ2 при помощи Оли. Потом сравнивал полученные дампы Винхексом,
находил различия, но понял что иду по неправильному пути, так как измененные адреса в памяти процеса и адрес в сравниваемых дампах трудно сопоставить, а мне надо найти изменяемую функцию, привести ее в 16 разр вид и сделать лоадер ищущий и заменяющий в проге2 последовательность байт (функцию).
Видимо существует 2 метода:
1. Анализ самого патчера.
2. Анализ памяти изменяемого процесса и сравнение...
Прошу Уважаемых ГУРУ помощи, что и как делать, может быть есть статьи на эту тему - для самых маленьких, дайте наипростейшие ПОНЯТНЫЕ НЕИСКУШЕННЫМ методики решения проблемы.
Заранее благодарен всем отозвавшимся.



Ранг: 1.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 19 июня 2006 16:56 · Поправил: Muss
· Личное сообщение · #2

И еще: лоадер который запускает ПрогуВ1 работает по принципу поиска активного процесса ПрогиВ1 и потом там меняет, автоматом подхватывает все запущенные процессы ПрогиВ1.
Лоадер для ПрогиВ2 хочу сделать при омощи патчмейкера, чтоб также перехватывал процессы.

Основную проблему для меня составляет поиск измененных мест в проге1 после пропатчивания.



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

Создано: 19 июня 2006 17:30
· Личное сообщение · #3

Muss
Ответы увы не тривиальны.
1) Чтобы узнать патч для 1-й программы - бряк по WriteProcess..... и анализируешь для чего это место патчили. Достаточно просто, если в проге нет антитладочных приемов.
2) Чтобы перенести патч на 2-ю(обновленную программу) - ищешь похожие места и проверяешь, что ничего нового не добавлено. Потом делаешь патчер/лоадер. Может оказаться, что в новом варианте поменяли защиту - тогда этот вариант не пройдет. Ну и главное, чтобы сделать пункт 1 и 2, надо самому быть совсем не новичком во взломе.



Ранг: 1.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 20 июня 2006 03:22 · Поправил: Muss
· Личное сообщение · #4

1) Антиотладочные приемы в Проге1 и патчере есть( yoda's Protector).
2) С прогой2 патчер работать не будет (Определяет версию жертвы, а потом патчит), чтоб найти похожие места надо знать где делает изменения в Проге1 патчер.

Неужели так все сложно? Даже ВинХР есть какаято дребедень которая постоянно ругается пока ее не отключиш что мол прога обратилась к памяти другого процесса...
А вот как эти обращения проследить и узнать куда и что пишет?

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

Заранее благодарен всем отозвавшимся.



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

Создано: 20 июня 2006 03:24
· Личное сообщение · #5

анализ кода патчера в Ида и дебаггере
других советов быть не может




Ранг: 793.4 (! !), 568thx
Активность: 0.740
Статус: Участник
Шаман

Создано: 20 июня 2006 09:01
· Личное сообщение · #6

Бряк на CreateProcess, дампишь чистый exe.
Бряк на ResumeThread, дампишь пропатченый exe
Сравниваешь два дампа, находишь различия. Выделяешь сигнатуры пропатченых мест.
Окрываешь в OllyDbg прогу2 и ищешь там эти сигнатуры и запоминаешь адреса, (если нет, то облом)
Пишешь новый лоадер, втыкая в него новые адреса и что изменено во втором дампе.

-----
Yann Tiersen best and do not fuck




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

Создано: 20 июня 2006 09:53
· Личное сообщение · #7

Muss пишет:
Неужели так все сложно?

Совсем несложно. Вверху страницы есть пункт "Новичку". Прочитав его, и в зависимости от способностей через N-ое время сможешь сделать. Обнаружить обращение совсем несложно, в случае лоадера это еще проще, но вот для "апгрейда патча" нужно хоть чуть-чуть разбираться в системе команд, в системных функциях, в протекторе yoda и т.д. и т.п.
Странно, почему-то никто из новичков, не спрашивает как научится водить автомобиль, а читают Правила и Инструкции, а вот с компом все считают себя ассами.



Ранг: 1.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 28 июня 2006 18:53 · Поправил: Muss
· Личное сообщение · #8

Решение для чайников найдено =)

Всем спасибо за ответы и советы, учту все на будущее.
С данной проблемкой всеже получилось справиться как мне кажется проще.
Случайно наткнулся на старую прогу переделанную под ХР "TrainerSpy"
_http://www.team-x.ru/xforum/index.html?act=Attach&type=post&id=28889

Запустив через нее патчер в окне TrainerSpy увидел все обращения патчера к памяти ПрогиВ1, присоединив Олю к процессу ПрогиВ1 пробежался по ее памяти и переписал байты функций в которых патчер сделал изменения. Аналогично запустил ПрогуВ1 без патчера и переписал байты функций.
При помощи патчмейкера dup2 сделал патчик по поиску и замене.
Может мне просто повезло - в общем все прокатило.

Единственная проблема заключается в проге TrainerSpy - глючит, с некоторыми патчерами вообще не работает, нет функции создания лога. Есть ли еще альтернативный софт подобного рода?




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 28 июня 2006 19:57
· Личное сообщение · #9

любой api монитор
перехватываешь функции записи в память

-----
[nice coder and reverser]




Ранг: 1.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 29 июня 2006 01:12
· Личное сообщение · #10

Спасибо за ответ, вот только я раньше штуки 3 api мониторов разных скачал - а толку ноль. Не мог их настроить для работы, сильно глючило и все висло - у меня Вин2003серв. Если у кого получилось настроить дайте пожалуйста ссылку на такой нормальный монитор под 2003винду с файлом настроек на логирование WriteProcessMemory исследуемой программы-процесса.
Хочется еще и таким инструментом попробовать, ведь в TrainerSpy нет логирования результатов и в общем очень неудобно из нее было все переписывать, ну и еще глюки там есть.


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


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