【观成科技】C2框架AdaptixC2加密流量分析

  • 工具介绍

AdaptixC2 是一款设计简洁、灵活且易于定制的命令与控制 (C2) 框架。与复杂且臃肿的大型 C2 平台不同,其轻量级设计使得攻击者能够更轻松地在不同环境中部署和调整。该框架采用模块化设计,支持C2工具的基本功能,例如在受感染的机器上运行命令、传输文件、注入进程、设置持久化以及收集系统信息。

  • 工作流程分析

客户端通过HTTPS协议连接TeamServer,而受控端默认使用HTTP协议连接TeamServer(也可选择HTTPS)。在HTTP通信中,传输的载荷数据采用RC4加密,且每次建立监听器时都会生成新的RC4密钥。

图1 核心工作流程图

整个工作流程可以分为三个阶段:

1.指令下发阶段:攻击者通过客户端向TeamServer发送命令。TeamServer接收指令后执行任务调度与存储管理,将指令存入任务队列等待受控端拉取。

2.指令执行阶段:受控端定期向TeamServer发送心跳请求,检查是否有待执行任务。当发现新指令时,受控端拉取指令并执行相应操作,如文件操作、命令执行或信息收集。

3.结果返回阶段:受控端完成指令执行后,将结果封装为数据包回传给TeamServer。TeamServer接收结果后更新任务状态、存储数据,并将结果实时推送给客户端,供攻击者在操作界面查看。

  • 加密流量分析

图2 心跳请求与指令下发和执行

3.1 HTTP层面分析

当木马使用默认的HTTP协议通信时,受控端定期向TeamServer发送心跳请求的过程中不存在载荷指令,当攻击者下发的指令由TeamServer转发给受控端后,受控端会向TeamServer确认指令内容然后回复指令执行的结果,此时存在载荷指令。

图3 心跳包与指令包

客户端下发的指令由TeamServer发送给受控端,指令存在于HTTP响应体data部分,受控端检测到指令后会在紧接着的HTTP请求包的请求体部分对指令进行确认,确认通过TeamServer会正常发送HTTP响应包,之后受控端会在下一个HTTP请求包的请求体部分返回指令执行的结果。在此过程中,HTTP响应体data部分的指令、HTTP请求包的请求体部分对指令的确认以及指令执行结果的返回数据都是使用RC4进行加密的。

图4 加密前客户端下发的指令及转化

图5 指令下发与指令确认

图6 指令执行结果

HTTP响应包中传输指令数据的默认格式为47字节。当客户端下发指令并由TeamServer转发后,受控端会对指令进行确认,因此下发指令的HTTP响应包长度等于下一次HTTP请求的数据包长度加上47字节的固定响应体长度。

图7 固定响应体长度

图8 数据包长度

指令数据包长度计算公式为:

总长度=4字节(总长)+4字节(task_id)+4字节(进程命令)+1字节(output标志)+4字节(程序状态)+4字节(字符串长度)+命令字符串长度

例如:执行shell ipconfig时,实际命令被转换为ps run -o C:\Windows\System32\cmd.exe /c ipconfig(49字节),加上固定头部共61字节。

图9 代码依据

图10 代码依据

代码中规定请求方法为POST/GET,请求的uri是/xxx.php,请求头中包含特有的内容X-Beacon-Id,UA头部固定为Mozilla/5.0 (Windows NT 6.2; rv:20.0) Gecko/20121202 Firefox/20.0,从下图的代码及工具使用截图可以看出:

图11 代码依据

图12 工具运行截图

3.2 HTTPS层面分析

当选择使用HTTPS协议时,木马会在HTTP协议基础上再封装一层TLS进行通信。整体通信逻辑保持不变:受控端定期向TeamServer发送心跳请求,TeamServer做出相应响应,数据包方向分为上行和下行。

图13 心跳请求包

客户端下发指令由TeamServer转发给受控端,受控端对下发的指令进行确认以及回复指令进行的结果,与HTTP层面相同涉及三次会话交互,第一个会话中下发指令,第二个会话中确认指令,第三个会话中回复指令执行结果。

图14 指令1

图15 指令2

图16 指令3

  • 工具检测

观成瞰云-加密威胁智能检测系统通过对提取工具通信中行为特征已经支持对该隐蔽通信通道工具AdaptixC2进行有效检出,检测告警见下图。

图17检测告警图

  • 总结

通过对AdaptixC2工具的研究发现,虽然该工具使用的通信协议TLS或HTTP隧道,发送的指令和数据都是密文,但是通过对工具使用行为的分析发现数据包具有一些固定特征和规律,即使经过TLS加密后该规律依然存在,可以通过这些行为特征对该工具进行识别,后续观成科技安全研究团队将持续跟踪这类C2框架,并积极研究更新检测手段,为客户网络安全保驾护航。

相关推荐
黄俊懿1 天前
【架构师从入门到进阶】第五章:DNS&CDN&网关优化思路——第八节:网关-注入攻击与预防
sql·网络安全·架构·系统架构·架构师·架构设计
黄俊懿1 天前
【架构师从入门到进阶】第五章:DNS&CDN&网关优化思路——第七节:网关-XSS攻击与预防
网关·网络安全·架构·系统架构·架构师·xss·架构设计
数据知道1 天前
.NET 反序列化漏洞——ViewState 与 BinaryFormatter 实战深度剖析
网络·网络安全·.net
HackTwoHub1 天前
Butter_Cookie 黄油曲奇|浏览器渗透插件,云存储检测、XSS、SQL 注入一站式 Web 安全测试工具
前端·sql·安全·web安全·网络安全·自动化·xss
AI备忘录2 天前
(十六)GRE/IPSec 隧道配置命令五厂商对照:华为 华三 锐捷 迈普 思科
运维·服务器·网络·网络协议·网络安全·华为
Eason_LYC2 天前
【GetShell】DataEase H2 JDBC远程命令执行漏洞(CVE-2025-32966+CVE-2025-49001)
网络安全·漏洞复现·dataease·白帽子·cve-2025-32966·cve-2025-49001·远程命令执行
白猫不黑2 天前
运维如何转安全(个人经验篇)
运维·学习·安全·web安全·网络安全·信息安全
Demons_kirit2 天前
PortSwigger网络缓存欺骗(4)
网络安全·缓存
白猫不黑2 天前
网络空间安全/信息安全专业学习规划(超级详细版)
运维·学习·安全·web安全·网络安全·信息安全
2601_966377132 天前
2026年教育数据安全研修班举办,数达安全发布密评工具箱与行业商用密码安全解决方案
网络安全·数据安全·2026年教育数据安全研修班