『嘶吼RoarTalk』滥用 DLL 错误配置:从威胁情报收录到武器化开发( 四 )
上传Payload文件:
本文插图
然后 , 我们使用SharPersist添加启动文件夹持久性 , 这里要使用到我们的DISM系统实用程序和关联的DLL , 如下图所示 。
将SharPersist添加到启动文件夹中以创建持久性:
本文插图
在目标计算机重新启动 , 并且目标用户完成登录之后 , 下图显示了我们的CobaltStrikeC2服务器已经能够看到客户端上线 , 从而证明已经借助Dism.exe进程建立了持久性 。
成功的持久化回调:
本文插图
4.2横向移动
我们将继续使用相同的DISM系统实用程序和DLL文件进行横向移动 。 在这个示例中 , HOGWARTSadumbledore用户具有对远程主机192.168.1.101的管理员访问权限 。 我们通过SMB协议 , 将DISM系统实用程序和关联的DLL文件传输到远程主机 , 如下图所示 。
通过SMB将Payload文件传输到远程主机:
然后 , 我们在初始信标中设置一个SOCKS代理 , 然后使用Impacket的wmiexec.py通过WindowsManagementInstrumentation(WMI)协议执行Payload , 如下图所示 。
使用Impacket的wmiexec.py通过WMI执行Payload:
proxychainspythonwmiexec.py-nooutputDOMAIN/user:password:@x.x.x.xC:\Temp\Dism.exe
执行命令的输出结果:
本文插图
通过WMI执行DISM系统实用程序后 , 我们从远程主机收到一个信标 , 如下图所示 。
在远程主机上获取到信标:
本文插图
五、检测和防范措施
在白皮书中 , 详细介绍了DLL侧加载的详细防范和检测方法 , 并且我们也在DLL滥用技术的概述中略有提及 。 在白皮书中 , 分为针对软件开发者的预防措施和针对终端用户的建议 。 白皮书中还存在没有提到的一些检测方法 , 具体包括:
1、检查网络连接异常的进程:如果我们已经建立了正常进程网络通信活动的基线 , 那么在发现特定进程的网络活动明显不同于基线时 , 证明该进程可能受到了攻击 。
2、DLL白名单:跟踪系统上使用的DLL的哈希值 , 以发现潜在的差异 。
这些检测方法难以大规模实施 , 但在理论上可以利用 。 而这也正是这种旧技术时至今日仍然有效 , 并且还在被红方团队和恶意组织利用的原因 。 之所以这些漏洞持续存在 , 实质上是与软件发行商有关 。 软件发布者需要了解DLL滥用技术 , 并掌握如何在开发的产品中规避此类漏洞风险(例如:应用白皮书中所讨论的缓解措施) 。 在实施这些建议后 , 可以减少攻击者绕过现代化检测技术的DLL滥用行为的可能性 。
Microsoft提供了一些有关DLL安全性和针对DLL劫持漏洞进行分类的重要资源 。
六、总结
将威胁情报应用到攻防研究中 , 并使用攻击者真实利用的攻击方式开展红蓝对抗 , 无疑为红方团队成员贡献了巨大的价值 。 通过跟踪真实攻击者的动向 , 红方团队可以得到关于武器库和TTP方面的灵感 。
从防御的角度来看 , 在攻击生命周期的多个阶段(例如:持久性和横向移动) , DLL滥用技术可能会有所帮助 。 我们后续将持续监测更多DLL滥用造成的影响 , 以及可以被专业安全人员和攻击者利用的可执行文件 。
推荐阅读
- 嘶吼RoarTalk|5 个简单的方法让你的 Gmail 邮箱更安全
- 爱集微APP|调查将至?蓝牙配件商Tile指控苹果滥用权力并非法偏袒自家产品
- 苹果|配件商 Tile 指控苹果滥用权力并偏袒自家产品
- 内容网易易盾四款产品入选嘶吼安全研究院《2020网络安全产业链图谱》
- 『手机』手机好功能竟被滥用!一加官方公告:跟秋意滤镜说再见吧
- [嘶吼RoarTalk]全球数据安全标准和认证展望
- 『嘶吼RoarTalk』阻止语音欺诈的 7 种方法
