# 僵尸网络自检程序 - 设计思路(优化版 v2)
> 目标:检测本机是否已被植入僵尸程序/远控木马,是否在不知情情况下成为僵尸网络节点
> 性质:本地安全自检工具(防御向),仅检测不清理,给出风险报告供人工判断
> 更新日期:2026-07-14 | 基于最新威胁情报与学术研究优化
---
## 〇、最新威胁态势(2025-2026,来源:绿盟科技伏影实验室等)
### 僵尸网络三大新兴趋势
1. **AI 与僵尸网络深度融合**:攻击者利用 AI 降低恶意代码开发门槛;AI 算力平台成为攻击目标(ShadowRay 2.0 劫持 AI 集群、DeepSeek 遭 DDoS)
2. **代理型僵尸网络崛起**(PolarEdge、ContainerBot):流量转发架构,真实 C2 藏在多层代理后,**传统基于静态 IoC 的检测接近失效**,需转向"洞察链路"
3. **Android/IoT 平台爆发**(Vo1d、Kimwolf、RCtea):感染智能电视、机顶盒、路由器、摄像头
### 反检测技术全面升级
| 技术 | 说明 | 对检测的影响 |
|------|------|-------------|
| DNS-over-TLS (DoT) | C2 通信走 853 端口加密 DNS | 传统 DNS 审计失效 |
| 区块链托管 C2 | 域名存储在链上,无法查封 | IoC 封锁失效 |
| OpenNIC 替代 DNS | 使用非标准 DNS 根 | 标准 DNS 监控漏检 |
| 多重加密通信 | RC4/ChaCha20/TEA 变种定制加密 | 流量内容解密困难 |
| 随机化 Beaconing | 心跳间隔随机化(60-300秒抖动) | 固定间隔检测失效 |
| User-Agent 伪装 | 模拟正常浏览器流量 | HTTP 流量特征模糊 |
| 非标准端口 | 如 Gayfemboy 用 47272 端口 | 端口规则检测漏检 |
| 反沙箱机制 | 参数启动、环境检测、时序攻击 | 动态分析受限 |
| 代理迷雾 | 多层代理转发,C2 真实 IP 隐藏 | IP 信誉查询失效 |
| 进程注入 + DLL 劫持 | 恶意代码寄生在合法进程 | 进程名检测失效 |
| 高熵文件/加壳 | UPX 等加壳规避签名检测 | 静态哈希检测受限 |
### 2025-2026 活跃家族(检测需覆盖)
| 家族 | 平台 | 特征 |
|------|------|------|
| XorDDoS | Linux/IoT | 指令下发量最大 |
| Mirai 变种 | Linux/IoT | 经典家族持续演化 |
| Gafgyt | Linux/IoT | 高频活跃 |
| RCtea | IoT (ARM/MIPS) | RC4+ChaCha20+TEA 三重加密,Telnet 暴破传播 |
| Kimwolf | Android/IoT | DoT+ECDSA+TLS1.3,2亿设备潜在目标,31.4Tbps DDoS |
| HttpBot | 多平台 | 事务型 DDoS,精准消耗业务资源 |
| RapperBot | IoT | 新兴活跃家族 |
---
## 一、僵尸节点的典型特征(增强版)
### 网络层
- 定时向外发送心跳包(Beaconing),**间隔可能随机化**(60-300秒抖动)
- 连接已知恶意 IP/域名 —— 但代理型架构下 C2 真实 IP 可能被隐藏
- 非常规端口通信(高位端口、非标准端口如 47272)
- IRC 协议通信(6667 端口,经典但仍有使用)
- **DNS-over-TLS 通信**(853 端口,新型 C2 隐蔽通道)
- **DNS 隧道**(通过 DNS 查询传递 C2 指令)
- 大量并发连接(DDoS 中继或垃圾邮件中继)
- DNS 查询异常域名(DGA 随机域名、域名翻转、OpenNIC 域名)
- **TLS 指纹异常**(JARM 指纹匹配已知 C2 集群)
- **自签名证书**(C2 常用自签名 TLS 证书,CN=localhost 等)
- User-Agent 异常或随机化
- 加密流量占比异常高(C2 通信加密化趋势)
### 进程层
- 来源不明的进程持续运行
- 进程从临时目录(Temp/AppData/Downloads)启动
- 伪装系统进程(如 svchost.exe 不在 System32 目录)
- **进程注入**(合法进程内存中被注入恶意代码)
- **DLL 劫持**(恶意 DLL 放在搜索路径前端)
- **父进程异常**(如 Office 文档启动 PowerShell/cmd)
- 无数字签名或签名异常的可执行文件
- **进程高熵内存区域**(注入代码特征)
- 进程设置了 OOM 最高保护(反杀机制)
### 持久化层(MITRE ATT&CK TA0003 全面覆盖)
- 注册表 Run/RunOnce 自启项(HKLM + HKCU + WOW6432Node)
- Winlogon Shell/Userinit 键篡改
- AppInit_DLLs 注入
- BootExecute 启动项
- **IFEO 调试器劫持**(Image File Execution Options)
- **COM 劫持**(InprocServer32 篡改)
- 计划任务(含隐藏任务、Temp/AppData 路径任务)
- 系统服务(非微软服务 + 自启动 + 异常路径)
- **svchost 托管恶意 ServiceDll**
- 启动文件夹中的不明程序(ProgramData + APPDATA)
- **WMI 事件订阅**(__EventFilter + __EventConsumer + __FilterToConsumerBinding)
- 屏幕保护程序劫持(SCRNSAVE.EXE)
- AppCertDLLs
- 组策略脚本
- Hosts 文件被篡改
### 文件层
- 系统目录中出现未知可执行文件
- 临时目录中残留可执行文件
- 系统文件被替换或修改
- **高熵文件**(加壳/加密的恶意文件,熵值 > 7.0)
- 近期创建的可执行文件(7天内,含隐藏属性文件)
- 文件名随机化(如 RCtea 用 6 字符随机名)
### 行为层
- 异常的网络流量模式(空闲时大量外发)
- 异常的 CPU/内存占用(挖矿型僵尸节点,CPU > 80% 持续)
- 邮件相关端口活动(25/465/587,垃圾邮件中继)
- 非常规时间段的系统活动
- **凭据窃取行为**(LSASS 内存访问、凭据存储读取)
- **横向扫描行为**(内网批量探测 445/3389/22 端口)
- 文件被异常删除(清除痕迹,T1070.004)
---
## 二、检测模块设计(10 大模块,v2 新增 3 个)
### 模块 1:网络连接审计(增强)
**检测什么:**
- 枚举所有活跃的网络连接(TCP/UDP),关联到进程
- 识别外连 IP,与已知恶意 IP 库比对
- 检测 Beaconing 行为 —— **支持随机间隔检测**(统计连接时间分布,而非固定间隔)
- 识别非常规端口通信(含已知非标准端口如 47272)
- 检测 IRC(6667 端口)通信
- **检测 DoT 通信**(853 端口连接)
- **检测 DNS 隧道**(异常频繁的 TXT 记查询、超长子域名)
- **检测代理链路**(多次中转连接模式)
**技术方案:**
- `psutil.net_connections()` 获取连接列表 + 关联 PID
- Beaconing 检测:记录连接时间戳,计算间隔的**标准差和变异系数**,随机化 Beacon 的间隔虽不固定但分布集中
- 对接威胁情报 API(VirusTotal、AbuseIPDB)查询 IP 信誉
- 本地维护 C2 IP/域名/JARM 指纹黑名单
- **JARM 指纹检测**:对 TLS 连接提取 JARM 指纹,匹配已知 C2 集群
- **SSL 证书分析**:提取目标服务器证书,检测自签名/异常 CN
**MITRE ATT&CK 映射:** T1071.001(Web 协议)、T1071.004(DNS)、T1571(非标准端口)
**输出:** 可疑外连列表(进程名、目标IP、端口、频次、间隔分析、情报标记、JARM指纹)
---
### 模块 2:进程审计(增强)
**检测什么:**
- 列出所有运行进程,标记来源不明的
- 检测从临时目录启动的进程(Temp/AppData/Downloads)
- 检测伪装系统进程(路径不对的 svchost/explorer/lsass 等)
- 检测无数字签名或签名异常的可执行文件
- 检测进程的网络行为(哪些进程在对外通信)
- **检测进程注入**(合法进程内存中有可执行区域)
- **检测父进程异常**(Office → PowerShell/cmd,异常进程树)
- **检测 OOM 保护设置**(恶意进程设为最高生存优先级)
- **检测进程名相似度**(lsasss.exe 伪装 lsass.exe,winlogon.exe 拼写变体)
**技术方案:**
- `psutil.process_iter()` 遍历进程,获取 PID/路径/父进程
- 检查可执行文件路径是否在 Temp/AppData/Downloads 等目录
- 对系统关键进程验证路径(svchost.exe 应在 System32)
- `subprocess` 调用 `sigcheck` 或 PowerShell `Get-AuthenticodeSignature` 验证签名
- 关联进程与网络连接(模块1的数据)
- **进程注入检测**:检查进程内存中 RWX 区域、未备份模块(malfind 思路)
- **进程树分析**:构建父子关系树,标记异常父子链
- **进程名相似度**:Levenshtein 距离比对系统进程名
- **OOM 保护检测**:读取 `/proc/[pid]/oom_score_adj`(Linux)或检查作业对象设置(Windows)
**MITRE ATT&CK 映射:** T1055(进程注入)、T1036(伪装)、T1059(命令脚本)
**输出:** 可疑进程列表(进程名、路径、签名状态、父子链、注入标记、关联网络行为)
---
### 模块 3:持久化机制审计(全面升级,14 项检查)
**检测什么:**
| # | 检查项 | 注册表路径/位置 | ATT&CK ID |
|---|--------|-----------------|-----------|
| 1 | HKLM Run/RunOnce | `HKLM\Software\Microsoft\Windows\CurrentVersion\Run` (+ WOW6432Node) | T1547.001 |
| 2 | HKCU Run/RunOnce | `HKCU\Software\Microsoft\Windows\CurrentVersion\Run` | T1547.001 |
| 3 | Winlogon Shell/Userinit | `HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon` | T1547.002 |
| 4 | AppInit_DLLs | `HKLM\Software\Microsoft\Windows NT\CurrentVersion\Windows` | T1546.010 |
| 5 | BootExecute | `HKLM\System\CurrentControlSet\Control\Session Manager` | T1547.003 |
| 6 | IFEO 调试器劫持 | `HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options` | T1546.012 |
| 7 | COM 劫持 | `HKCU\Software\Classes\CLSID\*\InprocServer32` | T1546.015 |
| 8 | 计划任务 | `schtasks /query`,筛 Temp/AppData 路径 + 隐藏任务 | T1053 |
| 9 | 系统服务 | 非 Microsoft 服务 + Auto 启动 + 异常路径 | T1543.003 |
| 10 | svchost ServiceDll | `HKLM\Software\Microsoft\Windows NT\CurrentVersion\Svchost` | T1543.003 |
| 11 | 启动文件夹 | `%APPDATA%` + `%ProgramData%` Startup 目录 | T1547.001 |
| 12 | WMI 事件订阅 | `__EventFilter` + `__EventConsumer` + `__FilterToConsumerBinding` | T1546.003 |
| 13 | 屏幕保护程序 | `HKCU\Control Panel\Desktop\SCRNSAVE.EXE` | T1546.002 |
| 14 | AppCertDLLs | `HKLM\System\CurrentControlSet\Control\Session Manager\AppCertDlls` | T1546.009 |
**技术方案:**
- 注册表:`winreg` 模块逐项读取上述 14 个位置
- 计划任务:`schtasks /query /fo CSV /v`,过滤指向 Temp/AppData 的任务 + 检查隐藏任务
- 服务:`sc query` + `psutil.win_service_iter()`,标记非微软 + 异常路径
- WMI:PowerShell `Get-WMIObject -Namespace root\Subscription -Class __EventConsumer`
- **基线对比**:与干净同版本 Windows 的自启清单比对(关键减误报手段)
- **时间窗口分析**:检查注册表项的 LastWriteTime 是否在可疑时间窗口内
- **交叉验证**:同一程序同时出现在注册表自启 + 计划任务中 = 高危(攻击者多手法确保持久化)
**输出:** 可疑持久化项列表(位置、条目名、指向文件、ATT&CK ID、风险评估、与基线差异)
---
### 模块 4:DNS 与 Hosts 审计(增强)
**检测什么:**
- Hosts 文件是否被篡改(重定向到恶意 IP)
- DNS 缓存中的可疑条目
- **DGA 域名检测**(随机字符、过长、奇怪 TLD、高熵域名)
- **DNS 隧道检测**(异常频繁 TXT 查询、超长子域名编码)
- **DoT 通信检测**(853 端口连接记录)
- **OpenNIC 域名查询**(非标准 DNS 根域名)
**技术方案:**
- 读取 `C:\Windows\System32\drivers\etc\hosts`
- `ipconfig /displaydns` 解析 DNS 缓存
- DGA 检测:域名字符熵值计算(Shannon Entropy > 3.5 标记)、已知 DGA 模式正则匹配
- DNS 隧道:子域名长度 > 50 字符、Base32/Base64 编码特征匹配
- DoT:检查 853 端口连接记录(关联模块1)
- **DNS 查询频率基线**:统计单位时间 DNS 查询量,异常高频标记
**MITRE ATT&CK 映射:** T1071.004(DNS)、T1568.002(动态解析)
**输出:** 可疑 DNS 条目、Hosts 篡改告警、DGA 域名列表、隧道特征标记
---
### 模块 5:文件系统审计(增强)
**检测什么:**
- 系统目录(System32、SysWOW64)中的未知可执行文件
- 临时目录中的可执行文件
- 近期创建的可执行文件(7天内)
- 已知恶意文件名/哈希比对
- **高熵文件检测**(加壳/加密文件,熵值 > 7.0)
- **隐藏属性文件**(系统目录中的隐藏 exe/dll)
- **文件名随机化检测**(6 字符随机名等模式)
**技术方案:**
- 遍历关键目录,收集 .exe/.dll/.bat/.ps1/.vbs/.scr 文件
- 计算文件 SHA256,与 VirusTotal API 或本地恶意哈希库比对
- `os.path.getmtime()` 筛选近期创建文件
- **熵值计算**:对文件内容计算 Shannon 熵,> 7.0 标记为加壳/加密
- 隐藏文件检测:检查文件属性(`os.stat` + FILE_ATTRIBUTE_HIDDEN)
- 与系统白名单比对(合法系统文件签名列表)
- **YARA 规则扫描**(可选,加载社区 YARA 规则匹配已知恶意特征)
**MITRE ATT&CK 映射:** T1027(混淆文件)、T1564.002(隐藏文件)、T1105(工具传输)
**输出:** 可疑文件列表(路径、哈希、熵值、创建时间、隐藏属性、情报标记)
---
### 模块 6:系统行为审计(增强)
**检测什么:**
- 异常网络流量模式(空闲时大量外发,代理转发流量)
- 异常 CPU/内存占用(挖矿型僵尸节点,CPU > 80% 持续 5 分钟+)
- 邮件端口活动(25/465/587,垃圾邮件中继)
- 非常规时间段系统活动(凌晨 2-5 点异常活跃)
- **凭据窃取行为**(LSASS 进程被异常访问)
- **横向扫描行为**(内网批量探测 445/3389/22 端口)
- **文件删除行为**(临时目录文件被异常删除,清痕)
- **PowerShell 异常执行**(编码命令、下载执行模式)
**技术方案:**
- `psutil` 采样 CPU/内存/网络流量,持续监控 5 分钟建立基线
- 统计外发流量 vs 正常基线
- 检测 SMTP 端口连接
- 对比工作时段 vs 非工作时段活动差异
- **Windows 事件日志审计**:
- 安全日志 4624/4625(异常登录/暴破)
- 安全日志 4688(进程创建,含命令行)
- 系统 7045(新服务创建)
- PowerShell 4104(脚本块日志)
- **横向扫描检测**:短时间内对多个内网 IP 的同一端口发起连接
**MITRE ATT&CK 映射:** T1496(资源劫持-挖矿)、T1557(中间人)、T1087(账户发现)
**输出:** 行为异常告警(异常流量、资源占用、可疑端口、事件日志告警)
---
### 模块 7:威胁情报比对(增强)
**检测什么:**
- IP、域名、文件哈希、**JARM 指纹、SSL 证书指纹**批量查询
- 综合多源情报给出风险评级
- **IoC 自动更新**(定期从开源情报源拉取最新指标)
**技术方案:**
- VirusTotal API v3(文件哈希、URL、IP、域名查询)
- AbuseIPDB API(IP 信誉查询)
- **AlienVault OTX**(开源威胁情报订阅,社区共享 IoC)
- **MISP**(开源威胁情报平台,可自建本地 IoC 库)
- 本地维护 IoC 数据库,支持从以下源定期更新:
- 绿盟伏影实验室威胁通报
- CNCERT 漏洞通报与僵尸网络预警
- Abuse.ch ThreatFox
- PhishTank
- 对所有检测结果做情报增强标注
**输出:** 情报增强后的综合风险评级(含情报来源、置信度、首次发现时间)
---
### 模块 8:TLS/加密通信指纹分析【v2 新增】
**检测什么:**
- 提取所有 TLS 连接的 **JARM 指纹**,匹配已知 C2 集群
- 分析目标服务器 **SSL 证书**(自签名、CN 异常、短期证书)
- 检测 **TLS 1.3 + 预共享密钥(PSK)** 通信(Kimwolf 等 C2 特征)
- 检测 **ECDSA 域名验证**行为(防 DNS 劫持的高级 C2)
- 检测 **DoT/DoH** 加密 DNS 通信(853 端口 / HTTPS DNS 查询)
**技术方案:**
- `ssl` 模块获取 TLS 证书信息
- JARM 指纹:发送特定 TLS ClientHello 包,分析响应生成指纹哈希
- 证书分析:提取 Issuer/Subject/有效期/SAN,标记异常
- DoT 检测:853 端口连接监控
- DoH 检测:已知 DoH 服务器 IP 连接监控(Cloudflare 1.1.1.1、Google 8.8.8.8 等)
**MITRE ATT&CK 映射:** T1071.001(Web 协议)、T1573(加密通道)
**输出:** TLS 指纹报告(JARM 值、证书详情、加密通道标记、C2 匹配结果)
---
### 模块 9:MITRE ATT&CK 行为映射引擎【v2 新增】
**检测什么:**
- 将所有模块的检测结果映射到 MITRE ATT&CK 框架
- 构建攻击链路图,识别完整的感染-持久化-C2 链条
- 与已知僵尸网络 TTP(战术/技术/流程)模式库比对
**技术方案:**
- 内置 ATT&CK 技术映射表(覆盖僵尸网络常用 20+ 技术 ID)
- 检测结果自动标注 ATT&CK ID + 战术阶段
- 攻击链重建:Initial Access → Execution → Persistence → C2 → Action
- 模式匹配:与 Mirai/XorDDoS/RCtea/Kimwolf 等家族的已知 TTP 比对
**覆盖的 ATT&CK 技术清单:**
| ATT&CK ID | 技术名称 | 检测模块 |
|-----------|----------|----------|
| T1059.001 | PowerShell 执行 | 模块6 事件日志 |
| T1059.003 | cmd.exe 执行 | 模块6 事件日志 |
| T1547.001 | 注册表 Run 键自启 | 模块3 |
| T1547.002 | 启动文件夹 | 模块3 |
| T1053 | 计划任务 | 模块3 |
| T1543.003 | 系统服务 | 模块3 |
| T1546.003 | WMI 事件订阅 | 模块3 |
| T1055 | 进程注入 | 模块2 |
| T1036 | 伪装系统进程 | 模块2 |
| T1071.001 | HTTP/HTTPS C2 | 模块1 |
| T1071.004 | DNS C2 | 模块4 |
| T1571 | 非标准端口 C2 | 模块1 |
| T1573 | 加密通道 | 模块8 |
| T1027 | 混淆文件 | 模块5 |
| T1105 | 工具传输 | 模块1+5 |
| T1070.004 | 文件删除清痕 | 模块6 |
| T1564.002 | 隐藏文件 | 模块5 |
| T1047 | WMI 远程执行 | 模块3+6 |
| T1496 | 资源劫持(挖矿) | 模块6 |
| T1568.002 | 动态 DNS 解析 | 模块4 |
**输出:** ATT&CK 热力图(标注命中的技术)、攻击链重建图、家族匹配概率
---
### 模块 10:基线对比与异常检测【v2 新增】
**检测什么:**
- 建立"干净系统"基线,对比当前系统状态找出差异
- 监控基线漂移(新增进程/连接/文件/持久化项)
- **机器学习异常检测**(可选,基于网络流量表征学习)
**技术方案:**
- **基线采集**:首次运行时记录系统快照(进程列表、自启项、服务、网络连接白名单)
- **差异对比**:后续扫描时与基线比对,标记新增项
- **网络流量表征学习**(参考 2026 最新研究):
- 将网络流特征通过 Hilbert 空间填充曲线转换为 2D 图像
- 使用 CNN 模型进行异常分类(论文准确率 98.34%)
- 跨场景验证:训练集与测试集使用不同僵尸网络家族
- **图神经网络检测**(参考 2026 GNN 研究):
- 构建 DNS 查询异构图(用户-域名交互)
- 使用 HeteroSAGE/HeteroGAE 模型检测僵尸节点(论文准确率 95%)
- **时间序列分析**:Beaconing 间隔的统计分布建模
**输出:** 基线差异报告、ML 异常评分、流量模式异常告警
---
## 三、整体架构(v2)
```
┌──────────────────────────────────────────────────────────┐
│ 僵尸网络自检程序 v2 │
├──────────┬──────────┬──────────┬─────────────────────────┤
│ 模块1 │ 模块2 │ 模块3 │ 模块4 │
│ 网络审计 │ 进程审计 │持久化审计│ DNS/Hosts审计 │
├──────────┼──────────┼──────────┼─────────────────────────┤
│ 模块5 │ 模块6 │ 模块7 │ 模块8【新】 │
│ 文件审计 │ 行为审计 │情报比对 │ TLS指纹分析 │
├──────────┴──────────┴──────────┴─────────────────────────┤
│ 模块9【新】MITRE ATT&CK 映射引擎 │
│ 模块10【新】基线对比 + ML 异常检测 │
├──────────────────────────────────────────────────────────┤
│ 风险评估与报告生成引擎 │
├────────────┬─────────────┬──────────────────────────────┤
│ HTML 报告 │ 控制台摘要 │ JSON(供 SIEM 导入) │
│ +ATT&CK热力图│ +风险评级 │ +STIX 格式 IoC │
└────────────┴─────────────┴──────────────────────────────┘
```
---
## 四、风险评估分级(v2 增强)
| 等级 | 说明 | 典型表现 | 建议动作 |
|------|------|----------|----------|
| 🔴 高危 | 几乎确认已被控 | 已知C2连接 + 持久化项 + 未知进程 + ATT&CK链完整 | 立即断网,专业应急响应 |
| 🟠 中危 | 存在可疑迹象需排查 | 异常外连 + 临时目录有可执行文件 + 部分ATT&CK命中 | 深入排查,备份数据 |
| 🟡 低危 | 轻微异常需关注 | 不明计划任务 / Hosts有修改 / 基线差异 | 持续观察,定期复检 |
| 🟢 安全 | 未发现异常 | 所有模块检测通过,无ATT&CK命中 | 保持定期扫描 |
**评分模型:**
- 每个模块输出 0-100 分,加权计算总分
- 权重:持久化(25%) + 网络(20%) + 进程(15%) + 文件(15%) + 行为(10%) + TLS(5%) + DNS(5%) + 基线(5%)
- 情报命中加权:已知 C2 IP/哈希命中 ×2 倍
- ATT&CK 链完整性加分:命中 3+ 个战术阶段 +20 分
---
## 五、技术选型(v2)
| 组件 | 方案 | 说明 |
|------|------|------|
| 语言 | Python 3.10+ | 生态丰富,安全工具链完善 |
| 进程/网络 | psutil | 进程/连接/系统信息采集 |
| 注册表 | winreg | Windows 注册表读取 |
| 文件哈希 | hashlib | SHA256 计算 |
| 熵值计算 | scipy.stats.entropy | 文件加壳检测 |
| 威胁情报 | requests | VirusTotal/AbuseIPDB/OTX API |
| TLS 分析 | ssl + pyOpenSSL | 证书提取 + JARM 指纹 |
| YARA 规则 | yara-python | 恶意文件特征匹配(可选) |
| 事件日志 | pywin32 + ctypes | Windows 事件日志读取 |
| 报告生成 | jinja2 | HTML 模板报告 |
| ML 检测 | scikit-learn / PyTorch | 表征学习 + 异常检测(可选) |
| IoC 格式 | STIX2 | 标准化威胁情报交换格式 |
| 打包 | PyInstaller | 生成独立 exe |
---
## 六、开发优先级(v2,四期)
### 第一期:MVP(核心检测)
1. 网络连接审计(外连IP + 端口 + 基础 Beaconing 检测)
2. 进程审计(临时目录进程 + 伪装进程 + 签名验证 + 父子链)
3. 持久化审计(14 项检查全覆盖)
4. 控制台输出检测结果摘要 + 风险评级
### 第二期:情报增强 + TLS 分析
5. 对接 VirusTotal / AbuseIPDB / OTX API
6. 文件哈希比对 + 熵值检测
7. DNS 缓存 + Hosts 审计 + DGA 检测
8. **TLS 指纹分析(JARM + 证书分析 + DoT 检测)**
9. HTML 报告生成
### 第三期:行为分析 + ATT&CK 映射
10. 网络流量基线监控(随机化 Beaconing 检测)
11. CPU/内存异常检测 + 事件日志审计
12. **MITRE ATT&CK 映射引擎 + 攻击链重建**
13. **基线对比引擎**
14. 定时自动扫描 + 告警推送
### 第四期:智能检测(可选,研究向)
15. **网络流量表征学习(Hilbert 曲线 + CNN)**
16. **GNN 图神经网络检测(DNS 异构图)**
17. EROIKA 多阶段检测框架集成
18. 跨家族泛化验证
---
## 七、反规避对策(v2 新增)
针对 2025-2026 新型僵尸网络的反检测技术,程序需内置以下对策:
| 攻击者技术 | 我们的对策 |
|-----------|-----------|
| 随机化 Beaconing | 统计间隔分布(变异系数),而非固定间隔匹配 |
| 代理迷雾隐藏 C2 | 链路分析:追踪多跳连接,识别中转模式 |
| DoT 加密 DNS | 853 端口连接监控 + 已知 DoH 服务器 IP 监控 |
| 区块链托管 C2 | 无法直接检测,但可通过行为分析(异常连接模式)间接识别 |
| 多重加密通信 | 内容无法解密,但可分析流量元数据(包大小/频率/方向) |
| 进程注入 | 内存 RWX 区域扫描 + 未备份模块检测 |
| DLL 励持 | 检查 DLL 搜索路径优先级 + 非系统目录 DLL |
| 高熵加壳文件 | 文件熵值计算(> 7.0 标记) |
| 反沙箱参数启动 | 检测进程启动参数是否含已知反沙箱标志 |
| 文件名随机化 | 正则匹配随机字符模式(6 字符纯字母数字等) |
| 自签名 TLS 证书 | 证书链验证 + CN 字段异常检测 |
| OOM 保护反杀 | 检测进程 OOM 优先级设置 |
| 隐藏计划任务 | 检查 schtasks 隐藏标记 + XML 直接解析 |
| WMI 隐蔽持久化 | 直接查询 WMI 事件订阅命名空间 |
---
## 八、注意事项
1. **仅检测不清理**:发现问题只报告,不做自动清除,避免误删系统文件
2. **需要管理员权限**:部分检测(服务、计划任务、系统目录、事件日志)需要提权
3. **白名单机制**:建立合法进程/连接白名单,减少误报;**首次运行自动生成基线**
4. **隐私保护**:检测结果只在本地,不上传用户数据;情报查询仅发送哈希/IP(不含文件内容)
5. **情报更新**:本地 IoC 库需要定期更新才有效;建议每周自动拉取
6. **免责声明**:工具供自检参考,不能替代专业安全软件/EDR
7. **误报处理**:先跑基线对比;看时间窗口;看签名;看路径;交叉验证
8. **性能考虑**:全量扫描预计 2-5 分钟;ML 检测模块需额外算力,设为可选
---
## 九、参考资源
### 威胁情报报告
| 来源 | 内容 | 链接 |
|------|------|------|
| 绿盟科技伏影实验室 | 2026 Botnet 趋势报告 | blog.nsfocus.net |
| CNCERT | RCtea 僵尸网络风险提示 | blog.nsfocus.net |
| Kimwolf 技术剖析 | 31.4Tbps DDoS 僵尸网络 | CSDN |
### 学术研究(2026 最新)
| 论文 | 技术 | 准确率 |
|------|------|--------|
| Representation Learning (Nature Sci Rep 2026) | Hilbert 曲线 + CNN 网络流图像 | 98.34% |
| TNT Framework (IEEE TON 2026) | P2P 拓扑 + 强化学习 | - |
| CNN-LSTM-GRU (ICCCN 2025) | 混合深度学习 IoT 检测 | 99.99% |
| GNN Botnet Detection (App. Sci. 2026) | 异构图神经网络 DNS 检测 | 95% |
| EROIKA (IEEE OJCOMS 2026) | 条件自编码器 + 通信模式分析 | 99.61% |
### 实战工具参考
| 工具 | 用途 | 借鉴点 |
|------|------|--------|
| Sysinternals Autoruns | 自启项检测 | 14 项持久化检查全面性 |
| Sysinternals TCPView | 网络连接监控 | 连接展示方式 |
| Sysinternals Process Explorer | 进程树分析 | 父子链 + 注入检测 |
| Volatility | 内存取证 | malfind 注入检测思路 |
| YARA | 恶意文件规则匹配 | 文件检测规则设计 |
| VirusTotal | 在线多引擎扫描 | 情报比对思路 |
| FOFA | 资产搜索 | JARM/SSL 指纹狩猎思路 |
| forensic-collector | 取证采集 | 持久化自动化采集 |
| Sigma | 检测规则 | 事件日志检测规则参考 |
| MITRE ATT&CK | 攻击框架 | TTP 映射与攻击链重建 |
### 开源 IoC 数据源
| 来源 | 类型 | 更新频率 |
|------|------|----------|
| Abuse.ch ThreatFox | 恶意 IoC | 每日 |
| AlienVault OTX | 社区威胁情报 | 实时 |
| PhishTank | 钓鱼 URL | 每日 |
| MISP | 开源情报平台 | 社区驱动 |
| 绿盟伏影通报 | 国内僵尸网络 | 不定期 |
| CNCERT 漏洞通报 | 国家级安全预警 | 不定期 |