Как найти базу NtOsKrnl в Windows 7 x64

Тема в разделе "WASM.NT.KERNEL", создана пользователем vx1d, 8 ноя 2017.

  1. vx1d

    vx1d Member

    Публикаций:
    0
    Регистрация:
    13 дек 2016
    Сообщения:
    46
    Пробую как обычно - любой адрес из образа ядра и дальше поиск сигнатуры PE, но натыкаюсь на отсутсвтующие страницы при поиске вверх
    Смотрю _KPROCESS поке не вижу ничего подходящего(
    Как найти базу ядра?
     
  2. comrade

    comrade Константин Ёпрст

    Публикаций:
    0
    Регистрация:
    16 сен 2002
    Сообщения:
    188
    Адрес:
    Russian Federation
    Если начиная с любого KPROCESS, проходи через список ActiveProcessLinks. Если пойнтер в пространстве pool (адресные регионы описаны у Руссиновича в Windows Internals), то это очередной KPROCESS и его нужно игнорировать; идти дальше. При остановке (адрес не pool) будем на nt!PsActiveProcessHead. Отсюда уже понятно, сканируем наверх по 64 KB, ищем MZ/PE заголовки.
     
  3. superakira

    superakira Member

    Публикаций:
    0
    Регистрация:
    2 июн 2008
    Сообщения:
    72
    Есть быдло решение, но с дреганьем апи ZwQuerySystemInformation с SystemModuleInformation. Получаешь список - первый элемент ядро. В элементе imagebase поле.
     
  4. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    1.156
    Инфа про модуля хранится в загрузчике, сжет есчо где то, но это осе зависимая инфа.

    Трогать поля обьектов не годится, смещения плавают как и смысл полей. Это хардкодить.

    Сканить ядерный образ - будут проблемы, некоторые секции окончательно выгружены. Что бы какую то функцию из этого же модуля вызвать, то нужно знать для начала базу модуля, либо импорт настроен загрузчиком.

    SystemModuleInformation нормальное решение.

    Можно поставить на время ловушки и выполнить скан памяти(поиск пе), потом ловушки отменить. Но это низкоуровневая работа. При этом так же понадобятся функции ядра или особые извраты.
     
  5. Fail

    Fail Active Member

    Публикаций:
    0
    Регистрация:
    14 мар 2012
    Сообщения:
    213
    Я бы сказал, что это то, что первое в голову приходит, остальное не надо.
     
  6. Indy_

    Indy_ Well-Known Member

    Публикаций:
    4
    Регистрация:
    29 апр 2011
    Сообщения:
    1.156
    Fail,

    Более простого вообщем то и нет. Иначе берите конструктор и вперёд анализить системный код, что бы нужные смещения достать.