全球资讯

Google Project Zero黑客在Windows锁定政策中披露了零日限制

谷歌研究人员已经公开披露了一个Windows 10 zero-day,攻击者可以利用这个漏洞在具有用户模式代码完整性(UMCI)的系统上绕过Windows锁定策略。

谷歌已经公开披露了一个Windows 10零日漏洞,攻击者可以利用这个漏洞在启用了用户模式代码完整性(UMCI)的系统上绕过Windows锁定策略,并在目标系统上执行任意代码。

Project Zero黑客James Forshaw公开披露了这个问题,因为根据Google的披露政策,该漏洞在90天内没有修复。

零日影响所有启用了UMCI的Windows 10版本,Forshaw在Windows 10S上成功利用了它。

“通过使用.NET中的错误导致启用了UMCI的系统上的任意代码执行(例如Device Guard),可以绕过启用的Windows锁定策略检查COM类实例化”,其中声明了Google发布的安全建议

当.NET COM对象被实例化时,零日缺陷与WLDP COM类锁定策略的行为方式联系在一起。

WLDP COM Class锁定策略包含一个8至50个COM对象的硬编码列表,这些对象可以让启发脚本引擎实例化。

为了防止攻击,在注册现有DLL的同时,策略的正确实现应检查传递给DllGetObject的CLSID与硬编码列表。

        “WLDP COM Class锁定策略包含一个8到50个COM对象的硬编码列表,这些对象可以让启发式脚本引擎实例化。排除与查找正确CLSID有关的问题(例如先前报告的对TreatAs案件40189的滥用)。“继续分析。

        “这应该不是一个主要问题,即使你可以写入注册表来注册一个现有的DLL在一个允许的COM CLSID下,因为一个行为良好的COM实现应该比较传递给DllGetObject的CLSID与其已知对象的内部列表。 ”

谷歌专家发现,当一个.NET COM对象被实例化时,传递给mscoree的DllGetClassObject的CLSID仅用于在HKCR中查找注册信息,CLSID被抛弃,并创建.NET对象。

这意味着攻击者可以添加注册表项,包括HKCU,这将加载一个可信的CLSID下的任意COM可见类。

         “这对类策略有直接影响,因为它允许攻击者添加注册表项(包括HKCU),该注册表项将在允许的CLSID之一下加载任意COM可见类。因为.NET关心.NET类型是否具有该特定的GUID,您可以使用它来引导任意代码执行,“继续分析。

Windows锁定策略

Google研究人员发布了一个由两个文件组成的漏洞检测代码

  • 一个.INF来设置注册表。
  • 使用DotNetToJScript  免费工具创建的  .SCT可用于将不可信的.NET程序集加载到内存中以显示消息框。

研究人员在1月19日向微软报告了这一漏洞,但该技术巨头在90天内没有提及。

         “这个问题在周二的补丁中并没有修复,因此这个问题已经过了最后期限。此问题仅影响启用了Device Guard的系统(例如Windows 10S),并且只能作为在此类计算机上获取持久代码执行的方式。这不是一个可以远程利用的问题,也不是一种特权升级,“该专家补充说。

专家强调,攻击者需要访问系统来利用漏洞并安装注册表项。

参考:https://securityaffairs.co/wordpress/71689/hacking/windows-lockdown-policy-0day.html

本文由安全周翻译,转载请注明出处

(0)

热评文章

发表评论