诱骗IoT恶意软件跟踪C&C服务器

简介: 在分析 IoT 僵尸网络时,识别C&C 服务器至关重要。C&C 服务器的 IP 地址一直都是商业威胁情报的重要组成部分,由于 C&C 服务器通信协议日渐复杂并且活跃周期较短,时效性和准确性也非常重要。如果可以自动化识别 IoT 恶意软件使用的 C&C 服务器,能够提供极有价值的威胁情报。

工作背景

在分析 IoT 僵尸网络时,识别C&C 服务器至关重要。C&C 服务器的 IP 地址一直都是商业威胁情报的重要组成部分,由于 C&C 服务器通信协议日渐复杂并且活跃周期较短,时效性和准确性也非常重要。如果可以自动化识别 IoT 恶意软件使用的 C&C 服务器,能够提供极有价值的威胁情报。

工作设计

首先在沙盒中执行 IoT 恶意软件触发C&C请求,紧接着 Profiler在所有流量中剥离出 C&C 流量,再通过 MitM 将流量重定向至给定的 IP:端口 空间范围,最后通过分析通信确定目标是否为 C&C 服务器。


激活 C&C 流量

要按照样本文件的架构使用对应架构的环境,使用 QEMU 和 RiotMan 来模拟所需环境。


C&C 流量剥离

算法如下所示。首先过滤掉不相关的协议(ICMP、DHCP、ARP、NTP等),接着计算与对端的连接次数/请求解析次数大不大。针对域名要过滤掉信誉高的域名,针对IP:端口计算连接频率与对端端口号出现的IP 地址数。


重定向探测

通过中间人模块来重定向流量,出于伦理考量需要做映射和限制。

确定C&C 服务器

在传输层使用两种方式:

(1)SYN-DATA 感知。在 SYN 设置低于阈值且存在数据交换时,即可认为是 C&C 服务器。即便握手也不代表在应用层面连接成功,但失败后一直重试也可能是C&C 服务器。

(2)指纹识别。将网络流建模成对话的模式:确定流的开始与结束,保证流符合 TCP 标准规范,再提取数据包属性。算法如下所示,属性可以是数据包大小、字节熵值或者 Payload 中的字符串等。通过这种方式,可以将每个流都转换成字符串。转换成字符串后,比较字符串间的相似度(最长公共序列,LCS)再进行聚类(K-Means)。



第一个流中,完成握手后客户端发送 11 字节数据,随后服务器回复 4 字节数据,客户端响应 1 字节数据结束。第二个流中,完成握手后客户端发送 2 字节数据,随后服务器回复 13 字节数据,紧接着服务器与客户端互相确认 FIN 流结束。

工作准备

C2Miner 使用 Python 和 Shell 编写,总计约 3500 行代码。


除了向 C&C 服务器发送的流量之外,全部都被过滤掉了。


从 MalwareBazaar 与 VirusTotal 中收集 1447 个 MIPS 架构的样本,平均每天可收集到四个新样本。



分析期间,样本向 15 万个“IP:端口”组合发出了 300 万次请求。一共有 202 个样本文件与 C&C 服务器建立了连接,生成了 230MB 流量(其中,C&C 流量只占 0.06%)。



这些样本覆盖了 11 个恶意软件家族,但 MIPS 样本的杀软标签很不准确。


工作评估

对比之下,最为稳定的就是指纹识别的方法。



聚类也可以很好地表征恶意软件家族的行为,但并不完美。大多数 Mirai 的样本模式为CLIENT_4.CLIENT_1.CLIENT_2.SERVER_2,大多数 Gafgyt 的样本模式为SERVER_4.SERVER_1.SERVER_4.SERVER_1,这二者就覆盖率 68% 的 C&C 通信。



该方法对 84% 的样本文件都有效。

工作思考

根据既定模式在大网展开探测,C2Miner 发现了好几个活跃的 C&C 服务器。



