Перехват API-функций

Тема в разделе "WASM.WIN32", создана пользователем _vovan_, 13 окт 2004.

  1. _vovan_

    _vovan_ New Member

    Публикаций:
    0
    Регистрация:
    13 окт 2004
    Сообщения:
    18
    Делаю прогу, скрывающуюся от Ctrl-Alt-Del в Win2000.

    Все это через перехват функций. Вроде все работает, DLL'ка мэпится во все процессы, запущенные в системе, вроде успешно. Во вновь создаваемые тоже (перехват NtCreateThread и еще одной функции). Делаю проге привилегии отладчика - все ОК! Не сказал о самом главном - перехват осуществляю посредством изменения таблиц импорта во всех модулях процесса. Перехватываю даже LdrGetProcedureAddress. Но при запуске TaskManager'а вываливается exception и баста. Я знаю, что еще надо перехватить LdrLoadDll, но не знаю как реализовать тело перехватчика.

    Может быть после этого все заработает и TaskManager не будет материться?!
     
  2. ProgramMan

    ProgramMan New Member

    Публикаций:
    0
    Регистрация:
    13 янв 2004
    Сообщения:
    263
    Коокго рода ошибка? На какой адрес?

    Пробовал смотреть через отладчик, например SoftICE?



    Не проще было создать свой поток в системном процессе или оформить всю прогу как системную dll или сервис.
     
  3. _vovan_

    _vovan_ New Member

    Публикаций:
    0
    Регистрация:
    13 окт 2004
    Сообщения:
    18
    А что я выиграю от создания потока в системном процессе?

    Если у меня будет тело перехватчика LdrLoadDll, то мне кажется, что все будет работать. Может я не прав?

    Мне нужны описания структур, с которыми работает LdrLoadDll.

    HELP!!!
     
  4. PavPS

    PavPS New Member

    Публикаций:
    0
    Регистрация:
    24 фев 2004
    Сообщения:
    109
    Адрес:
    Russia
    А каких структур то? там вроде peb,teb - они известны. Может PLDR_DATA_TABLE_ENTRY, так вот: http://club.shelek.com/viewart.php?id=135.



    Иль не то?



    P.S.: А зачем сректуры то. Наверное достаточно знать адрес модуля на диске, который передаётся ввиде параметра...
     
  5. _vovan_

    _vovan_ New Member

    Публикаций:
    0
    Регистрация:
    13 окт 2004
    Сообщения:
    18
    Например, структура IN_INITIALIZATION_ORDER_MODULE_LIST и остальные, так или иначе связанные с LdrLoadDll. Мне нужно как-то слобать тело перехватчика.