Уход от перехвата API из Ring0 в WinNT

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

  1. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    Есть такая идея, можно открывать ntdll.dll с диска. Получать указатель в ET. По определённомы смещению в Nt/Zw (не во всех) лежит индекс функции в системной таблицы. А потом использовать напрямую, через syscall.
     
  2. Zufyxe

    Zufyxe New Member

    Публикаций:
    0
    Регистрация:
    13 авг 2004
    Сообщения:
    137
    Адрес:
    Russia
    А если функция перехвачена через SDT или непосредственно в ntoskrnl (что чаще и делается), что тогда? По моему, ntdll это не вариант :dntknw:
     
  3. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    Для доступа к SDT не нужен Ring0?
     
  4. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    Разумеется, нужен. Учим мат. часть.
     
  5. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    Ну вот, я тоже так думаю ;)

    Следовательно для скрытия процесса с правкой SDT и физ. правкой ntoskrnl (если только не через PhysicalMemory) понадобится писать собственный драйвер.
     
  6. Zufyxe

    Zufyxe New Member

    Публикаций:
    0
    Регистрация:
    13 авг 2004
    Сообщения:
    137
    Адрес:
    Russia
    так ты же сам пишешь: Уход от перехвата API из Ring0???

    Так и говори: "перехват API из UserMode".

    А что про перехват API из Ring 0, так мат. часть. мы знаем прекрасно. :)
     
  7. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    Блин :dntknw:(

    Описка. Я хотел написать Ring3, а написал Ring0 :dntknw:

    Модеры исправте plz.
     
  8. TarasCo

    TarasCo New Member

    Публикаций:
    0
    Регистрация:
    2 фев 2005
    Сообщения:
    106
    Как вариант для защиты от модификации ntdll, можно просто

    отображать ее самостоятельно в свое адресное пространство. И работать со своей копией. Тогда у этой копии скорее всего будет непропатченная таблица импорта и прологи функций.... Можно это делать по необходимости - отобразили, поработали, выгрузили... (чтобы в Вашем процессе не нашли сигнатуры)