首页 » 网站建设 » php内核摸索chm技巧_CVE20178625运用自定义CHM文件绕过Wind

php内核摸索chm技巧_CVE20178625运用自定义CHM文件绕过Wind

访客 2024-11-09 0

扫一扫用手机浏览

文章目录 [+]

Device Guard是什么?

Device Guard将 Windows 10 操作系统限定为仅运行由受信赖的签署人署名的运用程序,该功能有助于抵御0day攻击,并且还能有效地应对多态病毒的寻衅。
它是硬件和软件安全功能的结合,当两者一起配置时,Windows将锁定设备,以使其只能运行受信赖的运用程序。
如果系统中的运用程序不受信赖,则该运用程序将无法运行。
在现实情形中,纵然攻击者能够获取到Windows内核的掌握权,由于设备保护能够对何时可以运行哪些可信任的运用程序具有严格的决策权,因此在打算机重新启动后,恶意软件运行的可能性也将大幅降落。

php内核摸索chm技巧_CVE20178625运用自定义CHM文件绕过Wind

如何绕过Device Guard?

php内核摸索chm技巧_CVE20178625运用自定义CHM文件绕过Wind
(图片来自网络侵删)

你可以通过自定义CHM文件来绕过Device Guard UMCI (用户模式代码完全性)并实行任意不可信的代码。

在过去6个月的韶光里,出于兴趣的使然,我利用业余韶光对如何绕过Device Guard进行了一些安全研究。
在此期间,我很幸运地找到了另一个有效绕过设备保护 UMCI的方法,并将该安全漏洞报告给了微软安全应急相应中央(secure@microsoft.com)。

在与微软应急相应中央的安全研究职员进行沟通之后得知:在此之前,这个安全漏洞已经被另一个安全研究职员创造,不过令我十分愉快的是,我上报的这个安全漏洞将以我的名字命名并被收录到CVE(公共漏洞库)中。
微软应急相应中央的安全研究职员们并不知道另一位研究职员是谁,但是Matt Graeber知道:另一位研究员是马特•纳尔逊,他在之前就已经创造这个绕过Device Guard UMCI的安全漏洞了,这个家伙真的很厉害。

在这篇博文中,我将阐述我是如何创造这个安全漏洞的以及跟这个安全漏洞干系的一些PoC代码。
由于我不是一个资深的逆向工程师,以是在这篇博文中,我将不会对微软针对该安全漏洞发布的补丁进行逆向剖析,而是专注于阐述我是如何创造这个安全漏洞的。

对我来说,我常常在Windows系统以及system32文件夹中查找一些二进制文件来进行研究和剖析,这样做的目的是希望可以创造一些新的、有趣的东西去研究和剖析。
果真,在某些文件夹中,我创造了一个名为hh.exe的二进制文件。
接着,我在命令行里运行“hh.exe /?”这个命令,通过情形下,运行这条命令要么会得到一些关于该命令的帮助信息,要么便是一些缺点信息。
但是,当我在运行上述那条命令的时候,上述两种情形都没有发生,我得到了如下图所示的结果:

上面这张图片触发了我对hh.exe这个程序的好奇心,这个小技巧在最新的Windows 10操作系统中仍旧适用,我猜我们如果须要在一个锁定的系统环境(终端做事器等)中打开一个资源管理器,我们可以通过运行“hh.exe c:\”这条命令来做到这一点。

在考试测验了很多不同的操作后,我意识到我们也可以通过hh.exe浏览互联网。
只须要在命令行中输入

1hh.exe \公众http://www.google.com\公众

就可以做到这一点。
(以下测试仍旧在最新的Windows 10操作系统中进行)实行上述命令后,我得到了如下图所示的结果:

在所有的考试测验操作之后,第一件令我想到的便是去检讨hh.exe这个进程的完全性等级,结果如下图所示:

正如上图所示,在我的系统中,通过hh.exe打开的浏览器因此中等完全性模式运行的,而通过普通办法打开的iexplore进程运则因此低级完全性模式运行,针对我们现在创造的有关hh.exe这个程序干系的信息使得我们有更多的事情须要去研究。

考试测验了很多不同的方法后,我想我该当去创建一个包含有某些代码的自定义帮助文件,由于hh.exe这个运用程序紧张用于显示帮助文件。
我在网上搜索了与创建自定义帮助文件干系的开源项目,并不才面这篇文章中找到理解决方法:

https://raw.githubusercontent.com/samratashok/nishang/master/Client/Out-CHM.ps1

要运行此脚本,我必须首先下载并安装“HTML Help Workshop and Documentation”,下载链接如下所示:

http://www.microsoft.com/en-us/download/details.aspx?id=21138

我终极创建了我自己的脚本程序,由于我只想证明我的PoC的精确性并试图弹出一个打算器,以是在PoC脚本里我没有去做其他的一些操作。
我的PoC脚本可以在这里找到:

https://gist.githubusercontent.com/api0cradle/95ae3c7120f16255d94088bd8959f4b2/raw/fa25b85e85bbb64c5cf021adf92b125357086a6f/GenerateCHM_1.0.ps1

此脚本天生一个大略的自定义的CHM文件,并通过ActiveX启动Calc.exe,不过除了弹出打算器程序之外,或者可以有更故意思的事情可以做,例如,运行Cn33liz StarFighters以获取Empire 代理:https://github.com/Cn33liz/StarFighters/

下图所示的是我的PoC脚本中的部分代码截图:

下面这个gif显示了绕过Device Guard干系的一些操作:

微软在Windows 10 Creators更新版v1703(又叫Redstone 2)中已办理此问题,或者如果要在旧版本的Windows 10上进行修补,可以通过下面这个链接下载补丁包:https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2017-8625

之后,我将机器更新到Windows 10的v1703,当我考试测验运行自定义的CHM文件时,我的系统中得到了如下图所示的报错信息:

总结

希望这篇博文能够启示你去进行自己的安全研究,以使得Windows更安全。
如果你有兴趣理解有关Device Guard的更多信息,我建议你阅读Microsoft官方文档和Matt Graeber的一些博客:

https://docs.microsoft.com/en-us/windows/device-security/device-guard/device-guard-deployment-guide

http://www.exploit-monday.com/2016/09/introduction-to-windows-device-guard.html

http://www.exploit-monday.com/2016/09/using-device-guard-to-mitigate-against.html

http://www.exploit-monday.com/2016/10/code-integrity-policy-reference.html

http://www.exploit-monday.com/2016/11/code-integrity-policy-audit-methodology.html

http://www.exploit-monday.com/2016/11/Effectiveness-of-Device-Guard-UMCI.html

http://www.exploit-monday.com/2016/12/updating-device-guard-code-integrity.html

标签:

相关文章

phppdoquery技巧_PHP PDO 简单教程

PHP 5.5 版本之前,我们有用于访问 MySQL 数据库的 mysql_ 命令,但由于安全性不敷,它们终极被弃用。mysql_...

网站建设 2024-12-08 阅读0 评论0