观成科技:白象组织BADNEWS木马加密通信分析总结报告

  1. 概述

白象,又名Hangover、Patchwork、摩诃草等,该组织主要针对中国、巴基斯坦等亚洲地区国家进行网络间谍活动,攻击目标以政府机构、科研教育领域为主。

自16年起,该APT组织一直持续使用攻击武器BADNEWS开展攻击活动,该武器的主要功能为远程控制。观成安全分析人员对近两年掌握的多个公开和未公开BADNEWS样本进行分析,发现如下特点:

  • 各个样本的整体执行逻辑、通信交互内容无明显变化;
  • 各个样本支持的控制指令无明显变化,包含执行任意命令、截图、键盘记录、服务端更新、下载文件、执行文件以及列目录操作;
  • 样本的通信加密算法一直在进行更新,从RC4+Base64到AES+Base64,再到XOR+RC4+Base64;
  • 样本使用的通信协议,从最开始的明文协议HTTP,到加密协议HTTPS;

从上述特点中可以看出,近两年BADNEWS针对加密通信方式进行了更新迭代,从协议层面、加密算法层面、密钥层面这三方面发力,加强了该攻击武器在流量侧的隐蔽性。

2.基本信息

观成安全研究团队在近期捕获了BADNEWS新样本,分析发现该样本使用了HTTPS加密协议进行C&C通信,内层HTTP载荷中又组合使用了XOR+RC4+Base64加密算法和编码,进一步提高传输信息的隐蔽性。结合近两年我们分析过的11个BADNEWS公开样本,对该木马的加密协议、算法和密钥进行了对比和总结,这11个样本的基本信息如下表:

3.加密通信分析

  • 3.1 HTTP隧道加密通信分析

早期,BADNEWS样本均使用HTTP协议进行通信(23年5月开始使用HTTPS),请求的URL为随机生成的不规则字符串,URL后缀为“php”。虽然使用的明文通信协议,但是样本使用HTTP的请求体来传输加密数据。样本运行后会先发送上线包,上线包中会将UUID和主机信息上传到C&C服务器。

图 1 上线包(HTTP)

将上线包的正文数据提取,经过解密后可以看到明文数据,其中包含了UUID和受害机的主机信息。

图 2 上线包UUID解密

图 3 上线包 主机信息解密

随后样本会持续发送心跳包,等待接收攻击者下发的控制指令,心跳间隔约5s。

图 4 心跳请求(HTTP)

  • 3.2 HTTPS加密通信分析

白象组织从23年5月开始使用HTTPS作为BADNEWS的通信协议,将原有的HTTP加密数据隐藏在了HTTPS加密协议之后。观成安全分析人员对BADNEWS产生的大量HTTPS加密流量进行分析后,总结出了以下特征。

  1. 上线流量特征

BADNEWS样本(HTTPS)在上线时存在发送两次上线包的行为,第一次上线包为受害主机的UUID,第二次上线包为主机信息。服务端对两次上线包有不同的响应,两次响应载荷长度相差1;

图 5 上线包(HTTPS)

  1. 心跳流量特征

如果服务器没有下发控制指令,BADNEWS会重复交替发送两种心跳包。第一种心跳包内容为加密后的受害机UUID值,该心跳包用于获取控制指令。第二种心跳包内容较第一种心跳包少一层URL编码并改变了固定字符串。第一种心跳包之间间隔为2~6秒。

图 6 心跳请求(HTTPS)

2.证书特征

近期披露的BADNEWS(HTTPS)服务器都使用了“Let's Encrypt”颁发的免费证书。

图 7 证书截图

3.加密算法与密钥迭代

通过对BADNEWS样本的通信加密算法进行统计观察,可以发现攻击者一直在尝试改进加密算法,并且存在密钥复用的情况。按照时间,可以将BADNEWS加密算法的使用,分为以下3个阶段:

2022年上半年(样本1-3),使用RC4+Base64,密钥相同;

2022年下半年(样本4-8),使用AES+Base64,密钥相同(除样本6外);

2023年至今(样本9-12),开始使用安全传输协议HTTPS,使用XOR+RC4+Bas64,密钥相同,且开始使用非硬编码密钥(除样本10)。

5.检测

观成瞰云(ENS)-加密威胁智能检测系统能够对BADNEWS系列攻击武器有效检出,用最新捕获的样本举例(HTTPS协议),检测结果见下图。