尽管每天识别出一个活跃 C&C 服务器,但受制于各方条件限制已经相当好了。



即使是正确的 C&C 服务器,也未必一定会正确响应。


相关文章
|
JavaScript 物联网 开发者
NB-IoT 之 CoAP 开源 libcoap 服务器客户端的安装使用 | 学习笔记
快速学习 NB-IoT 之 CoAP 开源 libcoap 服务器客户端的安装使用
NB-IoT 之 CoAP 开源 libcoap 服务器客户端的安装使用 | 学习笔记
|
弹性计算 安全 Ubuntu
基于EMQ的iot服务器架构使用说明文档
本次计划自己开发一个属于自己的iot服务器,并提供对外接口,实现物联网平台的工作效果,在学习寻找过程中发现了EMQX的服务架构,所以我就将本次在阿里云租到的ECS服务器用于开发EMQX服务架构。
530 0
基于EMQ的iot服务器架构使用说明文档
|
存储 SQL 缓存
|
安全 物联网
Radware安全研究团队发现了可摧毁不安全IoT设备的“Brickerbot”恶意软件
本文讲的是Radware安全研究团队发现了可摧毁不安全IoT设备的“Brickerbot”恶意软件,这一漏洞利用采用了与Mirai相同的攻击载体,但危险性更高
1169 0
|
数据采集 安全 搜索推荐
Shodan搜索引擎开始披露恶意软件控制服务器
本文讲的是Shodan搜索引擎开始披露恶意软件控制服务器,公司企业和安全厂商都能利用该Malware Hunter( 恶意软件猎手 )服务快速封锁通往恶意软件服务器的流量。
1619 0
|
4天前
|
存储 机器学习/深度学习 人工智能
2025年阿里云GPU服务器租用价格、选型策略与应用场景详解
随着AI与高性能计算需求的增长,阿里云提供了多种GPU实例,如NVIDIA V100、A10、T4等,适配不同场景。2025年重点实例中,V100实例GN6v单月3830元起,适合大规模训练;A10实例GN7i单月3213.99元起,适用于混合负载。计费模式有按量付费和包年包月,后者成本更低。针对AI训练、图形渲染及轻量级推理等场景,推荐不同配置以优化成本和性能。阿里云还提供抢占式实例、ESSD云盘等资源优化策略,支持eRDMA网络加速和倚天ARM架构,助力企业在2025年实现智能计算的效率与成本最优平衡。 (该简介为原文内容的高度概括,符合要求的字符限制。)
|
5天前
|
存储 弹性计算 人工智能
2025年阿里云企业云服务器ECS选购与配置全攻略
本文介绍了阿里云服务器的核心配置选择方法论,涵盖算力需求分析、网络与存储设计、地域部署策略三大维度。针对不同业务场景,如初创企业官网和AI模型训练平台,提供了具体配置方案。同时,详细讲解了购买操作指南及长期运维优化建议,帮助用户快速实现业务上云并确保高效运行。访问阿里云官方资源聚合平台可获取更多最新产品动态和技术支持。
|
7天前
|
弹性计算 JavaScript 前端开发
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
Node.js 是一种高效的 JavaScript 运行环境,基于 Chrome V8 引擎,支持在服务器端运行 JavaScript 代码。本文介绍如何在阿里云上一键部署 Node.js 环境,无需繁琐配置,轻松上手。前提条件包括 ECS 实例运行中且操作系统为 CentOS、Ubuntu 等。功能特点为一键安装和稳定性好,支持常用 LTS 版本。安装步骤简单:登录阿里云控制台,选择扩展程序管理页面,安装 Node.js 扩展,选择实例和版本,等待创建完成并验证安装成功。通过阿里云的公共扩展,初学者和经验丰富的开发者都能快速进入开发状态,开启高效开发之旅。
|
9天前
|
弹性计算 JavaScript 前端开发
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!