
20.01.2009, 13:32
|
|
Постоянный
Регистрация: 25.05.2007
Сообщений: 448
С нами:
9981026
Репутация:
1564
|
|
Сначала мы заталкиваем в стек регистр флагов
pushfd
потом он оказывается в eax
pop eax
http://sasm.narod.ru/apps/eflags/main.htm
формат регистра EFLAGS. Взводим 8 бит
bts eax, 8
после этого после каждой инструкции будет генерироваться отладочное исключение #db. После первого исключения бит сбрасывается снова. Перед установкой флага трассировки, устанавливается SEH обработчик, и мы отправляемся в него при возникновении #DB. трюк старый же
PS
>> тут все просто, TP флаг возводится
Флаг TF называется вообще-то
PPS Нет бы заюзать трассировку ветвлений для самотрассировки; объявить свои сегменты кода, данных в GDT (для этого, ясное дело, драйвер написать), причем селектор на новый дескриптор получать динамически из драйвера, на ходу самомодифицируясь, активно прыгать между сегментами и тд. вот доразберусь в vmcb (это к теме amd-v), так напишу вам что-нибудь ядерное фо фан, если хотите. защитку, аля кракми
Последний раз редактировалось 0x0c0de; 20.01.2009 в 13:52..
|
|
|