Текущий архив: 2003.06.09;
Скачать: CL | DM;
Вниз
Как добраться до адреса с переменными какой-то пргоги. Найти похожие ветки
← →
sam-Lite (2003-05-29 09:04) [0]Как можно узнать по какому адресу в памяти находятся переменные какой-нибудь программы.
Например есть проги-взломщики, которые ищут определённые значения в памяти (например кол-во жизней, если прога игра) и после долгого отбора и смены значения искомого куска памяти (в игре - жизни) находит один единственный адрес, по которому и находится нужное тебе значение. Как эти проги определяют границы поиска для определённой программы?
← →
Digitman © (2003-05-29 09:43) [1]как делают эти проги собственно "интеллектуальную работу" по поиску чего-то там - не знаю... мало ли всяких "прог" понаделано)
а вот поиск сам непременно осуществляется в вирт.адр.пространстве этих "прог": копируется фрагмент за фрагментом "чужой" вирт.памяти в "свое" адр.-пр-во, и уже копии в цикле одна за одной анализируются на предмет наличия интересующей инф-ции
копирование анализируемых регионов вирт.памяти "оригинала" может осуществляться с пом-ю "джентльменского" набора ф-ций OpenProcess(), VirtualQueryEx(), VirtualProtectEx(), ReadProcessMemory()
после нахождения в одном из прочитанных и проанализированных регионов требуемой модели поиска модифицированная в своем адр.пр-ве копия региона (либо его фрагмента) копируется обратно, в вирт.адр.пр-во "оригинала" - с пом-ю ф-ции WriteProcessMemory()
← →
BraiN © (2003-05-29 16:18) [2]А как определить с какого по какой адрес искать?
← →
Digitman © (2003-05-29 16:29) [3]
> BraiN
как минимум - с каждого из адресов загрузки образов исп.модулей в адр.пр-во целевого процесса.
см. описание структуры PE-файлов и поле ImageBase.
Страницы: 1 вся ветка
Текущий архив: 2003.06.09;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.02 c