Hasty Briefsbeta

双语

You Won't Learn This in School: Disabling Kernel Functions in Your Process(2009)

a year ago
  • #Windows
  • #Debugging
  • #Low-Level
  • 文章讨论了一个问题:Direct3D和Flash通过反复安装自己的异常处理器,干扰了未处理异常过滤器,导致崩溃报告不可靠。
  • 解决方案是在安装自定义异常处理器后禁用`SetUnhandledExceptionFilter`函数,确保自定义异常处理器保持生效。
  • 该方法通过代码修改将函数序言替换为返回语句,从而无效化对`SetUnhandledExceptionFilter`的调用。
  • 文章提供了详细的代码片段,展示如何安全地在内存中修改函数,包括修改前检查预期代码是否存在。
  • 评论区的讨论涉及新版Windows的潜在问题、对其他进程的影响,以及IAT挂钩等替代方案。
  • 该技术被证实可在包括Vista在内的现代Windows版本上使用,并被视为用户模式API操作的有效方法。
  • 评论还探讨了此类技术的潜在影响,包括其在恶意软件中的应用,以及理解Windows底层机制的重要性。