此 BOF 可用于枚举系统进程并识别每个进程的保护级别。还会返回其他信息,例如服务关联、用户、会话和路径。结合这些信息,可以识别出适合探索 SYSTEM 级 DLL 劫持的良好候选进程。理想进程应具备以下条件:

该工具在编写时未使用通常的 BOF API 声明(例如 bofdefs.h 文件)。正如 Matt Ehrnschwender 的这篇 博客文章 所述,可以使用 objcopy 将格式为 DLL$API 的适当符号在 BOF 编译后修补进去。该工具的 Makefile 调用 objcopy,向工具传递包含正确符号替换的 imports_enumprotectionsXX.txt 文件,从而使 BOF 可用。
我编写了一个名为 BOFPatcher 的工具,可自动完成此过程。这使用户能够像编写普通 C 程序一样编写 BOF,而无需担心繁琐的 API 声明:

此工具提供给购买我的 BOF 开发与战术 课程的用户。
感谢 hasherezade 提供 此代码片段,也感谢 Gabriel Landau 提供 NoFault。
同时感谢许多才华横溢的人,他们的工作成果被 ChatGPT 抓取并被我使用。