1

我想跟踪/记录从用户模式到内核模式的 API 调用的整个流程。例如,如果用户模式应用程序调用 FindFirstFile() API,我想记录以下内容:

FindFirstFile -> NtQueryDirectoryFile -> SYSCALL -> KiSystemService -> KiFastCallEntry -> NtQueryDirectoryFile -> IRP -> ...

今天有什么程序可以做到这一点吗?(Rohitab API Monitor 可以进行用户模式 ​​API 跟踪,但不能同时进行)。如果不是,那么开发这种能力的最优雅的方式是什么?

4

2 回答 2

1

由于 ProcExplorer 提供完整的 Thread 跟踪,因此也可以做到这一点。我发现这个网站解释了如何实现内核模式 GetThreadContext() 以完成堆栈图片(使用 StackWalk64)。

http://blog.airesoft.co.uk/2009/02/grabbing-kernel-thread-contexts-the-process-explorer-way/#note1

于 2014-03-19T12:01:23.720 回答
0

是的,你可以做到这一点,通过使用windbg这是来自微软的程序,它可以调试用户模式和内核模式。

你可以从这里开始。

https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/getting-started-with-windbg

另外,如果您想了解此内容并查看一些这样做的示例,您也可以在此处查看。

http://www.osronline.com/article.cfm?id=257

祝你好运 :-)

于 2018-03-12T20:08:03.237 回答