Pergunta

Preciso saber os endereços base onde o nt e o win32k são carregados.Posso descobrir essas informações inicializando o sistema com a depuração do kernel habilitada, iniciando uma sessão de depuração do kernel e executando o comando lm para obter uma lista dos módulos carregados.

O que eu quero fazer é determinar programaticamente onde esses dois módulos são carregados sem inicializar no modo de depuração e usar o depurador de kernel.Preciso dos endereços básicos para resolver syscalls em um arquivo de log do Event Tracing for Windows.

O sistema em que estou trabalhando está executando o Windows Server 2008 R2.

Foi útil?

Solução

A lista de módulos do kernel carregados e endereços base (incluindo ntoskrnl) é armazenado na lista apontada por PsLoadedModulesList símbolo.Ou use ZwQuerySystemInformation(SystemModuleInformation) em vez de.

Para informações detalhadas consulte http://alter.org.ua/docs/nt_kernel/procaddr/

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top