САБЖ 1. Как определить в р0, какое ядро используется ? 2. У кого Win 64x скажите, где там распологается ядро? Все там же в SYSTEM32 или появилось SYSTEM64 ? Заранее благодарен
1) многопроцессорность на само имя файла ядра работющей оси не влияет, оно всегда ntoskrnl.exe т.е. на этапе установки системы инсталятор сам решает какое ядро нада (в свойсвах файла можно посмотреть поле Original Filename оно будет ntoskrnlmp для мп систем) Если система юзает пае то имя файла ядра будет ntkrnlpa.exe, как узнать? ну наверно в драйвере можно проверить влючено ли pae, можно наверно boot.ini посмотреть на предмет наличия /pae /nopae 2) нет там system32 так и осталось 32 битные приложения перенапрявляются в папку windows\syswow64
Вроде первый модуль в массиве, возвращаемом ZwQuerySystemInformation(InfoClass=SystemModuleInformation) - имя модуля ядра.
rain ядро можно назвать хоть linux.exe с помощью ключа лоадера /KERNEL= Так что надо определять как сказал Clerk
Если не антируткит, то первый модуль в структуре возвращаемой ZwQuerySystemInformation, иначе копать в сторону KeLoaderBlock + IsPAE + парсинг загрузки.
Системные файлы, драйвера используют статический импорт функций из микроядра, к чему здесь ключ ? Например hal использует функции ntos, можно определить отсюда имя его.
ZwQuerySystemInformation(InfoClass=SystemModuleInformation) возвращяет не полный путь. "\windows\system32\ntoskrnl.exe" как узнать имя диска на котором стоит система?
Можно из UserSharedData или через символическую ссылку 'SystemRoot'(возвр. \Device\Harddisk0\Partition2\WINDOWS). Читать из реестра - крайняк.
ну например я загрузил драйвер со съёмного диска(флешки) то перечисление драйверов покажет мне путь \mydriver.sys а как мне узнать имя диска с которого он загружен, например \??\Z:\mydriver.sys
"\windows\system32\ntoskrnl.exe" - такое наврядли могло встретится. Скорее \SystemRoot\system32\ntoskrnl.exe
Имел ввиду главный модуль(ntoskrnl.exe) Посмотрел. Наоборот, если драйвер загружен не с системного диска, то указано его имя, будет не \mydriver.sys, а \??\Z:\mydriver.sys
а вот вернуло именно "\windows\system32\ntoskrnl.exe и открыть с помощью CreateFile не удаётся, к стате а как смотреть инфу к файлу?