freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

使用DLL注入方式绕过Windows 10勒索软件保护机制
2018-10-16 09:00:24

前言

从Windows 10 1709秋季创意者更新开始,微软为Windows 10安全中心添加了一个名为“受控制的文件夹访问”的全新勒索软件防护功能,可用于防止未知程序修改受保护文件夹中的文件。 

在上周举行的DerbyCon安全大会上,安全专家展示了一种利用DLL注入方式来绕过该勒索软件保护功能的方式。

页首配图

使用DLL注入绕过“受控制的文件夹访问”功能

“受控制的文件夹访问”可协助用户保护文件夹以及内部文件,简而言之就是只允许列入白名单的应用程序访问和修改该文件夹,白名单涵盖用户指定和Microsoft默认列入白名单的应用程序。

这个方式的突破口是已经列入了上述白名单的explorer.exe进程,安全展架可在系统启动时将恶意DLL注入资源管理器,从而绕过保护。

主要步骤为:

当explorer.exe启动时,它将加载在下面显示的HKEY_CLASSES_ROOT \ * \ shellex \ ContextMenuHandlers注册表项下找到的DLL。

注册表

HKEY_CLASSES_ROOT树是HKEY_LOCAL_MACHINE和HKEY_CURRENT_USER中注册表信息的合集。执行合并时,Windows会以HKCU树中的数据为优先级。

这就是说如果HKCU中存在键值,它的优先级将比HKLM中相同键值的高,并且是合并到HKEY_CLASSES_ROOT树中的数据。这么说可能有点绕,可以阅读相关文档以获取更多信息。 

默认情况下,当资源管理器启动时,它会从HKEY_LOCAL_MACHINE \ SOFTWARE \ Classes \ CLSID \ {90AA3A4E-1CBA-4233-B8BB-535773D48449} \ InProcServer32键值加载Shell.dll。要将恶意DLL加载到explorer.exe中,只需创建一个HKCU \ Software \ Classes \ CLSID \ {90AA3A4E-1CBA-4233-B8BB-535773D48449} \ InProcServer32键值并将其默认值设为恶意DLL即可。 

当Explorer.exe被结束和重启时,explorer.exe会启动恶意DLL而不是正常的Shell.dll。下图是注入explorer.exe的DLL示例。

注入explorer.exe的DLL示例

这样就可以绕过了“受控制的文件夹访问”功能,而且Windows Defender也没有检测到该恶意行为。实际上,Avast、ESET、Malwarebytes Premium和McAfee等老牌安全软件的勒索软件保护功能都没有报警。

微软的回应

安全专家已向微软安全响应中心披露了这个漏洞,并提供了可用于绕过“受控制的文件夹访问”功能的概念验证。

披露漏洞

不过,微软并不认为这是一个符合赏金计划和需要修复的漏洞。微软的回信中是这么说的:“如果我理解正确的话,这种攻击方式的前提是攻击者已经登录了目标账户,接下来是通过修改注册表来植入DLL。由于该账户只能写入HKCU,因此无法影响其他用户。由于登录账户之后就已经获得了相应权限,也不存在提权漏洞等问题。因此该问题关闭且不再跟踪。”

微软的回信

但是安全专家认为勒索软件不需要提权来加密受害者的计算机,恶意软件开发人员可以使用其他漏洞或方法掌控卷影复制服务(VSS)。这样以来可以在没有管理员权限的情况下安装恶意软件,并且仍然可以轻松绕过“受控制的文件夹访问”功能。

*参考来源:bleepingcomputer,Freddy编译整理,转载请注明来自 FreeBuf.COM。

# dll注入 # Windows 10 # 勒索保护
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者