Skip to content
This repository has been archived by the owner on Dec 5, 2019. It is now read-only.

Latest commit

 

History

History
34 lines (30 loc) · 3.48 KB

怎么在你的exploit中确认window补丁程序級別.md

File metadata and controls

34 lines (30 loc) · 3.48 KB

怎么在你的exploit中确认window补丁程序级别

检查补丁级别是脆弱性研究或开发exploit的重要任务。作为一个寻找bug的人,你应该关心补丁级别,因为假设你有一个针对Internet Explorer 10的0day,你不能总是假定它自首次亮相*2012年)以来就会影响所有IE 10的构建。如果你意识到你的0day只影响一两个版本,那么它有多大的威胁呢?大概没有你想象的那么糟糕。 如果您是exploit开发人员,则需要检查其他原因:最大可靠性。您的漏洞利用有很多可能会失败,由于系统更新而更改的错误小工具(ROP)很容易就是其中之一。如果这个更新发生在一个相当早的阶段,你的漏洞很可能会很多失败。

如何收集微软补丁

如果你使用补丁差异,你可能会维护自己的DLL数据库。但是这可能需要大量的磁盘空间,对于大多数人来说,这可能是不值得的,除非你每天都要看这些DLL.可能有一个更经济方法来跟踪所有这些补丁,并有一些接口允许快速和方便地访问它们。 幸运的是,Microsoft维护一个Excel文件中的所有补丁列表,您可以在这里下载: http://www.microsoft.com/en-us/download/confirmation.aspx?id=36982 如果您更喜欢某种GUI进行搜索,则可以使用安全技术中心的My Security Bulletins Dashboard. 您可以编辑这个仪表板来添加特定的过滤器,如Windows版本,Internet Explorer版本,Office等等 例如,如果我想从Windows 7自首次亮相以来找到所有适用于Windows 7的Internet Explorer 10修补程序,则可以添加以下过滤器

  • Windows 7
  • Internet Explorer

然后我从2012年9月到2014年,我得到:22个结果.但是,当然,这个数字会上升,因为IE 10仍然支持. 还有其他桌面或命令行工具,将基本上检查您的Windows系统丢失的补丁,如Windows Update Powershell Module,在一些情况下它可能工作的更好

补丁提取

  • 旧的补丁过去被封装成EXE,这种类型可以通过使用解压缩工具(如7z)来提取.例如,Internet Explorer 6修补程序可以通过这种方式提取。
  • 打包成EXE的较新的修补程序支持用于提取的/ X标志。例如,以下将在同一目录下提取补丁。可以通过这种方式提取Internet Explorer 8(xp)等修补程序。
Windows[Something]-KB[Something]-x86-ENU.exe /X:.
  • 现在大多数补丁都被打包成MSU。这是你必须做的:
  1. 将所有* .msu文件放在同一目录下(在window中)
  2. 运行 tools/extract_msu.bat [*.msu文件的绝对路径]
  3. extract_msu.bat应该自动提取所有* .msu文件。每个新文件夹中的“extracted”子目录都是您可以找到更新组件的地方

检查修补程序中的小工具

通过使用Metasploit的msfpescan实用程序(或者msfbinscan,它足够聪明以知道PE格式) 是来检查不同修补程序中小工具的最快方法。这很容易,你只需把DLL放在同一个目录下,然后执行:

$ ./msfbinscan -D -a [address] -A 10 /patches/*.dll

那么这个工具会反汇编那个目录下的所有DLL,在那个特定的地址上是10个字节。您可能可以稍微自动化一下,以便快速确定哪些DLL没有正确的小工具,如果这是您的情况,那意味着您使用的小工具是不安全的。你应该找到另一个更可靠的。