聊一聊 .NET高级调试 内核模式堆泄露

💡 原文中文,约6100字,阅读约需15分钟。
📝

内容提要

本文介绍了内核模式堆泄漏的分析方法,包括内存分配和制造内核模式堆泄漏的过程。通过分析dump文件,发现了myfault.sys驱动程序导致的内存泄漏。文章展示了windbg的强大功能。

🎯

关键要点

  • 文章介绍了内核模式堆泄漏的分析方法。
  • 通过分析dump文件,发现myfault.sys驱动程序导致的内存泄漏。
  • 内核模式堆泄漏的背景是内存不断上涨,任务管理器无法查出原因。
  • 驱动程序通过ExAllocatePool2方法向操作系统请求内存。
  • 使用NotMyFault工具可以制造内核模式堆泄漏。
  • 通过Process Explorer可以观察到内存的分配情况。
  • 分析dump文件时,使用!vm命令查看虚拟内存分布。
  • 通过!poolused命令查看非换页池的内存分配情况。
  • 最终在myfault.sys中找到内存泄漏的硬编码。
  • windbg工具在dump分析中展现了强大的功能。
➡️

继续阅读