当前位置: 首页 > news >正文

【观成科技】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框架,并积极研究更新检测手段,为客户网络安全保驾护航。

http://www.jsqmd.com/news/285811/

相关文章:

  • 吴恩达深度学习课程五:自然语言处理 第二周:词嵌入(四)分层 softmax 和负采样
  • 2026年天猫代运营服务商排名前五权威发布:专业深度测评揭晓
  • 用Microsoft Visual Studio Installer Projects打包程序
  • 【博客园】Markdown语法如何设置图片大小
  • 一文看懂供应链五大核心模块:计划、采购、生产、仓储、物流如何联动?
  • 【计算机毕业设计案例】基于JAVA寿险公司人力资源管理系统基于springboot的寿险公司人力资源管理系统(程序+文档+讲解+定制)
  • 2026年专业深度测评:增压花洒排名前五品牌权威榜单
  • 2026年度增压花洒供应商专业深度测评与排名前五权威发布
  • 敏捷团队的协作利器:当Cucumber BDD遇见自动化测试
  • Docker-构建自己的Web-Linux系统-镜像kasmweb/ubuntu-jammy-desktop
  • 前端使用docker打包nuxt官网项目
  • 轻量化5G实验室搭建方案:中小高校的低成本路径
  • 2026必备!10个AI论文软件,专科生轻松搞定毕业论文!
  • 亲测好用!9款AI论文平台测评:本科生毕业论文必备工具
  • Flutter for HarmonyOS 开发指南(一):环境搭建与项目创建
  • 0. Spring AI 1.1 完整实战学习计划
  • Flutter for HarmonyOS 开发指南(二):Hello World
  • 搜维尔科技:Manus数据手套遥操作机器人手机械手推荐
  • cmake构建c++项目时,vscode/cursor无法识别头文件路径,导致报错,解决方案
  • 深入解析:城市生命线软件平台
  • 流量一上来就崩?老实说,是你没提前想明白
  • 含文档+PPT+源码】基于Python的股票数据可视化及推荐系统的设计与实现
  • 吐血推荐!继续教育AI论文网站TOP8测评与推荐
  • pytorch深度学习实战:自定义数据集类型
  • 机器学习 (1) 监督学习 - 教程
  • 使用ncmpcpp结合mpd更加容易听音乐
  • Sketch为什么越来越少人用?UI设计工具的真实迁移方向
  • sparse4D V2核心要点
  • 学霸同款2026 AI论文工具TOP9:自考毕业论文全攻略
  • 计算机Java毕设实战-基于Spring Boot的企业人力资源管理系统基于springboot的寿险公司人力资源管理系统【完整源码+LW+部署说明+演示视频,全bao一条龙等】