![]() |
eXeL@B —› Вопросы новичков —› *.pyc inject |
Посл.ответ | Сообщение |
|
Создано: 18 апреля 2011 19:35 · Личное сообщение · #1 Добрый день. Подскажите пож-та я изучаю дизасемблер питона UnPyC имне интересно как сделать инжект своего кода в откомпилированные файлы питона *.pyc наподобие как это делает Cheat Engine. Тоесть в определенном месте кода указываем безусловный переход на нош адрес (который надо както внедрить в адресное пространство) затем выполняется произвольный код и вновь безусловный переход к следующей строке после той где мы делали перехват изначально. Для примера предлагаю три файлика собраных только что лично. sample.py - исходник sample.pyc - транслированный файл sample.txt - дизасемблированный файл лог программы UnPyC Задача: перехватить установку константы равной 10 и заменить её на нашу в созданном новом адресном пространстве затем вернуться к выполнению программы. Помогите изучающему, будте так добры. ![]() ![]() |
|
Создано: 18 апреля 2011 19:36 · Личное сообщение · #2 |
|
Создано: 18 апреля 2011 19:36 · Личное сообщение · #3 |
|
Создано: 18 апреля 2011 19:58 · Личное сообщение · #4 |
|
Создано: 18 апреля 2011 22:31 · Личное сообщение · #5 |
|
Создано: 18 апреля 2011 23:19 · Личное сообщение · #6 |
|
Создано: 18 апреля 2011 23:55 · Личное сообщение · #7 fenicks пишет: перехватить установку константы равной 10 и заменить её на нашу в созданном новом адресном пространстве затем вернуться к выполнению программы. а изменить саму константу не подойдёт? Там всё достаточно ясно 00000036 INT: 10 (0A 00 00 00), в фаиле по смещению 00000036 мы видим 69 0A 00 00 00 меняем значение и смотрим что получилось. я не проверял) с опкодами тоже всё ясно, находишь их в фаиле и меняеш или дописываешь, но это всё надо проверить на практике, а так дизасемблер отличный) ----- zzz ![]() |
|
Создано: 19 апреля 2011 00:02 · Личное сообщение · #8 |
![]() |
eXeL@B —› Вопросы новичков —› *.pyc inject |