Перехват функции в Win 7

Тема в разделе "WASM.NT.KERNEL", создана пользователем drem1lin, 30 июн 2011.

  1. drem1lin

    drem1lin Member

    Публикаций:
    0
    Регистрация:
    17 мар 2009
    Сообщения:
    300
    Здравствуйте, понадобилось перехватить функцию KeGetCurrentIrql в win 7 32-bit sp0, для этого я патчу таблицу импорта ядра, подменяя адрес функции на адрес своего обработчика. Обработчик лежит в странице памяти с заголовком ядра (ядру на него пофиг). Но при патче система сразу уходит в ребут, я не вижу ни синего экрана, ни собщений об ошибке, сразу экран биос. Это срабатывает какая либо защита ядра? тогда как ее выключить? может нужно использовать какие либо другие методы перехвата? сразу отмечу что перехват всех вызовов мне не нужен. Из методов я еще знаю патч таблицы экспорта hal.dll (он экспортирует эту функцию) и патч самой функции (первые 5 байт заменить на jmp). Код работать должен и в xp и в семерке, поэтому 3 вариант мне не очень нравиться тем, что код функции может различаться в этих системах. Код обработчика рабочий и проверен в xp и vista.
     
  2. shchetinin

    shchetinin Member

    Публикаций:
    0
    Регистрация:
    27 май 2011
    Сообщения:
    715
    cr0 зачиту снимаете ?
    А лучше код патча в студию ...
     
  3. 7mm

    7mm New Member

    Публикаций:
    0
    Регистрация:
    15 дек 2009
    Сообщения:
    442
    Кстати, снимать в ядре CR0.WP не так уж и безопасно
     
  4. drem1lin

    drem1lin Member

    Публикаций:
    0
    Регистрация:
    17 мар 2009
    Сообщения:
    300
    shchetinin снимаю, сам то код в ядре лежит, а вот на патч таблицы он отзывается перезагрузкой
    Код (Text):
    1. mov edx, KeGetCurrentIrql
    2. call edx
    3. ret
     
  5. klzlk

    klzlk New Member

    Публикаций:
    0
    Регистрация:
    2 июн 2011
    Сообщения:
    449
    Портить ядро не годно. И вообще для чего вам KeGetCurrentIrql() ?
     
  6. drem1lin

    drem1lin Member

    Публикаций:
    0
    Регистрация:
    17 мар 2009
    Сообщения:
    300
    вы еще скажите не богуугодно. что бы узнать уровень привилегий:)
     
  7. klzlk

    klzlk New Member

    Публикаций:
    0
    Регистрация:
    2 июн 2011
    Сообщения:
    449
    drem1lin
    Не богоугодно, если вам так нравится. Для нас в таком случае бог - антируткит и всё не богоугодное выносится одним нажатием кнопки.
     
  8. drem1lin

    drem1lin Member

    Публикаций:
    0
    Регистрация:
    17 мар 2009
    Сообщения:
    300
    Давайте все-таки вернемся к сабжу, из-за чего происходит перезагрузка?
     
  9. JivotnoE

    JivotnoE New Member

    Публикаций:
    0
    Регистрация:
    31 мар 2009
    Сообщения:
    10
    drem1lin
    код патча и обработчика в студию.
     
  10. drem1lin

    drem1lin Member

    Публикаций:
    0
    Регистрация:
    17 мар 2009
    Сообщения:
    300
    привет некромантам) это было актуально месяц назад
     
  11. x64

    x64 New Member

    Публикаций:
    0
    Регистрация:
    29 июл 2008
    Сообщения:
    1.370
    Адрес:
    Россия
    Ну так напиши, как решил проблему.
     
  12. drem1lin

    drem1lin Member

    Публикаций:
    0
    Регистрация:
    17 мар 2009
    Сообщения:
    300
    косяки свои нашел)