一款名为DefenderWrite的新工具利用Windows白名单程序绕过防护机制,将任意文件写入防病毒软件可执行文件夹,可能为恶意软件提供持久化和规避检测的能力。
该工具由网络安全专家Two Seven One Three开发,展示了一种新颖技术,使渗透测试人员和红队能够在无需内核级权限的情况下,将载荷投递到高度受保护的位置。
这一进展凸显了防病毒软件自我保护机制面临的持续挑战——防病毒可执行文件所在的文件夹通常受到修改保护,以防止被篡改。
通过识别防病毒厂商为更新和安装而白名单化的系统程序,攻击者可利用这些例外注入恶意DLL,将防病毒软件自身的防护措施转化为攻击武器。
该工具已通过GitHub发布,引发了关于防病毒软件运营必要性与企业环境安全风险之间平衡的讨论。
利用白名单程序实现任意写入
DefenderWrite的核心创新在于系统性扫描Windows可执行文件,以找到被允许访问防病毒文件夹的程序。
其原理是枚举C:\Windows等目录中的所有.exe文件,然后通过进程创建和远程DLL注入测试对受保护路径的写入能力。
一个自定义DLL执行文件写入操作并报告成功与否,使工具能够精确定位如msiexec.exe 等可利用进程,且不触发防御机制。
在搭载Microsoft Defender 4.18.25070.5-0版本的Windows 11 24H2系统测试中,该方法识别出四个此类程序:msiexec.exe 、Register-CimProvider.exe 、svchost.exe 和lsass.exe 。
例如,启动msiexec.exe 并注入DLL后,可直接向Defender安装目录写入文件(实验室实验已验证)。
此方法不仅适用于Microsoft Defender;研究人员还确认BitDefender、TrendMicro Antivirus Plus和Avast中存在类似白名单漏洞,但未披露具体细节,以鼓励独立验证。
工具参数与自动化扫描
DefenderWrite支持关键参数以实现定向操作,包括:
- TargetExePath:宿主可执行文件路径
- FullDLLPath:可注入库路径
- FileToWrite:防病毒文件夹内的目标路径
- 可选“c”标志:简化远程将DLL复制到指定位置
工具还附带PowerShell脚本Run_Check.ps1 ,可自动扫描C:\Windows可执行文件并记录白名单程序,供进一步利用。
用户可根据环境自定义脚本,适用于红队模拟或防御评估。
伦理使用与安全影响
GitHub仓库提供完整源代码和文档,强调仅在授权测试中合法使用。开发者Two Seven One Three(X平台@TwoSevenOneT)分享了更多渗透测试见解,并鼓励社区通过实验增强防病毒软件的 resilience。
一旦恶意载荷驻留在防病毒文件夹中,它将受益于与合法文件相同的例外规则,规避扫描并可能实现长期持久化。
此技术凸显了厂商需审核白名单策略,并在更新期间实施更严格的进程隔离。尽管DefenderWrite不涉及零日漏洞,但其揭示的系统性缺陷若未解决,可能被用于实际攻击。
企业应监控防病毒更新机制,并考虑超越传统文件权限的分层防御。随着该工具的公开可用,预计安全研究界将更广泛采用它,推动主流防病毒解决方案改进保护措施。
发表评论
您还未登录,请先登录。
登录