图 8 观成瞰云(ENS)-加密威胁智能检测系统检测结果

图 9 观成瞰云(ENS)-加密威胁智能检测系统鱼骨图展示

6.总结

观成科技对白象组织BADNEWS木马进行了长期追踪分析,从各个版本的通信方式可以看出该组织在持续对攻击武器的通信加密方式进行开发改进。在协议侧,攻击武器从使用明文协议HTTP过渡到了密文协议HTTPS;在密钥侧,攻击武器从完全使用硬编码密钥到增加使用临时会话密钥。这些改进使得白象流量的检测难度进一步提高。观成安全团队对BADNEWS的加密流量进行深入研究后,提取了该攻击武器通信流量的行为特征,实现了对BADNEWS的检测。后续,观成安全团队将继续保持对白象组织活动的长期跟踪,密切关注各类使用加密流量的最新威胁,并随时更新检测技术方案进行应对。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/493692.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++:变量和常量(3)

变量 什么是变量:变量就是一个装东西的盒子 通俗:变量是用于存放数据的容器。我们通过变量名获取数据,甚至数据可以修改 变量的作用:给指定的内存空间起名,后期通过起的名字就可以调用整个内存空间 定义变量的格式 &a…

Jenkins--在Linux上使用Docker安装

一、Jenkins 简介 Jenkins是一个流行的开源自动化服务器,用于持续集成和持续交付(CI/CD)。Jenkins的核心功能主要包括以下几点: 持续集成:Jenkins可以监控版本控制系统(如Git、SVN)中的代码变…

pytorch+tensorboard

安装依赖 pip install teorboard pip install torch_tb_profiler了解teorboard 记录并可视化标量[组]、图片[组]。 如何使用 第一步:构建模型,记录中间值,写入summarywriter 每次写入一个标量add_scalar 比如: from torch.utils.tensorboard import SummaryWriter wr…

三、阅读器开发--4、阅读器目录、全文搜索功能开发

1、阅读器目录 1.1、实现目录 先实现目录的布局 定义一个蒙版,充满整个屏幕浮在阅读器上方,左侧为目录右侧为背景,目录下方包含一个tab,点击后会切换不同的内容,这里tab是目录、书签,这里可以通过如下的…

华为设备配置攻击防范

组网需求 如图1所示,如果局域网内存在Hacker向RouterA发起畸形报文攻击、分片报文攻击和泛洪攻击,将会造成RouterA瘫痪。为了预防这种情况,管理员希望通过在RouterA上部署各种攻击防范措施来为用户提供安全的网络环境,保障正常的…

【Canvas与艺术】模拟八一电影制片厂电影片头效果

【缘起】 八一厂每部电影前都有其专有开头&#xff0c;如&#xff1a;https://www.ixigua.com/6799821997258834440?logTag2eacce76401e13f9efe7 这个片头可以用canvas模拟下来。 【关键点】 线型放射状粒子系统的运作。 立体感五角星的绘制。 【图例】 【代码】 <!D…

springBoot+ureport报表引擎

UReport是一款基于单元格迭代模型的纯Java中式报表引擎。它架构于Spring之上&#xff0c;因此与企业应用具有良好的集成能力。UReport提供了基于Eclipse插件与基于网页的两种报表模版设计方式&#xff0c;采用类Excel报表模版设计风格&#xff0c;简单、易上手&#xff0c;可在…

Nginx配置静态代理/静态资源映射时root与alias的区别,带前缀映射用alias

场景 Nginx搭建静态资源映射实现远程访问服务器上的图片资源&#xff1a; Nginx搭建静态资源映射实现远程访问服务器上的图片资源_nginx 当作图片资源访问 博客-CSDN博客 以上在配置静态资源映射时使用的如下配置 location / {root D:/pic_old/;try_files $uri $uri/ /ind…

游戏开发笔记:游戏海外版本时区问题(解释时区问题,分解为js写法和lua写法来分析记录,整理出对应语言的相关函数方法。)

对于海外游戏而言,与时间相关的功能,都不能忽略时区的计算。根据 ‘ 服务端资源是有限的,客户端资源是无穷无尽的 ’的定义来说,基本上时区包括时间的计算都是由客户端来进行计算,今天内容也是围绕客户端来展开。 时区算法常见的时间描述时区需要计算的点在lua语言中的写…

//简单函数_素数距离问题

