您如何确定给定的 exe 或 dll 或 sys 文件是否实际上是驱动程序?我的意思是驱动程序与普通可执行文件的区别是什么?
问问题
256 次
3 回答
3
驱动程序的映像始终标记为 IMAGE_SUBSYSTEM_NATIVE(IMAGE_OPTIONAL_HEADER.Subsystem -请参阅 Microsoft Portable Executable 规范),而应用程序的映像通常标记为 IMAGE_SUBSYSTEM_WINDOWS_GUI 或 IMAGE_SUBSYSTEM_WINDOWS_CUI。
于 2012-04-10T12:01:39.817 回答
0
正常的可执行文件在用户模式下运行,而驱动程序在内核模式下运行。正常的可执行文件通常与桌面交互,而驱动程序不能与桌面交互(没有用户界面)。正常的可执行文件与 Windows API 交互,而驱动程序不能与 Windows API 交互。
于 2012-04-09T19:44:34.777 回答
0
@mox - 这是正确的,但这意味着使用调试器/十六进制编辑器/其他 PE 标头读取工具进行深入研究。相反,您总是可以查看文件的依赖项(使用Dependency Walker),如果文件依赖于 NTOSKRNL.EXE 则很可能是驱动程序。
于 2012-04-11T13:09:11.490 回答