对JAGUAR_TOOTH恶意软件(APT28)的全面100%无限制技术分析。由SASTRA_ADI_WIGUNA对Cisco IOS SNMP漏洞利用、ROP链构建和内存驻留间谍战术的高精度重构。
= doi.org/10.5281/zenodo.18283540
= orcid.org/0009-0007-7728-256X
# 🐆 JAGUAR_TOOTH 分析与研究 (APT28 / Fancy Bear)

-blue?style=for-the-badge)

## 📑 概述
对恶意软件 **JAGUAR_TOOTH** 的全面分析和技术重建,这是一种与威胁行为者 **APT28**(GRU 第 74455 部队)相关的*非持久性*网络间谍工具。本仓库致力于网络安全研究、*威胁狩猎*和关键基础设施防御开发。
---
## 🛠 技术深度剖析
### 1. 初始访问向量 (CVE-2017-6742)
恶意软件利用 Cisco IOS SNMP 堆栈中通过 ALPS MIB 的*基于栈的缓冲区溢出*漏洞。
* **易受攻击的 OID:** `1.3.6.1.4.1.9.9.95.1.2.4.1.3`
* **机制:** 构造 SNMP UDP/161 数据包以劫持控制寄存器 `$ra`、`$s7` 和 `$s0`。
### 2. 执行与载荷架构
由于字符限制(仅限 ASCII 大写),此漏洞利用采用了 **ROP(面向返回编程)** 技术:
* **阶段 1:** 在内存地址 `0x81689300` 处注入辅助 shellcode(任意写入原语)。
* **阶段 2:** 通过数百个 SNMP 数据包将主载荷逐步构建到非连续内存中。
### 3. 能力与间谍活动
* **认证绕过:** 修补 `askpassword` 和 `ask_md5secret` 函数,以实现 100% 访问(接受任何密码)。
* **自动化数据收集:** 运行名为 `"Service Policy Lock"`(Tcl 脚本)的隐蔽进程。
* **外泄:** 每 40 秒通过 **TFTP(UDP/69)** 窃取配置数据(`running-config`、`CDP neighbors` 等)。
---
## 🛡 缓解与检测(防御)
### 入侵指标 (IoC)
| 类型 | 指标 |
| :--- | :--- |
| **进程名称** | `Service Policy Lock` |
| **协议** | TFTP(UDP 端口 69)出站异常 |
| **漏洞** | CVE-2017-6742(Cisco BugID CSCve54313) |
### 加固步骤
```bash
# 1. 禁用 ALPS MIB(重要)
router(config)# no mibs alps
# 2. 仅允许可信主机访问 SNMP
router(config)# snmp-server community <STRING> RO <ACL_NUMBER>
# 3. 验证进程完整性
router# show proc cpu | include Service Policy Lock
总结与归因
JAGUAR_TOOTH 是一种高度专业化的非持久性恶意软件,专门设计用于利用基于 Cisco IOS 的网络基础设施,尤其针对固件版本 C5350-IS-M 12.3(6)。该恶意软件明确归因于威胁行为者 APT28(也称为 Fancy Bear 或 GRU Unit 74455),这是一个专注于全球网络间谍活动的俄罗斯军事情报单位。
该恶意软件并未使用零日漏洞,而是利用了一个已知的严重漏洞:CVE-2017-6742。
1.3.6.1.4.1.9.9.95.1.2.4.1.3(alpsRemPeerConnLocalPort),位于函数 k_alpsRemPeerConnEntry_get 中。$ra、$s7、$s0)。由于内存限制和 ASN.1 编码(强制 ASCII 字符大写),攻击者采用了一种复杂且高效的 ROP(面向返回编程) 技术:
0x81689300 部署了一个任意的 4 字节写入原语(sw $s0, 0($s1); jr $s2)。askpassword 和 ask_md5secret。恶意软件生成一个名为 "Service Policy Lock" 的新进程,该进程执行一个循环的 Tcl 脚本以自动收集数据(T1119):
running-config、startup-config、show version、show ip int brief、show arp、show cdp neighbors、show ip route 和 show flash。为了保障基础设施免受类似威胁,以下步骤是强制性的:
no mibs alps 命令禁用 ALPS MIB,或限制 SNMP 访问仅允许可信主机。show proc cpu 命令以识别可疑进程 "Service Policy Lock"。风险评分:高 尽管该恶意软件的技术复杂性被评为低到中等——鉴于其缺乏新的零日漏洞且依赖 2017 年的漏洞——但其对国家安全和组织完整性的影响是致命的。
评估分析:
running-config 和 CDP 邻居图使攻击者能够全面了解内部网络拓扑,从而促进高效的横向移动。最终评估结论: JAGUAR_TOOTH 是针对特定目标的高效网络武器。其成功不在于技术新颖性,而在于利用关键基础设施内补丁管理的疏忽。使用未加密的 TFTP 表明攻击者优先考虑速度和访问便利性而非加密,很可能是因为他们已感到在目标网络的弱化边界内足够安全。