任务描述 现在给出你一些数&#xff0c;要求你写出一个程序&#xff0c;输出这些整数相邻最近的素数&#xff0c;并输出其相距长度。如果左右有等距离长度素数&#xff0c;则输出左侧的值及相应距离。 如果输入的整数本身就是素数&#xff0c;则输出该素数本身&#xff0c;距离…

谷歌Google广告推广开户和投放攻略?

随着出海市场增加&#xff0c;越来越多的中国企业选择借助谷歌Google广告这一全球最大的在线广告平台&#xff0c;拓展海外市场&#xff0c;提升品牌知名度和产品销量。在这个过程中&#xff0c;选择一家专业且富有实战经验的服务商至关重要&#xff0c;而云衔科技正是这样一位…

看奈飞三体魔改 赏国产《三体》预告片AI重制版

看奈飞三体魔改 赏国产《三体》预告片AI重制版 In the vast expanse of the universe, secrets await to be uncovered. 宇宙无垠&#xff0c;秘密待揭。 A signal from the depths of space leads to an encounter with an alien civilization - the Trisolarans. 深空信号引…

nvic优先级溢出

nvic的抢占优先级大于当前的配置群组所要求的最大上限&#xff0c;则真正优先级为数值的溢出部分&#xff1b;如果溢出部分为0则循环为最大数据&#xff1a; 如上图所示&#xff1a;中断分组为2&#xff1a; 因此优先级因为0--3 TICK_INT_PRIORITY等于0xf即为15&#xff1b;与3…

何时需要指定泛型:Scala编程指南

这里写目录标题 何时需要指定泛型&#xff1a;Scala编程指南为什么使用泛型类型安全 何时需要指定泛型结论 何时需要指定泛型&#xff1a;Scala编程指南 在Scala编程中&#xff0c;泛型是一种强大的特性&#xff0c;它允许开发者编写灵活且类型安全的代码。然而&#xff0c;正…

kubectl 启用shell自动补全功能

官网手册参考&#xff1a;https://kubernetes.io/zh-cn/docs/tasks/tools/install-kubectl-linux/ 系统&#xff1a;centos7 补全脚本依赖于工具 bash-completion&#xff0c; 所以要先安装它&#xff08;可以用命令 type _init_completion 检查 bash-completion 是否已安装&a…

聚合支付备案新增机构名单公布,14家机构成功备案

孟凡富 3月27日&#xff0c;中国支付清算协会公布了最新一批收单外包服务机构备案机构结果&#xff0c;总备案机构为27000家&#xff0c;新增备案机构为648家&#xff0c;其中&#xff0c;新增聚合支付技术服务备案机构包括北京鑫杰华誉、深圳中峻、多点(深圳)数字科技、扬州泽…

基于MATLAB的模糊神经网络预测水质评价

%% 学习目标&#xff1a;模糊神经网络预测水质评价 %% 更多matlab精彩专题课程和案例&#xff0c;可以搜索微信公众号&#xff1a;电击小子程高兴的MATLAB小屋 %% 清空环境变量 clc clear%% 参数初始化 xite0.001; alfa0.05;%% 网络节点 I6; %输入节点数 M12; %隐含节点数…

深度学习编译工具链中的核心——图优化。

图优化 图优化的概念&#xff1a; 深度神经网络模型可以看做由多个算子连接而成的有向无环图&#xff0c;图中每个算子代表一类操作&#xff08;如乘法、卷积&#xff09;&#xff0c;连接各个算子的边表示数据流动。在部署深度神经网络的过程中&#xff0c;为了适应硬件平台…

2024年4月份 风车IM即时通讯系统APP源码 版完整苹果安卓教程

关于风车IM&#xff0c;你在互联网上能随便下载到了基本都是残缺品&#xff0c; 经过我们不懈努力最终提供性价比最高&#xff0c;最完美的版本&#xff0c; 懂货的朋友可以直接下载该版本使用&#xff0c;经过严格测试&#xff0c;该版本基本完美无缺。 下载地址&#xff1a;…

unity学习(73)——服务器异常--无法处理 123类型的数据包

服务器发送回的数据包&#xff0c;客户端根本读不出来&#xff0c;type都读不出来&#xff0c;拖了三天&#xff0c;把客户端翻了个底朝天&#xff0c;发现客户端一点问题都没有&#xff01; 所有的问题不是unity的模型问题&#xff0c;就是socket网络通信中断&#xff01; 1…