如何利用microsoft windows atmfd.dll内存损坏漏洞
发布网友
发布时间:2022-09-26 04:45
我来回答
共1个回答
热心网友
时间:2023-09-26 10:12
安装补丁
下载“Windows6.0-KB3073921-x86.msu”补丁之后,我试图进行安装,没想到出现了这个
对此我感到有些意外,因为当安装好一个内核补丁后,操作系统都会进行重启。但在这个例子中,补丁安装程序并没有提示我进行重启。
在“c:\windows\system32\drivers”中我发现“srv.sys”和“srvnet.sys”都被变更了。
另外,我还注意到新的“srvnet.sys”文件日期为2011年4月,新的“srv.sys”文件日期显示正常。
差异阶段–Part 1
将新的“srv.sys”版本(v6.0.6002.19438)与2011年发布的MS11-020版本(v6.0.6002.18407)进行对比,惊奇的发现代码根本就没有任何改动!要说有改动也就是编译的字符串改动了。
我寻找着有关该补丁的一些信息,最终在*上找到Greg Linares发的一条有关“srvnet.sys”中代码变动的信息。
我联系上Greg之后确认了补丁安装程序的错误,同时感谢其指点,通过使用“expand.exe”命令手动解压了该补丁。
差异阶段–Part 2
补丁解压完成之后,我发现“srv.sys”和“srvnet.sys”的两个版本。将旧的srvnet.sys”版本(v6.0.6002.18462) 和新版本(v6.0.6002.23746)进行差异比较,两个版本都使用相同的补丁安装程序。
在其中我发现7个函数进行了重要改变,更多的则是改动很小:
RfsTableEnumerate
RfsTable64Enumerate
RfsTable64LookupAndEnumerate
SrvGraftName
SrvLibLogError
SrvNetWskEnableInterface
SrvNetWskOpenListenSocket