В недавнем номере журнала хакер Крис описывает перехват sysenter'a с помощью модификации MSR регистров. Я как то давно пробовал этот метод - вроде все пошло гладко, даже слишком гладко. Собственно вопрос - какие подводные камни могут встретится при таком перехвате? На что нужно обратить внимание. Кстати, может кто-то занает - Page Guard на х64 отловит такой перехват?
А смотря для каких целей он тебе. И как именно ты перехватываешь. И что хочешь получить. Описывай конкретнее. PS. Было бы неплохо ознакомить с кодом тогда уж, ибо г*вноКсакеп читают не все
Цель стандартная - перехватить функцию, проанализировать ее аргументы и решить что с ней сделать. Или вызвать настоящую функцию, или просто вернуть STATUS_ACCESSDENIED
для меня достаточно покрытие только для компьютеров с новыми cpu. В принципе можно аналогичным образом подменить прерывание 48. Что меня удивляет - вроде техника такого перехвата очень проста, но реально не используется
а что это за прерывание? особенности: сисентер в винде вызывается сверх часто. переключается стэк сталкивался с такой проблемой, что какая то дровина на реальном компе меняла состояние МSR регистров, записывая туда свои значения. подробности не помню.