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

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

一、工具介绍

Xiebro是由Golang和 .NET编写,提供支持的多人和多服务器 C2/后开发框架。它支持多种通信协议,包括TCP、websocket等,并且在客户端与Xiebro服务器之间的通信通常采用AES加密来保障安全性和隐蔽性。

二、工具原理分析

Xiebro C2工具在生成木马时AES密钥硬编码在木马中,木马与C2服务器通信使用AES算法来加密通信内容,流程见下图。

图1:工具原理图

固定字段

字段用途

Pac_ket

区分传输数据内容,比如传输的心跳或者命令下发

Controler_HWID

生成的唯一ID,用于区分不同的受控主机

ProcessID

进程ID

ListenerName

监听器的名字

ReadInput

被控端命令结果返回

WriteInput

控制端命令下发

表一:传输固定字段用途

木马运行后,被控端会发一个上线请求,内容分为固定字段和对应数据,固定字段为Pac_ket、ProcessID、ListenerName、Controler_HWID、Info等数据,其中Controler_HWID为生成的唯一ID,用于区分不同的受控主机。

图2:AES密钥和上线请求的图

木马交互时心跳为固定json格式,内容为{'Pac_ket': 'ClientPing', 'Message': 'DDDD'},经过AES加密后将加密数据发送给服务端,默认木马心跳是15秒一次。

图3:心跳

服务端命令下发和被控端返回命令结果格式大致相同,服务端下发命令内容分为固定字段和对应数据,固定字段为Pac_ket、WriteInput、TargetClient、HWID,将命令放在WriteInput中,经过AES加密后将加密数据发送给受控端。被控端返回命令结果内容分为固定字段和对应数据,固定字段为Pac_ket、Controler_HWID、ProcessID、ListenerName、ReadInput,将命令结果放在ReadInput中传输给服务端。

图4:被控端返回命令结果

图5:流量分析

图6:解密后的命令结果返回内容

三、工具检测

根据分析结果,此工具具有心跳,且心跳包的载荷长度有规律,虽然载荷经过加密看不到明文,通过心跳行为模型能够实现对Xiebro C2工具的有效检测;如果工具使用者不对默认密钥进行更换,也可通过规则检测工具默认格式字段加密后的特征。

图7:Xiebro检出结果

四、总结

利用Xiebro C2工具进行C&C通信,攻击者可以将通信内容加密从而规避传统明文流量设备的检测,但是基于人工智能、流行为特征检测的加密威胁智能检测系统能够检测此类加密通信行为。如今,越来越多的攻击者采用加密通信的C2工具,以提升攻击的隐蔽性。观成科技安全研究团队持续追踪这些C2工具的最新动态,积极研究和更新针对加密流量的检测技术。

http://www.lryc.cn/news/349295.html

相关文章:

  • 【八大排序算法】插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、归并排序、计数排序
  • Flutter 中的 CupertinoActionSheet 小部件:全面指南
  • IDEA 好用的插件
  • leetcode——链表的中间节点
  • 稳定网络的诀窍:静态住宅代理解决方案
  • VACode 创建Vue项目完整过程
  • 【C++】详解C++的模板
  • 1146 -Table ‘performance schema.session variables‘ doesn‘t exist的错误解决
  • 练习题(2024/5/13)
  • LeetCode—设计循环队列(两种方法)
  • python “名称空间和作用域” 以及 “模块的导入和使用”
  • Pycharm导入自定义模块报红
  • LLMs之KG-RAG:KG-RAG(基于知识图谱的RAG系统)的简介(可以解决多跳问题/同时支持结构化和非结构化数据查询)、经验技巧、案例应用之详细攻略
  • 综合模型及应用(图论学习总结部分内容)
  • 2025考研专业课、英语、数学、政治视频大全,整理全了!
  • 设计模式之策略模式(一)
  • 常见网络攻击及解决方案
  • 【挑战30天首通《谷粒商城》】-【第一天】【10 番外篇】 解决docker 仓库无法访问 + MobaXterm连接VirtualBox虚拟机
  • 【C++】每日一题 17 电话号码的字母组合
  • vue预览PDF文件的几种方法
  • 深度学习入门到放弃系列 - 阿里云人工智能平台PAI部署开源大模型chatglm3
  • GPT-4o,AI实时视频通话丝滑如人类,Plus功能免费可用
  • 【优选算法】——Leetcode——202—— 快乐数
  • 华大基因CEPO-尹烨说学习与生活
  • C#中json数据序列化和反序列化的最简单方法(C#对象和字符串的相互转换)
  • logback 日志脱敏
  • element-ui的表单中,输入框、级联选择器的长度设置
  • 深入了解 npm:Node.js 包管理工具详解
  • 记一次跨域问题
  • 第9章 负载均衡集群日常维护