最近我们发现一款专为红队设计的后渗透测试工具Mythic有大量的在野利用,已在公共网络上发现150多个Mythic C2服务器,这些暴露的C2服务器主要分布在美国德国。Mythic从2018年发布以来在开源社区收获2200+个stars。
图 1 Mythic开源社区使用情况
Mythic是一款专为红队研究人员设计的跨平台后渗透测试工具,是一个用于红队作战的多人指挥控制平台,其可扩展性较强,具备内存注入、时间分割攻击、文件管理、KEYLOG等常见后渗透功能。其组件通信流程如下:
图 2 Mythicn内部服务通信流程图
其中,关键组成部分有:
⚫ Web UI作为控制界面;
⚫ Nginx/PostgreSQL数据库/Hugo文档/RabbitMQ消息中间件等组件组成Mythic Main Services;
⚫ Payload Containers负责生成恶意信道payload;
⚫ C2 profile Containers负责与受控端通信并将数据转发给Mythic Main Services处理,目前实现的通信方式有TCP、SMB、HTTP、Websockets、和HTTPS等。
Mythic工具支持容器化部署,安装后工具的基本结构如下:
图 3 Mythic工具基本结构
基本使用及部分指纹特征:
(1)访问web控制台https://mythic服务ip:7443
随机的登录密码记录在Mythic主目录的.env文件中,登录后页面如下:
图 4 mythic主页
该Web服务具备部分指纹特征可供在野服务的监控,如:
⚫ Mythic web服务默认的favicon.ico文件hash为-859291042;
⚫ 默认Web服务端口为7443, title默认为Mythic;
⚫ Mythic Web服务默认TLS证书cert.subject="Mythic" ;
(2)启动C2 profiles对应的监听服务
图 5 mythic工具部分C2 profiles及Agents
(3)创建恶意信道payload和进行通信
图 6服务器监控恶意信道payload
Mythic工具使用HTTP和HTTPS的通信信道进行通信时,传输的数据都是加密的。HTTP的默认C2配置下通信流量如下:
图 7 HTTP通信流量
展开一条数据后基本内容如下:
图 8 HTTP通信单次会话的数据
其中,请求和应答的内容都是加密的,其加密过程如下:
(1)使用AES256对数据加密;
(2)使用base64编码。
对加密数据进行解密的方法是:
(1)对HTTP请求体或响应体进行base64解码;
(2)AES256解密。
部分源码如下:
图 9 AES解密
Payload加密密钥如下:
图 10 配置文件密钥
Mythic C2可配置回调时间间隔,也存在回调抖动,给检测带来一定困难,percent(10-10*percent~10+10*percent)
图 11 Mythic C2配置的HTTP参数
加密方式,心跳,Payload默认配置可作为Mythic恶意通信的研判依据。
对于HTTPS的通信流量,采用TLS/SSL应用层加密协议,默认配置证书随机生成,从证书生成代码及实际流量来看,发布组织等证书字段随机性大(subject字段可读性差),与常见的证书区别明显,Mythic也支持使用任意证书文件。默认情况下随机证书的生成代码。
图 12 TLS/SSL默认证书生成
使用随机证书的C2 HTTPS通信流量:
图 13 HTTPS流量
对于HTTP通信方式下对内容加密的产品检测如下图所示:
图 14 Mythic HTTP C2加密通信的检测
对于HTTPS通信方式下对内容加密的产品检测如下图所示:
图 15 Mythic HTTPS C2加密通信的检测
Mythic作为一款开源成熟的后渗透C2框架,具备完善的功能及使用文档,黑客也在不断寻求规避安全设备检测的C2工具作为CS的替代,检测Mythic的加密流量通信迫在眉睫。
来源:金睛云华
页面更新:2024-05-01
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号