AsyncRAT C2 服务端主动发现工具
字数 1166 2025-08-22 12:22:30
AsyncRAT C2 服务端主动发现工具教学文档
1. 工具概述
AsyncRAT C2 服务端主动发现工具是一个用于探测识别AsyncRAT命令控制(C2)服务端的开源工具,主要面向安全研究人员进行APT组织追踪和情报拓线工作。
GitHub项目地址: https://github.com/g1an123/AsyncRAT_C2_Search
2. 检测原理
2.1 TLS证书检测
优点:
- 命中率100%(当服务端使用默认证书时)
- 各大搜索引擎常用的检测方法
缺点:
- 收录范围窄
- 有经验的APT组织会修改证书名来规避检测
技术细节:
- 建立连接使用的证书和密钥从Win7主机生成的p12证书提取
- Win7主机下通信加密套件默认选择TLS_RSA_WITH_AES_128_CBC_SHA
- 生成的p12证书没有密码保护,直接提取私钥
验证结果:
- Fofa规则
app="AsyncRAT"与cert.issuer="AsyncRAT"数据量一致(1682条,811个IP) - 修改证书名的服务端(
Hacker Server/HackerC2 Server)可规避Fofa检测
2.2 Ping包检测
优点:
- 稳定且准确率高
- 通过流量分析提取AsyncRAT的ping包特征进行识别
注意事项:
- 高版本对流量进行了gzip加密
- 高低版本需要分别发包验证
2.3 JARM指纹检测
优点:
- 适合作为辅助验证手段
- 可使用JA3S替代
注意事项:
- 高低版本指纹不一致
3. 工具功能
- 探测识别AsyncRAT C2服务端
- 覆盖官方仓库所有版本
- 支持多种扫描方式
4. 使用方法
4.1 基本使用
检测单个端口:
python3 AsyncRAT_C2_Seearch.py host port
4.2 公网检测
使用C2公网探测.py脚本:
# 扫描IP段(C段/B段)
scan_ip_range("186.137.33.1", "C")
# 扫描单个IP
ip_scan("218.204.179.10")
# 扫描单个端口
ip_scan("161.97.151.222", 7788)
# 扫描文件中的目标
process_target_csv("target1.csv")
# 从文件中获取IP段进行扫描
scan_ip_range_from_file("ip_range.txt")
5. 运行环境
- 已测试环境: MacOS 12.5
- 其他环境未测试
6. 检测结果对比
- Fofa: 1682条记录
- 本工具: 220条有效记录
- 差异原因: 1482条记录的AsyncRAT服务可能已下线
下线判断依据:
- Fofa数据更新时间较久
- 使用sslscan/nmap/openssl连接超时
- 本地生成木马无法连接这些服务端
7. 实际验证案例
测试服务器IP: 111.92.241.26
| 端口 | 版本 | 证书名 | Fofa检测结果 |
|---|---|---|---|
| 4404 | 0.5.3 | 正常证书名 | 可检测 |
| 5505 | 0.5.3 | Hacker Server | 不可检测 |
| 8808 | 0.5.8 | 正常证书名 | 可检测 |
| 9909 | 0.5.8 | HackerC2 Server | 不可检测 |