Kernel mode перехват не Native API

Тема в разделе "WASM.WIN32", создана пользователем ksu_ant, 31 окт 2005.

  1. ksu_ant

    ksu_ant New Member

    Публикаций:
    0
    Регистрация:
    28 сен 2005
    Сообщения:
    273
    Доброе утро!

    Не подскажете, где можно найти примеры перехвата kernel mode не Native API.

    Задача такая - отследить все MessageBox в системе и записать их содержимое в файл.

    Желательно именно пример перехвата функции в kernel mode, а не, например, перечисление всех окон и вырезание из них текста, т.к. может в дальнейшем понадобиться перехват иных функций.

    В общем случае нужен kernel mode перехватчик API функций вида:

    TYPE MyAPIFunction(TYPE param1, TYPE param2, TYPE paramN), по известному имени функции и библиотеки, экспортирующей данную функцию.

    Заранее благодарен за помощь.
     
  2. Saint German

    Saint German New Member

    Публикаций:
    0
    Регистрация:
    13 сен 2003
    Сообщения:
    222
    Как вариант, смотри гибридхук на рутките
     
  3. ksu_ant

    ksu_ant New Member

    Публикаций:
    0
    Регистрация:
    28 сен 2005
    Сообщения:
    273
    А нет ли других подобных примеров?

    Данный файл у меня есть.
     
  4. CARDINAL

    CARDINAL Member

    Публикаций:
    0
    Регистрация:
    23 янв 2004
    Сообщения:
    551
    Адрес:
    Moscow
    ksu_ant

    так и в чём тут вопрос ???? Делается в принципе без проблем, но вот одно Но. Если перехватчик будет располагаться в режиме ядра. Замени начало функции Kernel32!MessageBoxA к примеру каким нибудь диким опкодом, натрави на него обработчик #UD, и как тока сработает , смотри где это и перехватывай себе на здоровье. Тока тебе придётся для этого дела отследить все Процессы и все промапленные странички с куском кода Kernel32!MessageBoxA, потому как если к примеру процесс сделает чтото типа VirtualProtect() на запись на участок данного кода, то получится уже не одна страничка. Вообще вариантов масса огромная как перехват сделать, тока зачем тебе именно из ядра непонятно. Есть методы более приемлимые и менее геморойные.
     
  5. ksu_ant

    ksu_ant New Member

    Публикаций:
    0
    Регистрация:
    28 сен 2005
    Сообщения:
    273
    Из ядра - для того, чтобы это делал драйвер, выполняющий некоторые дополнительные функции