Frage

Ich muss die Basisadressen kennen, unter denen nt und win32k geladen sind.Ich kann diese Informationen herausfinden, indem ich das System mit aktiviertem Kernel-Debugging starte, eine Kernel-Debug-Sitzung starte und den Befehl ausführe lm um eine Liste der geladenen Module zu erhalten.

Ich möchte programmgesteuert bestimmen, wo diese beiden Module geladen werden, ohne in den Debug-Modus zu booten und den Kernel-Debugger zu verwenden.Ich benötige die Basisadressen zum Auflösen von Systemaufrufen in einer Ereignisprotokollierung für Windows-Protokolldateien.

Auf dem System, an dem ich arbeite, wird Windows Server 2008 R2 ausgeführt.

War es hilfreich?

Lösung

Die Liste der geladenen Kernelmodule und Basisadressen (einschließlich ntoskrnl) wird in der Liste gespeichert, auf die gezeigt wird PsLoadedModulesList Symbol.Oder verwenden Sie ZwQuerySystemInformation(SystemModuleInformation) stattdessen.

Für detaillierte Informationen siehe http://alter.org.ua/docs/nt_kernel/procaddr/

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top