日前,渗透测试工具CobaltStrike暴露了一个有趣的漏洞。由于该漏洞的补丁只发给正版用户,使用该工具的盗版用户,包括大量僵尸网络系统,将因未能及时修复漏洞而面临被“攻击”的威胁。CobaltStrike是众所周知的合法安全工具,渗透测试人员使用它来模拟网络中的恶意活动。在过去几年中,各种黑客组织越来越多地使用该软件。对于防御者和攻击者,CobaltStrike提供了完整的软件包集合,允许受感染的计算机和攻击者服务器以高度可定制的方式进行交互。CobaltStrike的主要组件是CobaltStrikeClient(也称为Beacon)和CobaltStrikeTeamServer(TeamServer),后者向受感染的计算机发送命令并接收其泄露的数据。攻击者首先启动一台运行TeamServer的机器,该机器已配置为使用特定的“可扩展性”定制,例如定制客户端向服务器报告的频率或定期发送特定数据。然后,攻击者在利用漏洞、欺骗用户或以其他方式获得访问权限后,将客户端安装在目标机器上。然后,客户端将使用这些自定义来维护与运行TeamServer的机器的持久连接。将客户端连接到服务器的链接称为Web服务器线程,它处理两台机器之间的通信。通信中最主要的是服务器发送的“任务”,指示客户端运行命令、获取进程列表或做其他事情。客户端然后以“回复”响应。安全公司SentinelOne的研究员GalKristal发现了TeamServer中的一个严重漏洞,该漏洞很容易使服务器离线。“该漏洞通过从服务器发送虚假回复来从C2的Web服务器线程中挤出所有可用内存,”研究人员说。执行攻击所需的全部是一些服务器配置的知识。这些设置有时嵌入在由VirusTotal等服务提供的恶意软件样本中。任何对受感染客户端具有物理访问权限的人都可以获得这些配置。为了简化这个过程,SentinelOne发布了一个解析器,可以捕获从恶意软件样本、内存转储和客户端用于连接服务器的URL中获取的配置。一旦掌握了这些设置,攻击者就可以使用解析器附带的通信模块伪装成属于服务器的CobaltStrike客户端。该工具被理解为能够:解析Beacon的嵌入式Malleable配置文件描述直接从活动的C2(例如流行的nmap脚本)解析Beacon的配置即使服务器没有作为假信标与C2的基本代码通信'先发送相应的任务,假客户端也可以发送服务器回复。TeamServer软件中的漏洞CVE-2021-36798会阻止其拒绝包含格式错误数据的回复。一个例子是附加到客户端上传到服务器的屏幕截图的数据。“通过操纵屏幕截图的大小,我们可以让服务器分配任意数量的内存,其大小完全在我们的控制之下。通过将Beacon通信流的所有知识与我们的配置解析器相结合,我们拥有了我们需要的一切伪造Beacon”,Kristal写道。虽然该漏洞理论上可用于对抗白帽和黑帽黑客,但值得注意的是,后者可能最容易受到该漏洞的影响。这是因为大多数专业安全维护人员都购买了许可证对于CobaltStrike,同时很多恶意黑客都在使用盗版软件。【本文为专栏作者“安安牛”原创文章,转载请通过安安牛(微信公众号id:gooann-sectv)获得授权】点此查看该作者更多好文
