加密C2框架Mythic流量分析
导语:Mythic工具不仅提供了强大的渗透测试和红队操作功能,而且其高度模块化的架构允许用户自定义Payload、任务和插件,赋予了Mythic出色的灵活性和可扩展性。
一、工具介绍
Mythic是一个多人、跨平台的红队行动框架,使用了python3、docker、docker-compose和Web浏览器UI技术构建。它支持多种通信协议,包括HTTP、TLS等,并且在Beacon与Mythic服务器之间的通信通常采用加密来保障安全性。
Mythic的核心原理在于模拟和模仿攻击者在渗透测试和红队操作中的行为。它提供了一个类似于C2(命令与控制)的基础设施,允许攻击者远程控制目标系统、执行命令、上传和下载文件等。通过安装不同的Payload框架,可以生成针对不同系统和协议的Beacon。此工具使用AES加密技术保护数据的机密性。
二、工具原理分析
在Web页面查看已经安装的payload和c2profile
生成Beacon后,查看配置信息包含http请求头,加密密钥等
Mythic提供了一个类似于C2的基础设施,使用户能够远程控制目标系统。这基于客户端-服务器模型,其中服务器是Mythic服务器,而客户端则是恶意的Beacon,它被安装在目标系统上。一旦Beacon上线,它会加密数据并将其发送给服务器。服务器接收并解密数据,然后启动通信。
图1:工具原理图
木马上线成功后,客户端将触发一个上线请求,其URL和HTTP头信息可以在生成Beacon时进行配置。其中请求体和返回体都会经过AES加密,并使用Base64编码进行传输。值得注意的是,请求体和返回体的加密数据都包含一个特定长度的UUID。这个UUID的存在可以用来有效地检测这个工具的使用。
图2:上线包流量
请求体分析:
对请求体使用base64解码内容
图3:请求体base64解码
请求体报文头部存在固定长度的UUID与返回体一致
使用Web管理端的密钥对数据包进行解密:
b'{"action":"checkin","ip":"fe80::a3fc:4898:79ba:547a%10","os":"Microsoft Windows NT 10.0.19044.0","user":"stean","host":"DESKTOP-NT88QF8","pid":"3644","uuid":"77e81322-4d5f-47e0-a6b6-956d4b6c9ea9","architecture":"x64","domain":"DESKTOP-NT88QF8","integrity_level":2,"external_ip":"","encryption_key":"","decryption_key":""}\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f\x0f'}
图4:上线包实现
返回体分析:
对返回体使用base64解码内容
图5:返回体base64解码
报文头部存在固定长度UUID与请求体一致
使用Web管理端的密钥对数据包进行解密:
b'{"status":"success","encryption_key":"","decryption_key":"","id":"409a0bb8-1f80-45bb-b86a-4680224b5401","action":"checkin"}\x05\x05\x05\x05\x05'}
图6:数据校验实现
三、工具检测
根据分析结果,我们通过利用主动探测、特征匹配、行为分析等多种检测方法,实现了对Mythic工具的有效检测。
图7:mythic检出结果
四、总结
Mythic工具不仅提供了强大的渗透测试和红队操作功能,而且其高度模块化的架构允许用户自定义Payload、任务和插件,赋予了Mythic出色的灵活性和可扩展性。并且,通过加密技术的应用,Mythic能够很好地规避流量检测设备,显著减少了被发现的风险。如今,越来越多的攻击者采用加密通信的C2工具,以提升攻击的隐蔽性。观成科技安全研究团队持续追踪这些C2工具的最新动态,积极研究和更新针对加密流量的检测技术。
发表评论