谷歌在 Windows 8.1 中发现未修补的安全漏洞

阅读时间图标 3分钟读


读者帮助支持 MSpoweruser。如果您通过我们的链接购买,我们可能会获得佣金。 工具提示图标

阅读我们的披露页面,了解如何帮助 MSPoweruser 维持编辑团队 查看更多

Windows 8.1 开始菜单 新

一位 Google 研究人员发现了 Windows 8.1 中未修补的安全漏洞。 谷歌研究人员已在谷歌安全研究页面上发布了这个漏洞,它需要 90 天的披露期限。 如果 90 天后没有广泛可用的补丁,那么错误报告将自动对公众可见。 没有关于微软是否承认这个错误或他们是否正在努力解决这个问题的信息。 但我认为谷歌在每天有数百万人使用的 Windows 8 等产品上发布漏洞是不负责任的举动。

以下信息发布了有关该错误的信息,

在 Windows 8.1 更新系统调用 NtApphelpCacheControl(代码实际上在 ahcache.sys 中)允许缓存应用程序兼容性数据,以便在创建新进程时快速重用。 普通用户可以查询缓存,但不能添加新的缓存条目,因为该操作仅限于管理员。 这在函数 AhcVerifyAdminContext 中进行了检查。

此函数有一个漏洞,它无法正确检查调用者的模拟令牌以确定用户是否为管理员。 它使用 PsReferenceImpersonationToken 读取调用者的模拟令牌,然后在令牌中的用户 SID 与 LocalSystem 的 SID 之间进行比较。 它不检查令牌的模拟级别,因此可以从本地系统进程获取线程上的识别令牌并绕过此检查。 为此,PoC 滥用 BITS 服务和 COM 来获取模拟令牌,但可能还有其他方法。

这只是一个找到利用该漏洞的方法的案例。 在 PoC 中,为 UAC 自动提升可执行文件(例如 ComputerDefaults.exe)创建缓存条目,并将缓存设置为指向 regsvr32 的应用程序兼容条目,这会强制 RedirectExe shim 重新加载 regsvr32.exe。 然而,可以使用任何可执行文件,诀窍是找到合适的预先存在的应用程序兼容配置来滥用。

目前还不清楚 Windows 7 是否易受攻击,因为更新的代码路径上有一个 TCB 权限检查(尽管它看起来取决于标志,这可能是可以绕过的)。 尚未在 Windows 7 上对其进行验证。注意:这不是 UAC 中的错误,它只是使用 UAC 自动提升来进行演示。

PoC 已在 Windows 8.1 更新(包括 32 位和 64 位版本)上进行了测试。 为了确定,我建议在 32 位上运行。 要验证执行以下步骤:

1) 将 AppCompatCache.exe 和 Testdll.dll 放到磁盘上
2) 确保 UAC 已启用,当前用户是拆分令牌管理员,并且 UAC 设置是默认设置(不提示特定可执行文件)。
3) 使用命令行“AppCompatCache.exe c:windowssystem32ComputerDefaults.exe testdll.dll”从命令提示符执行 AppCompatCache。
4)如果成功,那么计算器应该会以管理员身份运行。 如果它第一次不起作用(并且您获得了 ComputerDefaults 程序)从 3 重新运行漏洞利用,则有时在第一次运行时似乎存在缓存/计时问题。

Sumber: 谷歌 通过: Neowin网站

有关主题的更多信息: 下载, 微软, 保安, 更新, 窗户, 8.1窗口