eXeL@B —› Программирование —› Прерывание в Windows (Privileged Instruction) |
Посл.ответ | Сообщение |
|
Создано: 19 октября 2008 20:38 · Личное сообщение · #1 Здравствуйте. Как можно выполнить прерывание в Виндоусе, если при выполнении программы (примеры нашёл в интернете на яз. С), получаю сообщение: Privileged Instruction, либо просто ошибку приложения. Пытался писать на ассемблере, хотел получить скан код клавиши in al, 60h, все равно получаю сообщение о привилегированной инструкции. А у меня задание, выполнить прерывание клавиатуры в Windows, пытался искать в интернете решение, но что-то говорилось про Ring0, так я и не понял что нужно сделать. Можно ли выполнить прерывание в винде и какими способами? |
|
Создано: 19 октября 2008 20:52 · Поправил: coderess · Личное сообщение · #2 Можно ли выполнить прерывание в винде и какими способами? Самый простой способ, это написать простейший драйвер и вызывать из него свой код, также есть способ получения привилегий ring0, через баг в Windows, такая техника использовалась в вирусах - модификация IDT (Interrupt Descriptor Table), x86 инструкция sidt, для подробного изучения смотри Руководство от Билли Бельчебю wasm.ru/article.php?article=vgw05 ----- Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes |
|
Создано: 19 октября 2008 21:32 · Личное сообщение · #3 |
|
Создано: 19 октября 2008 22:05 · Личное сообщение · #4 |
|
Создано: 19 октября 2008 22:15 · Личное сообщение · #5 Ну и причём тут форум исследования защиты? Почитайте хотя бы немного про защищённый режим работы процессора, про кольца защиты и про то, что все подряд прерывания дёргать не приведёт ни к чему хорошему. Либо пишите под дос, либо драйвер, либо юзайте документированные функции винапи. Топик закрыт, ибо никак не по тематике. |
eXeL@B —› Программирование —› Прерывание в Windows (Privileged Instruction) |
Эта тема закрыта. Ответы больше не принимаются. |