Узнать какой объект используется

Тема в разделе "WASM.NT.KERNEL", создана пользователем 2FED, 3 авг 2008.

  1. 2FED

    2FED New Member

    Публикаций:
    0
    Регистрация:
    20 фев 2008
    Сообщения:
    1.002
    Как в перехватчике NtCreateFile/IoCreateFile узнать какой объект используется, необходимо обрабатывать только FILE_OBJECT а остальные пропускать.

    ObReferenceObjectByHandle возаращает объект но как их различать я не знаю,какие есть мысли?
     
  2. x64

    x64 New Member

    Публикаций:
    0
    Регистрация:
    29 июл 2008
    Сообщения:
    1.370
    Адрес:
    Россия
    ZwQueryObject(ObjectTypeInformation)
     
  3. Forever

    Forever Виталий

    Публикаций:
    0
    Регистрация:
    12 апр 2008
    Сообщения:
    244
    ObReferenceObjectByHandle имеет параметр ObjectType. Если он указан, то операционная система проверяет совпадает ли он с реальным типом объекта. Таким образом, если при вызове ObReferenceObjectByHandle() ты укажешь в качестве параметра ObjectType = *IoFileObjectType, то в случае, если данный объект не является файловым получишь результат STATUS_OBJECT_TYPE_MISMATCH. По моему данный метод для тебя больше подойдет, так как тебе всего навсего будет нужно добавить в уже существующий вызов всего один параметр. Однако, спасибо x64 за идею. Не знал про такую функцию.