【观成科技】加密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工具的最新动态,积极研究和更新针对加密流量的检测技术。
相关文章:
【观成科技】加密C2框架Xiebro流量分析
一、工具介绍 Xiebro是由Golang和 .NET编写,提供支持的多人和多服务器 C2/后开发框架。它支持多种通信协议,包括TCP、websocket等,并且在客户端与Xiebro服务器之间的通信通常采用AES加密来保障安全性和隐蔽性。 二、工具原理分析 Xiebro C…...
【八大排序算法】插入排序、希尔排序、选择排序、堆排序、冒泡排序、快速排序、归并排序、计数排序
文章目录 一、排序的相关概念二、排序类型三、排序算法实现插入排序1.直接插入排序2.希尔排序 选择排序3.简单选择排序4.堆排序 交换排序5.冒泡排序6.快速排序递归实现非递归实现 7.归并排序递归实现非递归实现 8.计数排序 四、总结 一、排序的相关概念 排序:根据数…...
Flutter 中的 CupertinoActionSheet 小部件:全面指南
Flutter 中的 CupertinoActionSheet 小部件:全面指南 在Flutter中,CupertinoActionSheet是用于在iOS风格的应用中显示动作面板的组件。它提供了一个简洁的界面,让用户可以快速从一组选项中做出选择。CupertinoActionSheet通常伴随着一个或多…...
IDEA 好用的插件
图标插件:Atom Material Icons 此插件的作用就是更好的显示各种文件的类别,使之一目了然 汉化包 Chinese (Simplified) Language Pack / 中文语言包 作用就是 汉化 AI编码助手 GitHub Copilot AI编码助手:提示代码很好用 缺点:…...
leetcode——链表的中间节点
876. 链表的中间结点 - 力扣(LeetCode) 链表的中间节点是一个简单的链表OJ。我们要返回中间节点有两种情况:节点数为奇数和节点数是偶数。如果是奇数则直接返回中间节点,如果是偶数则返回第二个中间节点。 这道题的解题思路是&a…...
稳定网络的诀窍:静态住宅代理解决方案
在数字化时代,网络稳定性对于个人和企业都至关重要。然而,由于多种因素的影响,如地理位置、网络拥堵或网络安全问题等,网络稳定性常常受到挑战。为了应对这些挑战,静态住宅代理作为一种高效且可靠的网络解决方案&#…...
VACode 创建Vue项目完整过程
一、软件下载 VSCode官网下载地址:https://code.visualstudio.com/ 二、下载开发环境 1. 安装 [Node.js](https://nodejs.org/); 2. 安装 [npm](https://www.npmjs.com/) 依赖管理工具; 注:node.js安装完后会同步安装npm,一般…...
【C++】详解C++的模板
目录 概念 编辑 语法 函数模板 类模板 非类型模板参数 模板的特化 函数模板特化 类模板特化 全特化 偏特化 分离编译 概念 模板是C中非常厉害的设计,模板把通用的逻辑剥离出来,让不同的数据类型可以复用同一种模板的逻辑,甚至可以…...
1146 -Table ‘performance schema.session variables‘ doesn‘t exist的错误解决
一、问题出现 今天在本地连数据库的时候,发现这个问题,哎呦我擦,差点吓死了 二、解决办法 1)找文件 用everything搜一下MySQL Server 5.7 然后去Windows服务找一下MySQL配置文件的具体路径 如果知道那最好,不知道那…...
练习题(2024/5/13)
1移除链表元素 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val val 的节点,并返回 新的头节点 。 示例 1: 输入:head [1,2,6,3,4,5,6], val 6 输出:[1,2,3,4,5]示例 2: …...
LeetCode—设计循环队列(两种方法)
1.题目 2.思路一(数组) 通过数组进行模拟,通过操作数组的索引构建一个虚拟的首尾相连的环。再循环队列结构中,设置一个队首head和队尾tail,数组的大小固定为k。 初步分析:存在缺陷 改善假溢出问题&#…...
python “名称空间和作用域” 以及 “模块的导入和使用”
七、名称空间和作用域 可以简单理解为存放变量名和变量值之间绑定关系的地方。 1、名称空间 在 Python 中有各种各样的名称空间: 全局名称空间:每个程序的主要部分定义了全局的变量名和变量值的对应关系,这样就叫做全局名称空间 局部名称…...
Pycharm导入自定义模块报红
文章目录 Pycharm导入自定义模块报红1.问题描述2.解决办法 Pycharm导入自定义模块报红 1.问题描述 Pycharm 导入自定义模块报红,出现红色下划线。 2.解决办法 打开【File】->【Setting】->【Build,Execution,Deployment】->【Console】->【Python Con…...
LLMs之KG-RAG:KG-RAG(基于知识图谱的RAG系统)的简介(可以解决多跳问题/同时支持结构化和非结构化数据查询)、经验技巧、案例应用之详细攻略
LLMs之KG-RAG:KG-RAG(基于知识图谱的RAG系统)的简介(可以解决多跳问题/同时支持结构化和非结构化数据查询)、经验技巧、案例应用之详细攻略 背景痛点:传统的基于向量相似度检索的RAG模型回答多环(多步)问题的能力有限,无法同时处理来自多个文…...
综合模型及应用(图论学习总结部分内容)
文章目录 前言六、综合模型及应用(以题目总结为主)分层图思想(包括拆点建图) e g 1 : 通信线路 eg1:通信线路 eg1:通信线路[A-Telephone Lines](https://ac.nowcoder.com/acm/contest/1055/A)(蓝书例题) e g 2 : 小雨坐地铁 eg2:小雨坐地铁 eg2:小雨坐地铁 [1012-小雨坐…...
2025考研专业课、英语、数学、政治视频大全,整理全了!
考研季又到了,备考的小伙伴们,你们准备好了吗? 时间管理 考研是一场与时间的赛跑,合理安排时间,让复习更高效! - 制定详细的学习计划,每天、每周、每月都有明确目标 - ♂️ 保持一定的学习…...
设计模式之策略模式(一)
背景: 下单时有很多情况,有的是用户下单,有的是卡密下单,有的是下游下单,有的是需要唤起支付,有的不需要支付,这样就需要写很多下单接口,下面使用策略模式优化这种情况 代码结构 com.example.order ├── controller │ └── OrderController.java ├── service │ …...
常见网络攻击及解决方案
网络安全是开发中常常会遇到的情况,为什么会遇到网络攻击,网络攻击是如何进行的,如何抵御网络攻击,都是我们需要思考的问题。 为什么会遇到网络攻击? 以下是一些主要的因素: 技术漏洞:软件或操…...
【挑战30天首通《谷粒商城》】-【第一天】【10 番外篇】 解决docker 仓库无法访问 + MobaXterm连接VirtualBox虚拟机
文章目录 课程介绍 1、解决docker 仓库无法访问 2、 MobaXterm连接VirtualBox虚拟机 Stage 1:下载MobaXterm选择适合你的版本 Stage 2:vagrant ssh 连接,开启ssh访问 Stage 2-1:su获取root账号权限,输入密码(默认vagra…...
【C++】每日一题 17 电话号码的字母组合
给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 可以使用回溯法来解决这个问题。首先定义一个映射关系将数字与字母对应起来…...
Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
蓝桥杯 2024 15届国赛 A组 儿童节快乐
P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...
CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...
企业如何增强终端安全?
在数字化转型加速的今天,企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机,到工厂里的物联网设备、智能传感器,这些终端构成了企业与外部世界连接的 “神经末梢”。然而,随着远程办公的常态化和设备接入的爆炸式…...
【无标题】路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论
路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论 一、传统路径模型的根本缺陷 在经典正方形路径问题中(图1): mermaid graph LR A((A)) --- B((B)) B --- C((C)) C --- D((D)) D --- A A -.- C[无直接路径] B -…...
Caliper 配置文件解析:fisco-bcos.json
config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...
【Post-process】【VBA】ETABS VBA FrameObj.GetNameList and write to EXCEL
ETABS API实战:导出框架元素数据到Excel 在结构工程师的日常工作中,经常需要从ETABS模型中提取框架元素信息进行后续分析。手动复制粘贴不仅耗时,还容易出错。今天我们来用简单的VBA代码实现自动化导出。 🎯 我们要实现什么? 一键点击,就能将ETABS中所有框架元素的基…...
rknn toolkit2搭建和推理
安装Miniconda Miniconda - Anaconda Miniconda 选择一个 新的 版本 ,不用和RKNN的python版本保持一致 使用 ./xxx.sh进行安装 下面配置一下载源 # 清华大学源(最常用) conda config --add channels https://mirrors.tuna.tsinghua.edu.cn…...
实战设计模式之模板方法模式
概述 模板方法模式定义了一个操作中的算法骨架,并将某些步骤延迟到子类中实现。模板方法使得子类可以在不改变算法结构的前提下,重新定义算法中的某些步骤。简单来说,就是在一个方法中定义了要执行的步骤顺序或算法框架,但允许子类…...
