多格式恶意软件分析平台,结合隐蔽的 Ring-3 Windows 沙箱、静态 PE/PDF 分析器、勒索软件密钥恢复以及用于抗误报检测的 AI 集成。
系统版本:V1.6 企业版(系统功能全面更新)
作者:Rin449 核心语言与技术:C++17(MinGW-w64 / MSYS2)、Python 3.9+、PyQt6、MinHook、Capstone Engine、Intel PT(Processor Trace)、PyTorch、LightGBM、OpenSSL 3.x、zlib、Argon2id、Cryptography、Ed25519
主参考文档:多格式架构(Multi-Format)详解、递归分析算法、PE 与 PDF 静态分析、Sandbox Stealth Ring-3 动态监控、勒索软件密钥结构提取、抗误报 AI 模型(False Positive Resistant)、WinRE 离线救援系统及零知识数据安全。
Language / Ngôn ngữ: 🇻🇳 Tiếng Việt | 🇬🇧 English
BehaviorGraph)与攻击链状态机在当今网络安全时代,定向攻击(APT)、间谍软件和勒索软件(Ransomware)已超出传统可执行文件(.exe、.dll)的范围:
/Launch action),或将 PE 可执行文件以 Dropper 形式嵌入 PDF 内部。BHPAI V1.6 Enterprise 版是一个多层网络安全系统,通过 Multi-Format Hybrid Engine 架构为攻击链提供全面防护:多格式自动路由(PE、PDF、Office、Script)、嵌套 payload 递归分析、Ring-3 stealth 沙箱隔离、Intel PT 硬件监控,以及抗误报的校准 AI 模型。
BHPAI V1.6 基于 路由 - 递归解析 - 行为关联 - 离线恢复 模型设计:``` ┌───────────────────────────────────────────────┐ │ INPUT FILE STREAM │ └───────────────────────┬───────────────────────┘ │ ┌───────────▼───────────┐ │ 3-STAGE FILE ROUTER │ │ (Magic/ZIP/Script) │ └───────────┬───────────┘ │ ┌──────────────────────────────┼──────────────────────────────┐ │ │ │ [FileFormat::PE] [FileFormat::PDF] [FileFormat::Office] │ │ │ ┌────────────▼────────────┐ ┌────────────▼────────────┐ ┌────────────▼────────────┐ │ STATIC PE ANALYZER │ │ PDF ANALYZER V2.0 │ │ OOXML / OLE ANALYZER │ │ - Capstone Disassembler│ │ - Binary Stream Parser │ │ - Macro VBA Extractor │ │ - Opcode TF-IDF & CFG │ │ - Action/JS Deobfuscate│ │ - External DDE Links │ │ - YaraGen & Fuzzy Hash │ │ - 57 Features + Level 2│ │ - Embedded OLE Objects │ └────────────┬────────────┘ │ Structural Fingerprnt│ └────────────┬────────────┘ │ └────────────┬────────────┘ │ │ │ │ │ (Trích xuất Embedded PE) │ │ │ │ │ ┌────────────▼────────────┐ │ └────────────────►│ RECURSIVE ANALYSIS TREE │◄────────────────┘ │ (AnalysisNode Tree) │ └────────────┬────────────┘ │ ┌────────────▼────────────┐ │ DYNAMIC SECURE SANDBOX │ │ - Job Object & Token │ │ - COW Overlay FS/Reg │ │ - Stealth PEB Unlink │ │ - Intel PT Hardware Trc│ └────────────┬────────────┘ │ ┌──────────────────────────────┴──────────────────────────────┐ │ │ ┌────────────▼────────────┐ ┌────────────▼────────────┐ │ BHR RANSOMWARE ENGINE │ │ AI & BEHAVIORGRAPH V1.6 │ │ - High-Entropy Detector │ │ - Multi-Format Ensemble │ │ - RAM & Pagefile Keys │ │ - Cross-Process Machine │ │ - Instant COW Rollback │ │ - MITRE ATT&CK Mapping │ └─────────────────────────┘ └─────────────────────────┘
1. **安全优先与反炸弹(安全与DoS防御)**:通过独立的虚拟桌面(`BHPAISandboxDesktop`)隔离进程沙箱,限制Job Object(RAM 512MB、CPU、禁止Breakaway),并使用Restricted Token降低权限。PDF流解压器由`AnalysisBudget`和`ParserLimits`保护,防止解压缩炸弹(最大压缩比100:1,限制大小和嵌套深度)。
2. **隐蔽反规避(减少用户态足迹)**:Ring-3监控DLL通过从3个PEB模块双向链表(`InLoadOrder`、`InMemoryOrder`、`InInitializationOrder`)中移除、擦除内存中的PE Header和Debug PDB,以及设置Launcher的DACL以防御基本的`OpenProcess(PROCESS_TERMINATE)`命令,主动减少针对常见反分析技术的痕迹。
3. **递归分析树与子项支配(递归分析与子项支配)**:`AnalysisNode`树架构递归检查文档中嵌入的每个文件。当检测到子可执行文件(Child PE)为恶意时,系统触发**子项支配规则**,自动将父文档的结论升级为**MALICIOUS**,风险评分最低为85/100。
4. **抗误报AI(抗误报)**:通过三层数据集组织(`suspicious_benign`)、多级去重(精确哈希+结构指纹)和`StratifiedGroupKFold`分组分层,消除错误推理捷径。
5. **数据保护与密钥恢复(检测与协助提取候选密钥)**:BHR引擎在Win32/NT I/O范围内检测密集熵加密行为,在进程释放内存之前扫描RAM和`pagefile.sys`中的候选密钥结构(AES-GCM GHASH $H$、ChaCha20状态、RSA DER、X25519),同时支持对标准I/O操作中写入COW Overlay缓冲区的文件进行回滚。
---
### 1.3 V1.6核心技术参数表(技术亮点)
| 子系统与标准 | V1.6技术参数与部署技术 |
| :--- | :--- |
| **文件路由(File Router)** | 3-Stage: Magic Bytes (PE, PDF, PK, OLE2, Shebang) + Container Inspection (In-memory ZIP for DOCX/XLSX/PPTX) + Script Classifier (PS1, VBS, JS, BAT, HTA) |
| **原生PDF分析V2.0** | C++17 Binary-Safe Parser, FlateDecode/ASCIIHex Inflate, Recursive Embedded Payloads (`MZ`), Javascript Obfuscation & Acrobat API Analyzer, 57 Vector Features |
| **反炸弹/DoS防御** | `ParserLimits`: Max Input 500MB, Max Extracted 250MB, Max Ratio 100.0, Max Objects 100K, Max Filter Depth 6, Timeout 30 giây |
| **沙箱环境** | Windows Job Object (RAM 512MB, CPU Affinity, No Breakaway, UILIMITs) + Restricted Token (Drop Dangerous Privileges) + Virtual Desktop |
| **文件系统/注册表虚拟化** | Copy-On-Write (COW) Virtual Overlay 2 lớp hỗ trợ Alternate Data Streams (ADS), Reparse Points, và Merged Virtual Registry View |
| **隐蔽监控技术** | Unlink PEB (`InLoadOrder`, `InMemoryOrder`, `InInitializationOrder`) + In-Memory PE Header Scrubber + PDB Wiping + Launcher DACL Guard |
| **Hooking与行为图** | MinHook Engine + RAII `HookGuard` + `BehaviorGraph` liên tiến trình (Remote Thread, Process Hollowing, APC Queue Injection) |
| **Intel PT硬件监控** | Hardware-Assisted Tracing via CPUID leaf 0x14, `ProcessIntelProcessorTrace` Class 47, TNT/TIP/FUP Packet Decoder |
| **PE静态分析(Static)** | Capstone Disassembler (x86/x64) + Opcode TF-IDF + API N-Grams + CFG Cyclomatic Complexity + YaraGen (Rust Blacklist) + SSDEEP/TLSH |
| **AI/机器学习模型集** | PyTorch Sequence Embedder + GNN trên CFG + LightGBM Ensemble (Adam, Eve, Marcus) + SHAP Feature Pruning + PDF Calibrated LGBM |
| **抗误报训练** | Dataset 3 tầng (`malware`, `benign`, `suspicious_benign`), Dedup cấp 1 (SHA256) & cấp 2 (Structural Fingerprint), `StratifiedGroupKFold` |
| **勒索软件检测** | Real-time Shannon Entropy Calculation ($\ge 7.5$) + Burst Modification Rate ($>20$ files/s) + Shadow Copy Wiping Detector |
| **密钥提取与恢复** | RAM & `pagefile.sys` Extractor cho 20+ thuật toán (AES-GCM GHASH $H$, ChaCha20, RSA DER, X25519 Clamping) + Automated COW Rollback |
| **独立加密备份(Vault)** | Client-Side Zero-Knowledge E2EE (AES-256-GCM) + SRP-6a PAKE (RFC 5054) + Instant Re-Keying ($K_{\text{vault}}$) + Canonical AAD |
| **WinRE离线救援** | `bhpai_rescue.exe` C++17 standalone, 7 phân hệ, 5-Phase ACID transaction, Crash state recovery, tự động mount registry offline |
| **桌面界面与授权** | PyQt6 Dark Glassmorphism GUI (QThread workers) + Ed25519 HWID Hardware-Locked Licensing engine |
---
## 2. 整体架构图与数据处理流程
序列图展示了从接收输入文件到提取payload、静态/动态分析、AI分类和数据恢复的处理流程:```mermaid
sequenceDiagram
autonumber
actor Analyst as Chuyên viên / Người dùng
participant GUI as Desktop GUI / CLI Runner
participant Router as 3-Stage FileRouter
participant Static as Static Engine (PE/PDF/Office)
participant RecTree as Recursive Analysis Tree
participant Sandbox as Ring-3 Stealth Sandbox
participant BHR as BHR Ransomware Engine
participant AI as AI Ensemble & BehaviorGraph
participant WinRE as BHPAI Rescue Suite (WinRE)
Analyst->>GUI: Tải tệp lên (PE, PDF, Doc, Script)
GUI->>Router: Định tuyến định dạng tệp (Magic Bytes/Container)
alt Định dạng PDF
Router->>Static: Phân tích C++ PDF Parser V2.0
Static->>RecTree: Bóc tách JavaScript & Streams nhúng
opt Có tệp PE / Shellcode nhúng bên trong
RecTree->>Static: Phân tích PE con (Child PE Static Scan)
Static-->>RecTree: Phát hiện PE độc hại (Child Dominance Rule)
end
else Định dạng PE
Router->>Static: Phân tích Capstone, Opcode TF-IDF, CFG, YaraGen
end
Static->>AI: Vector hóa đặc trưng tĩnh & Dự đoán mô hình AI
opt Yêu cầu phân tích động chuyên sâu
GUI->>Sandbox: Khởi chạy mẫu trong Virtual Desktop & Job Object
Note over Sandbox: Kích hoạt PEB Unlink, COW FS/Reg, MinHook, Intel PT
Sandbox->>BHR: Giám sát Entropy & Tốc độ ghi tập tin thời gian thực
opt Phát hiện hành vi Ransomware (Entropy >= 7.5, Burst I/O)
BHR->>BHR: Kích hoạt RAM & Pagefile Candidate Key Extractor
BHR->>Sandbox: Ghi nhận Crypto Timeline & Bản đồ biến đổi
end
Sandbox->>AI: Chuyển dữ liệu sự kiện Hook/ETW vào BehaviorGraph
AI->>AI: Khớp mẫu chuỗi tấn công & MITRE ATT&CK Mapping
end
AI-->>GUI: Xuất báo cáo tổng hợp Universal Schema 2.0 (Threat Score, IOCs)
opt Hệ thống bị tê liệt hoặc dính Ransomware diện rộng
Analyst->>WinRE: Khởi động vào môi trường cứu hộ WinRE
WinRE->>WinRE: Giao dịch 5 giai đoạn: Quét offline -> Sao lưu -> Unbrick Registry -> Rollback
WinRE-->>Analyst: Hệ thống được phục hồi nguyên trạng
end
主要源代码位于:BHPAISandbox.cpp、BHPAIMonitor.cpp、SafeVirtualDesktop.cpp、SafeJobObject.cpp、IntelPTMonitor.cpp、FakeNetEngine.cpp。
BHPAISandboxDesktop):使用 CreateDesktopW 并配合标志 DESKTOP_CREATEWINDOW | DESKTOP_WRITEOBJECTS 进行初始化。恶意代码的所有图形窗口、Windows 消息(WM_DROPFILES、WM_COPYDATA、UI 重定向)均被完全限制在虚拟桌面内,与用户屏幕(Default 桌面)隔离。SafeJobObject):
JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE:当 Launcher 进程退出时,恶意代码的整个子进程树自动被销毁。JOB_OBJECT_LIMIT_PROCESS_MEMORY:限制每个进程最大 RAM 为 512MB,防止系统资源耗尽。JOB_OBJECT_LIMIT_ACTIVE_PROCESS:限制最多 32 个并发进程,防止 Fork-Bomb 攻击。JOB_OBJECT_LIMIT_DIE_ON_UNHANDLED_EXCEPTION:阻止 Windows 错误报告崩溃对话框窗口。JOB_OBJECT_UILIMIT_HANDLES | JOB_OBJECT_UILIMIT_GLOBALATOMS:阻止对全局 Handle 和 Atoms 的干预。Launcher 在调用 CreateProcessAsUserW 之前,通过 CreateRestrictedToken 创建受限 Token:
WinBuiltinAdministratorsSid、WinLocalSystemSid、WinLocalAdminSid。SeDebugPrivilege、SeTcbPrivilege、SeTakeOwnershipPrivilege、SeLoadDriverPrivilege、SeBackupPrivilege、SeRestorePrivilege、SeShutdownPrivilege、SeImpersonatePrivilege。SECURITY_MANDATORY_LOW_RID 或 SECURITY_MANDATORY_MEDIUM_RID。为降低恶意代码在 Ring-3 内存空间中发现监控 DLL 的可能性:
BHPAIMonitor.dll 自动将其自身的 LDR_DATA_TABLE_ENTRY 从进程环境块(PEB)中的 3 个双向链表中移除:
InLoadOrderModuleListInMemoryOrderModuleListInInitializationOrderModuleList
当恶意代码遍历 PEB->Ldr 或调用 EnumProcessModules 时,监控模块不会显示在列表中。PAGE_READWRITE 并清零(Zero-fill)内存中 DLL 的 IMAGE_DOS_HEADER、IMAGE_NT_HEADERS、IMAGE_SECTION_HEADER 区域以及 Debug Directory PDB Path 字符串,阻止内存签名扫描技术。SetKernelObjectSecurity 并配合空的自定义访问控制列表(DACL),拒绝来自较低完整性级别进程的 PROCESS_TERMINATE、 和 权限。系统使用 MinHook Engine 直接干预 ntdll.dll 和 kernelbase.dll 中的底层 Native NT API 函数:
所有 hook 函数均受 RAII HookGuard 层保护(thread_local bool in_hook),确保防止无限递归现象(Recursive Hook Loop Deadlock)。
在保护真实系统安全的同时,仍允许恶意代码正常交互:
GENERIC_READ 模式打开文件时,系统允许从原始文件读取。GENERIC_WRITE 写入操作或 FILE_DELETE_ON_CLOSE 删除操作时:原始文件立即被复制到虚拟化临时目录 BHPAI_Sandbox_Overlay\Files\。所有数据修改操作均在此副本上执行。file.txt:zone.identifier)、Reparse Points 和 Symbolic Links。HKLM\Software\Microsoft\Windows\CurrentVersion\Run)被映射到临时分支 HKCU\Software\BHPAI_Virtual_Registry\。使用 Microsoft Event Tracing for Windows(ETW) 子系统捕获来自内核的事件:
Microsoft-Windows-Kernel-Process:即使恶意代码使用 Direct Syscalls 绕过 Userland Hooks,也能捕获进程创建事件。Microsoft-Windows-Kernel-Network:记录底层 TCP/UDP 连接。Microsoft-Windows-Kernel-Memory:监控跨进程内存映射(Cross-Process Memory Mapping)操作。集成独立网络模拟引擎(FakeNetEngine.cpp):
127.0.0.1)。IntelPTMonitor.cpp 子系统利用 Intel CPU 的硬件跟踪功能:
__cpuidex(0x14, 0) 指令检查兼容性。ProcessIntelProcessorTrace)配置 ToPA(Table of Physical Addresses)。TNT(Taken/Not-Taken Branch)、TIP(Target IP)和 FUP(Function Pointer),从而能够检测 ROP(Return-Oriented Programming)Chains 并解密执行流,而不依赖软件。尽管设计了多层保护,Ring-3 动态分析环境在实际作战中仍存在需要明确理解的自然技术边界:
ntdll.dll 文件中自行提取 Syscall 编号(SSN - System Service Number),并从其自身内存直接执行 syscall / sysenter 二进制指令时,执行流将直接跳入 Kernel,而不经过 MinHook 在 ntdll.dll 中安装的函数。主要源代码位于:Core/analyzer/、Analyzers/PE/、pe_analyzer.exe。
IMAGE_DOS_HEADER、IMAGE_NT_HEADERS(32 位与 64 位)。OptionalHeader.AddressOfEntryPoint、ImageBase、Subsystem、DllCharacteristics(ASLR、DEP、CFG、High Entropy VA)。SizeOfRawData 与 VirtualSize 之间存在巨大偏差。IMAGE_SCN_MEM_WRITE | IMAGE_SCN_MEM_EXECUTE 属性(W^X 违规)。CS_OPT_DETAIL 初始化 cs_open(CS_ARCH_X86, CS_MODE_32 / CS_MODE_64)。.text、.code)中的全部二进制指令流。mov -> push -> call -> test -> jz)。IMAGE_IMPORT_DESCRIPTOR(IAT)并分析高可疑度的 API 组合:
VirtualAlloc $
ightarrow$ WriteProcessMemory $
ightarrow$ CreateRemoteThread。FindResource $
ightarrow$ LoadResource $
ightarrow$ LockResource $
ightarrow$ SizeofResource。CryptAcquireContext $
ightarrow$ CryptGenKey $
ightarrow$ CryptEncrypt。jmp、call、、、 结尾的指令块)。UPX0、UPX1、UPX2、ASPack、PECompact、Themida、VMProtect、.mpress。library\core\src\...、panicked at、alloc::raw_vec)。主要源代码位于:Analyzers/PDF/、FileRouter.hpp、UniversalDefanger.hpp、UniversalReportSchema.hpp、pdf_analyzer.exe。
系统不依赖文件扩展名(.exe、.pdf),而是使用 3-Stage FileRouter 路由架构:
4D 5A(MZ)$
ightarrow$ FileFormat::PE25 50 44 46(%PDF)$
ightarrow$ FileFormat::PDF50 4B 03 04(PK..)$
ightarrow$ Container InspectionD0 CF 11 E0(OLE2 Compound Document)$
ightarrow$ FileFormat::Office7F 45 4C 46(.ELF)$
ightarrow$ FileFormat::ELF#!(Shebang)/ / $
ightarrow$ 对应分支Analyzers/PDF/)PDF 分析器完全使用纯 C++17 编写,二进制安全且不依赖臃肿的外部库:
/FlateDecode(zlib inflate)、/ASCIIHexDecode、/ASCII85Decode、/LZWDecode、/RunLengthDecode 自动进行多层解压。/OpenAction、/AA、/Names、/JavaScript、/JS、/Launch、/EmbeddedFiles、/RichMedia、/XFA。AnalysisNode Architecture)分层递归树结构管理所有嵌入的 payload:``` [AnalysisNode: Root PDF (Document.pdf)] │ ├── [AnalysisNode: Object 14 - JavaScript Stream] │ └── Trích xuất: eval(unescape(...)) -> Shellcode Buffer │ └── [AnalysisNode: Object 22 - Embedded Payload (/EmbeddedFile)] ├── Định tuyến qua 3-Stage FileRouter -> Nhận diện: FileFormat::PE └── [AnalysisNode: Child PE (Dropper.exe)] ├── Phân tích tĩnh Capstone Disassembler ├── Trích xuất Section Entropy, Opcode TF-IDF, IAT └── Kết luận phân tích: MALICIOUS (Risk: 98/100)
---
### 5.4 上下文风险评分引擎与子节点支配规则(Child Dominance Rule)
1. **Contextual Risk Scoring Engine**:基于组合上下文权重进行评分(Action Trigger $\times$ JavaScript Risk $\times$ Exploit Indicators)。
2. **Child Dominance Rule(子节点支配规则)**:
- 如果递归树中的任何子节点(`Child Node`)的结论为 **`MALICIOUS`**(例如:附件 PE 文件是勒索软件或木马):
- 父节点(Parent Document)**自动将结论升级为 `MALICIOUS`**。
- 父节点的风险评分自动设置为:
$$\text{Score}_{\text{parent}} = \max(\text{Score}_{\text{parent}}, 85, \text{Score}_{\text{child}})$$
---
### 5.5 Anti-DoS 防御与解压炸弹防护(Decompression Bomb Protection)
为确保系统不会遭受资源耗尽攻击(Denial-of-Service):
- **`ParserLimits` 配置**:
- 最大输入文件大小限制:**500 MB**。
- 最大解压流总大小限制:**250 MB**。
- 最大压缩比(Max Compression Ratio):**100.0:1**(超过此阈值立即停止解压并标记 `DecompressionBombDetected`)。
- 最大对象数量限制:**100,000 Objects**。
- 解压过滤器嵌套深度限制:**最多 6 层**。
- **`AnalysisBudget` 机制**:
- 设置倒计时时钟,最大超时时间:**30 秒/文件**。
- 如果超出时间预算,自动取消递归分析,且不会导致应用程序崩溃。
---
### 5.6 基于证据的 MITRE ATT&CK 映射与通用 IOC 无害化处理
1. **Evidence-Based MITRE ATT&CK Mapping**:
每一项 MITRE ATT&CK 技术均附带具体证据(Evidence String、Object ID、Byte Offset):
- `T1204.002`(Malicious File):发现 `/OpenAction` 指向 Object 8。
- `T1059.007`(JavaScript):在 Object 14 中发现内存利用字符串。
- `T1027.009`(Embedded Payloads):在 `/EmbeddedFiles` 中发现可执行 PE 二进制文件。
2. **Universal IOC Defanger(`UniversalDefanger.hpp`)**:
在显示或导出报告前自动无害化处理入侵指标:
- URL:`http://malicious.com/c2` $\rightarrow$ `hxxp://malicious[.]com/c2`
- IPv4 / IPv6:`192.168.1.100` $\rightarrow$ `192.168.1[.]100`
- Domain:`evil-trojan.top` $\rightarrow$ `evil-trojan[.]top`
---
### 5.7 通用输出报告标准化 Universal Schema 2.0
所有分析子系统(PE、PDF、Dynamic Sandbox、WinRE)均按照 **Universal JSON Schema 2.0** 标准返回统一数据:
- `metadata`:`sha256`、`md5`、`file_size`、`format`、`timestamp`。
- `threat_summary`:`score`(0-100)、`verdict`(`CLEAN`、`SUSPICIOUS`、`MALICIOUS`)、`confidence`。
- `analysis_tree`:所有 payload 的递归层级树结构。
- `mitre_matrix`:ATT&CK 战术与技术列表及证据。
- `extracted_iocs`:已进行 defanged 处理的 IP、URL、Domain、Hash 列表。
---
## 6. 子系统 4 详解:三层数据集与抗误报 AI PDF 流水线
主要源代码位于:[`dataset/pdf/`](file:///c:/Users/Kryo/Documents/BHPAI/dataset/pdf)、[`model/pdf_features.py`](file:///c:/Users/Kryo/Documents/BHPAI/model/pdf_features.py)、[`model/train_pdf.py`](file:///c:/Users/Kryo/Documents/BHPAI/model/train_pdf.py)。
### 6.1 三层数据集分层结构(`dataset/pdf/`)
为彻底解决网络安全 AI 模型中常见的误报(False Positive)问题:
1. **`malware/`**:从真实攻击环境中收集的实际恶意软件样本(包含 CVE Exploits、Droppers、Phishing Forms、Obfuscated JS 的 PDF)。
2. **`benign/`**:标准办公 PDF 文档(书籍、财务发票、学术文档、行政凭证)。
3. **`suspicious_benign/`(Hard Negatives - 误报消除集)**:
- 完全干净但具有复杂技术特征的 PDF 文档:带有 X.509 PKCS#7 数字签名的电子发票(`/Sig`、`/ByteRange`)、包含合法计算 JavaScript 的 AcroForm 表单、附带合法文本文件的文档(`/EmbeddedFiles`)、包含源代码片段和混淆字符串的技术文档。
---
### 6.2 通过 Hard Negatives 消除“False Positive Machine”推理捷径
- 普通 AI 模型在遇到 `/JavaScript` 或 `/EmbeddedFiles` 关键词时,倾向于直接将其标记为恶意软件(Heuristic Shortcut)。
- 将 `suspicious_benign` 组纳入训练集,迫使 LightGBM 模型学习更深层的相关性(命令流熵、恶意 API 名称、解压深度的组合),而非基于关键词存在与否进行简单判定。
---
### 6.3 划分前的多级去重(Multi-Level Deduplication)
为消除训练集与测试集之间的数据泄漏(Data Leakage)现象:
1. **一级去重(Exact Hash)**:移除 SHA-256 / MD5 哈希值重复的文件。
2. **二级去重(Structural Fingerprinting)**:
- 计算 PDF 对象树结构与语义内容的哈希向量。
- 移除衍生变体(重命名、修改 metadata 但字节流树结构完全相同的变体)。
---
### 6.4 抗数据泄漏的独立集划分 `StratifiedGroupKFold`
- 使用 `StratifiedGroupKFold` 算法(`n_splits=5`)。
- 按文档家族标识(`Family Group ID`)分组,确保具有相同结构来源的所有文件完整地存在于同一个集合中(要么 Train,要么 Test),防止死记硬背和虚高准确率现象。
---
### 6.5 57 维特征向量与概率校准(`CalibratedClassifierCV`)
1. **57 维全面特征空间**:
- Header & Trailer 结构组(12 个特征):`count_obj`、`count_stream`、`count_xref`、`count_trailer`、`has_eof`、`version_number`...
- 行为触发组(15 个特征):`count_js`、`count_javascript`、`count_openaction`、`count_launch`、`count_embeddedfiles`、`count_richmedia`...
- 熵与流过滤器组(18 个特征):`stream_entropy_mean`、`stream_entropy_max`、`flatedecode_depth`、`ratio_uncompressed`...
- 代码利用与数字签名组(12 个特征):`heap_spray_pattern_count`、`eval_count`、`has_signature`、`invalid_xref_count`...
2. **概率校准(`CalibratedClassifierCV`)**:
- 在独立验证集上使用 Isotonic Regression 和 Platt Sigmoid Scaling 校准,将 LightGBM 决策树的输出转化为真实统计概率 $P(\text{Malicious} \mid X) \in [0.0, 1.0]$。
---
### 6.6 基准测试结果与抗误报能力(Audit Report)
在独立测试集(Test Set)上的实验评估:
| 评估指标 | V1.6 达成值 | 技术评价 |
| :--- | :---: | :--- |
| **Accuracy(整体准确率)** | **99.42%** | 在全部 3 个数据集上均衡 |
| **Malware Recall(恶意软件覆盖率)** | **99.15%** | 识别绝大多数 CVE 利用样本和 PDF Dropper |
| **False Positive Rate trên `benign`** | **0.00%** | 标准办公文档上未记录到误报 |
| **False Positive Rate trên `suspicious_benign`** | **0.21%** | 对数字发票和复杂 JS 表单有效抗误报 |
| **Inference Latency(AI 推理延迟)** | **1.85 ms / file** | 高速,可支持实时扫描 |
---
## 7. 子系统 5 详解:机器学习与 AI 集成(PE & GNN & SHAP)
主要源代码位于:[`AI/`](file:///c:/Users/Kryo/Documents/BHPAI/AI)、[`model/`](file:///c:/Users/Kryo/Documents/BHPAI/model)、[`model/evaluate_ensemble.py`](file:///c:/Users/Kryo/Documents/BHPAI/model/evaluate_ensemble.py)。
### 7.1 多维特征空间融合(Feature Vectorization)
融合可执行文件(PE)的特征空间模型:
1. **静态结构向量(Static Vector)**:128 维(Section Entropy、Header Anomalies、Resource Metrics、Import Table Distribution)。
2. **Opcode 指令序列向量(Disassembly TF-IDF)**:从 Capstone Engine 提取的 512 维。
3. **API 调用序列向量(API N-Grams)**:256 维。
4. **控制流图结构嵌入向量(CFG Structural Embeddings)**:128 维。
---
### 7.2 PyTorch API Sequence Embedder 与控制流图 GNN
1. **PyTorch API Sequence Embedder**:
- 双向循环神经网络 Bi-LSTM + Multi-Head Self-Attention,将连续 API 调用序列编码为紧凑的语义向量。
2. **Control Flow Graph GNN(Graph Neural Network)**:
- 使用 **Graph Convolutional Network(GCN)** 或 **Graph Attention Network(GAT)** 模型,在 CFG 上的 Basic Block 节点间进行消息传递(Message Passing),提取独立于寄存器重命名(Register Renaming)的恶意软件控制结构。
---
### 7.3 基于 SHAP Feature Pruning 的特征优化
- 应用博弈论 **SHAP(SHapley Additive exPlanations)** 解释模型决策(Explainable AI - XAI)。
- 评估每个特征的贡献值(SHAP Value $\phi_i$)。移除 SHAP 值接近 0 的特征,以优化计算速度并增强泛化能力。
---
### 7.4 LightGBM Ensemble 分类模型(Adam、Eve、Marcus)与动态阈值
集成 3 个专业化模型的 Ensemble 架构:
1. **Model Adam(Static Specialist)**:专门基于 PE 结构特征、Opcode TF-IDF 和 Header Entropy 进行分类。
2. **Model Eve(Dynamic & Behavior Specialist)**:专门基于 `BehaviorGraph` 行为图、API Hooks 日志和 Kernel ETW 进行分类。
3. **Model Marcus(Graph & Sequence Embedder)**:专门基于 GNN 和 PyTorch API Sequence Embedder 的输出进行分类。
4. **Dynamic Thresholding Engine**:
- 计算加权综合风险评分:
$$\text{Score}_{\text{final}} = w_1 \cdot P_{\text{Adam}} + w_2 \cdot P_{\text{Eve}} + w_3 \cdot P_{\text{Marcus}}$$
- 三级分类:`CLEAN`($\text{Score} < 40$)、`SUSPICIOUS`($40 \le \text{Score} < 75$)、`MALICIOUS`($\text{Score} \ge 75$)。
---
### 7.5 AI 分类器基准测试结果与实验评估
在包含 20,000 个 PE 样本(10,000 Clean + 10,000 Malware,涵盖 Ransomware、Trojan、Worm、Backdoor 家族)的独立测试数据集上进行实验:
| 指标 | Adam (Static) | Eve (Dynamic) | Marcus (GNN) | Ensemble V1.6 |
| :--- | :---: | :---: | :---: | :---: |
| **Accuracy** | 97.20% | 98.10% | 96.85% | **99.35%** |
| **Precision** | 96.80% | 98.40% | 97.10% | **99.40%** |
| **Recall** | 97.60% | 97.80% | 96.60% | **99.30%** |
| **F1-Score** | 0.9720 | 0.9810 | 0.9685 | **0.9935** |
| **AUC-ROC** | 0.9912 | 0.9945 | 0.9890 | **0.9988** |
---
## 8. 子系统 6 详解:BHR ENGINE(勒索软件检测器与密钥恢复)
主要源代码位于:[`Core/sandbox/launcher/`](file:///c:/Users/Kryo/Documents/BHPAI/Core/sandbox/launcher)、[`recovery/`](file:///c:/Users/Kryo/Documents/BHPAI/recovery)、[`bhr_identify.cpp`](file:///c:/Users/Kryo/Documents/BHPAI/bhr_identify.cpp)。
### 8.1 高熵加密检测算法(Shannon Entropy Rate)
BHR Engine 实时监控文件数据写入流:
- 每当 `NtWriteFile` 函数被调用且数据块 $\ge 4 \text{ KB}$ 时,系统计算缓冲区的 Shannon Entropy。
- 如果写入数据的熵超过阈值 **$\ge 7.5$**(压缩块或已加密 ciphertext 的特征),则触发告警计数器。
---
### 8.2 Burst Modification Rate 监控与 Shadow Copy 删除行为
1. **Burst File Modification Rate**:
- 监控文件变更频率。如果某个进程以高熵数据修改/覆盖超过 **20 个文件/秒**,该进程被判定为爆发性勒索软件行为。
2. **Shadow Copy 删除行为检测**:
- 监控启动备份破坏命令的子进程:
- `vssadmin.exe delete shadows /all /quiet`
- `wmic.exe shadowcopy delete`
- `bcdedit.exe /set {default} bootstatuspolicy ignoreallfailures`
- `bcdedit.exe /set {default} recoveryenabled no`
- `wbadmin.exe delete catalog -quiet`
---
### 8.3 从 RAM 与 `pagefile.sys` 提取加密密钥结构(20+ 标准)
当检测到加密行为时,BHR Engine 对进程内存进行快照,并扫描超过 **20 种现代密码标准**的候选加密密钥结构:
1. **AES-128 / AES-256 Key Schedules**:通过 AES S-Box / Rcon 逆运算扫描扩展密钥表(Expanded Key Schedule)。
2. **AES-GCM Authentication Subkey($H$)**:识别内存空间中特有的 GHASH 哈希块 $H = E_K(0^{128})$。
3. **ChaCha20 / Salsa20 State Matrix**:扫描标准 16 字节矩阵常量字符串:`"expand 32-byte k"`(`0x61707865`、`0x3320646e`、`0x79622d32`、`0x6b206574`)及 Nonce 数组和 Block Counter。
4. **RSA Private Key ASN.1 DER Header**:识别 PKCS#1 DER 结构(`0x30, 0x82` 及 Modulus $n$、Public Exponent $e$、Private Exponent $d$、Primes $p, q$ 序列)。
5. **X25519 / Curve25519 Scalar Clamping**:扫描满足位钳制条件(`k[0] &= 248; k[31] &= 127; k[31] |= 64;`)的 32 字节序列。
---
### 8.4 从 COW Virtual Overlay 缓冲区恢复数据(Win32/NT Scope)
由于勒索软件通过标准文件 API 进行的覆盖和加密操作均被重定向到虚拟缓冲区 `Overlay\Files\`,在此路由范围内硬盘上的用户原始文件得以保全。
- `automated_overlay_restore.py` 清理 `Overlay\` 缓冲区中已变更的文件,允许回滚虚拟更改而无需解密 ciphertext。
---
### 8.5 Crypto Timeline 日志与数据变更映射
`CryptoTimeline.cpp` 和 `crypto_tracker.py` 记录攻击发生的全部时间节点:
- 进程启动时间节点及首个文件熵增加的时间点。
- 变更映射列表:`原始文件路径` $\rightarrow$ `被加密文件路径`。
- 按时间节点的数据加密比例(Cryptographic Timeline Graph)。
---
### 8.6 Dual-Engine Hybrid 勒索软件内存密钥提取实验测试
在受控 Lab 环境中针对模拟 Dual-Engine Hybrid 加密机制(类似 LockBit 3.0 / BlackCat)的勒索软件样本进行测试:
- 对称加密:AES-256-GCM + ChaCha20。
- 非对称密钥交换:X25519 Ephemeral Scalar + RSA PKCS#1 DER。
- Heap 噪声注入:15 个随机熵内存区域和压缩块。
测试样本场景(Synthetic Benchmark)中候选密钥结构提取结果:
1. **AES-256-GCM Master Key**:匹配 GHASH $H$ Subkey,置信度 **95.0%**。
2. **ChaCha20 State Matrix**:识别矩阵常量和 Nonce,置信度 **60.25%**。
3. **X25519 Ephemeral Key**:识别 Clamping Pattern Mask,置信度 **57.0%**。
4. **RSA PKCS#1 DER Sequence Private Key**:识别 ASN.1 DER 结构,置信度 **60.75%**。
> [!WARNING]
> **实际环境中的技术边界与挑战(Real-World Limitations)**:
> 1. **加密后立即 Zeroization**:实际勒索软件变种(如 Babuk、Conti、LockBit)通常会在加密会话完成后主动调用 `SecureZeroMemory` 或 `RtlZeroMemory` 清除对称密钥数组。只有在进程正在加密期间或 zeroization 函数被调用之前及时执行 Memory Dump,提取才可行。
> 2. **C2 非对称密钥机制**:大多数现代勒索软件生成对称会话密钥对(AES/ChaCha20),使用攻击者的公钥(硬编码在恶意软件中)加密该会话密钥,仅将 Ciphertext 发送回 C2 或写入被加密文件末尾。私钥不在受害者 RAM 中。
> 3. **`pagefile.sys` 中的碎片化**:扫描磁盘上的虚拟内存要求密钥未被覆盖(paging churn)且未被碎片化为多个不连续的 4KB 页。因此,RAM/Pagefile 扫描是取证救援方案(Best-Effort Forensic Triage),不能完全替代独立的数据备份方案。
---
### 8.7 Recovery Engine Registry 与 Crypto Dataflow Tracker 架构
- **Recovery Engine Registry**(`recovery/registry.py`):动态管理和注册恢复方法(`automated_overlay_restore.py`、`exact_lookup.py`)。提供 `evaluate_all(sample)` 机制以对最优解密方法进行排名。
- **Crypto Dataflow Tracker**(`recovery/crypto_tracker.py`):关联加密事件流、密钥对象,并基于实时 I/O 事件序列验证有效性。
---
## 9. 子系统 7 详解:BEHAVIOR CORRELATOR & BEHAVIORGRAPH ENGINE V1.6
主要源代码位于:[`BehaviorCorrelator.cpp`](file:///c:/Users/Kryo/Documents/BHPAI/BehaviorCorrelator.cpp)、[`BehaviorCorrelator.hpp`](file:///c:/Users/Kryo/Documents/BHPAI/BehaviorCorrelator.hpp)、[`EventNormalizer.cpp`](file:///c:/Users/Kryo/Documents/BHPAI/EventNormalizer.cpp)。
### 9.1 多源事件标准化(Userland Hooks + Kernel ETW)
`EventNormalizer.cpp` 接收来自 MinHook Userland DLL 和 Kernel ETW 的数千个独立事件,标准化为 JSON Standard 格式:```json
{
"timestamp": 1724712000,
"pid": 4812,
"process_name": "malware.exe",
"event_type": "API_CALL",
"api_name": "NtProtectVirtualMemory",
"arguments": {
"target_pid": 1044,
"new_protect": "PAGE_EXECUTE_READWRITE"
}
}
BehaviorGraph)与攻击链状态机在 V1.6 Enterprise 版本中,行为关联器集成了 BehaviorGraph Engine:
ProcessNode)与有向边(CrossProcessEdge)的集合。(Process A -> Process B) 对识别跨进程攻击链:
OpenProcess -> VirtualAllocEx -> WriteProcessMemory -> CreateRemoteThread(T1055.002)。OpenProcess -> VirtualAllocEx -> WriteProcessMemory -> SetThreadContext(T1055.012)。OpenProcess -> VirtualAllocEx -> WriteProcessMemory -> NtQueueApcThread(T1055.004)。SetFileInformationByHandle、ReplaceFileW、CreateHardLinkW、CreateSymbolicLinkW、SetFileSecurityW)。\Device\HarddiskVolumeX 与 \??\C:\...)为标准 Win32 形式(C:\...)。RegNotifyChangeKeyValue、NtNotifyChangeKey)。NetworkSessionTracker),集成 TLS ClientHello Server Name Indication(SNI)与 HTTP Request Header(Method/Host/URI)二进制解析器。provider、algorithm、mode、keysize、ivlen、inputlen、outputlen、keygen、pid)用于 CNG/CryptoAPI/NCrypt/SystemFunction,且不泄露原始数据。V1.6 系统集成了七维自动化测试套件(tests/):
主要源代码位于:Core/vault/、gui_vault.py。
Vault V1.6 子系统遵循 Zero-Knowledge(零知识) 原则,提供高安全性的独立备份解决方案:
---
### 10.2 SRP-6a PAKE 零知识证明认证协议(RFC 5054)
为了在不泄露密码或密码哈希的情况下验证并解锁 Vault:
1. **信息初始化(Registration / Setup)**:客户端计算 $x = H(s, P)$ 和验证器 $v = g^x \pmod N$,仅存储 Salt $s$ 和验证器 $v$。
2. **认证(Authentication)**:基于共享秘密值 $S$ 执行安全凭证交换协议,并通过证明 $M_1, M_2$ 进行验证。密码永远不会以明文形式出现。
---
### 10.3 即时改密机制(Instant Re-Keying Mechanism)
BHPAI 通过 **$K_{ ext{vault}}$ Indirection** 架构解决了无需重新加密数百 GB 备份数据即可更改主密码的问题:
- 文件数据使用 Vault 主密钥 $K_{ ext{vault}}$ 加密。
- 密钥 $K_{ ext{vault}}$ 又由解锁密钥 $K_{ ext{unlock}}$(由密码生成)保护。
- 更改密码时:只需使用旧密码解密 $K_{ ext{vault}}$,然后仅使用新密码重新加密 $K_{ ext{vault}}$ 块。**所有备份数据保持密文状态不变。**
---
### 10.4 标准化 AAD 认证与抗流量分析的 Bucket Size Padding
1. **Binary Length-Prefixed Canonical AAD**(`Core/vault/integrity.py`):添加 C++ 与 Python 之间兼容的标准化附加认证数据(Authenticated Additional Data),防止不同文件之间的密文交换行为。
2. **Application-Level Bucket Size Padding**:文件被填充(Padding)至固定大小(64KB、1MB、10MB、100MB),以降低基于密文大小推测文件内容的可能性。
---
### 10.5 本地加密块存储架构(Local Encrypted Block Store)
- 将备份数据管理为安全的本地加密二进制块。
- 支持基于受保护加密内容块哈希(Encrypted Content Chunk Hash)的本地去重。
- 高度兼容外部硬盘、安全 USB 或独立救援分区的存储。
---
## 11. 子系统 9 详解:PYQT6 GLASSMORPHISM 桌面界面、HWID 授权与 CLI 工具
主要源代码位于:[`gui.py`](file:///c:/Users/Kryo/Documents/BHPAI/gui.py)、[`gui_features.py`](file:///c:/Users/Kryo/Documents/BHPAI/gui_features.py)、[`gui_vault.py`](file:///c:/Users/Kryo/Documents/BHPAI/gui_vault.py)、[`BHPAICrypto/license.py`](file:///c:/Users/Kryo/Documents/BHPAI/BHPAICrypto/license.py)。
### 11.1 PyQt6 Desktop Glassmorphism 界面架构(多线程 QThread)
专用于现场调查和本地操作的桌面用户界面:
- **非阻塞式 GUI 响应(Non-blocking GUI Responsiveness)**:所有繁重计算工作(Capstone 反汇编、Sandbox IPC、KDF 加密、PE/PDF 提取)完全与 GUI 线程分离,并通过 **`QThread` Background Workers** 进行调度。
- **Dark Glassmorphism 设计风格**:采用现代深色调、精致的圆角效果、直观的控制面板和实时状态图表系统。
---
### 11.2 桌面 GUI 核心功能标签页
1. **Multi-Format Scanner Tab**:
- 支持拖放任意文件(PE、PDF、Office、Scripts)。
- 显示威胁评分(Threat Score)、递归 payload 分析及 `AnalysisNode` 树可视化。
2. **Dynamic Sandbox Monitor Tab**:
- 实时监控事件日志、NT Native API 调用流、子进程及 CPU/RAM/Disk IO 资源图表。
3. **MITRE ATT&CK Matrix Tab**:
- 可视化恶意软件违反的战术与技术矩阵,附带直接提取的证据。
4. **BHR & Recovery Center Tab**:
- 监控数据加密时间线、实时熵参数并执行快速 Rollback 恢复。
5. **Zero-Knowledge Encrypted Vault Tab**:
- 管理本地 E2EE 加密备份库、锁定/解锁 vault、备份重要文件夹及安全恢复。
---
### 11.3 硬件锁定授权系统(HWID-Locked Licensing & Ed25519)
保护软件完整性的离线授权管理子系统:
- **设备锁定(HWID Binding)**:采集不可变硬件信息(CPU ID、BIOS UUID、Disk Serial、MAC Address)生成每台工作站的唯一 HWID 标识串。
- **Ed25519 数字签名**:使用 Ed25519 公钥算法对离线证书文件 `license.dat` 进行数字签名。
- **离线强制执行(Offline Enforcement)**:所有二进制工具(`BHPAISandbox.exe`、`pe_analyzer.exe`、`bhpai_rescue.exe`)自动加载 `license.dat`,使用 Master Public Key 验证签名并比对计算机 HWID 的一致性,无需网络连接。
---
### 11.4 威胁情报引擎与独立通用 IOC Defanger
- 内置常见恶意软件家族识别知识库(LockBit、Conti、WannaCry、RedLine、Emotet、Babuk)及行为分类规则集。
- 自动提取并 defang 恶意 IOC 列表(IP、Domain、URL、Hashes),在报告提取过程中保护分析师安全。
---
### 11.5 多格式报告系统 Universal Schema 2.0(JSON、Markdown、PDF)
- **JSON Schema 2.0**:提供标准化的机器可读数据结构,便于与其他分析系统集成。
- **Markdown Summary**:导出直观的摘要报告,支持数字调查工程师之间的快速分享。
- **PDF 报告**:自动生成专业报告,附带熵分布图表和 payload 结构树。
---
## 12. 子系统 10 详解:BHPAI RESCUE SUITE 与 WINRE 紧急救援启动
主要源代码位于:
- C++ 救援工具:[`Rescue/`](file:///c:/Users/Kryo/Documents/BHPAI/Rescue)、[`bhpai_rescue.exe`](file:///c:/Users/Kryo/Documents/BHPAI/bhpai_rescue.exe)。
- 部署脚本:[`scripts/deploy_winre.ps1`](file:///c:/Users/Kryo/Documents/BHPAI/scripts/deploy_winre.ps1)、[`scripts/trigger_rescue_reboot.ps1`](file:///c:/Users/Kryo/Documents/BHPAI/scripts/trigger_rescue_reboot.ps1)。
- 示例报告:[`BHPAI_Rescue_Summary.md`](file:///c:/Users/Kryo/Documents/BHPAI/BHPAI_Rescue_Summary.md)。
---
### 12.1 Windows Recovery Environment(WinRE)离线救援环境
当操作系统被勒索软件攻击导致瘫痪、屏幕锁定(Screen Locker)、安全模式被禁用或系统文件被篡改时,在正在运行的操作系统上直接分析会面临诸多风险,因为会受到恶意进程或 rootkit 的干扰。**BHPAI Rescue Suite V2** 通过从离线环境 **Windows Recovery Environment(WinRE)** 或 Windows PE 运行来解决这一问题:
- **与运行环境隔离**:不受主 Windows 中活动的恶意进程或内核钩子的影响。
- **离线注册表加载(Offline Hive Loading)**:自动将硬盘上的实际注册表结构文件(`SYSTEM`、`SOFTWARE`、`NTUSER.DAT`)挂载(mount)到 WinRE 的临时分支,以便在目标操作系统无需启动的情况下修改并释放系统锁定。
- **Air-Gapped 与网络隔离**:完全本地执行,无需网络连接,降低 C2 僵尸网络发送数据销毁信号的风险。
---
### 12.2 `bhpai_rescue.exe` 的 7 个核心子系统架构
源代码位于 [`Rescue/`](file:///c:/Users/Kryo/Documents/BHPAI/Rescue),使用纯 C++17 构建,与 OpenSSL 和 zlib 静态链接(static linking)编译:```
Rescue/
├── include/
│ ├── RescueTargetFinder.hpp # 1. Định vị & Nhận diện Phân vùng Windows Mục tiêu
│ ├── OfflineRegistryManager.hpp # 2. Quản lý Hive Registry Ngoại tuyến & Gỡ Bỏ Persistence
│ ├── OfflineMalwareScanner.hpp # 3. Động cơ Phân tích Tĩnh BHR 10-Pillar PE Scanner
│ ├── OfflineBlastRadius.hpp # 4. Đánh giá Thiệt hại Mã hóa Đa tín hiệu (Multi-Signal)
│ ├── OfflineCryptoArtifactHunter.hpp # 5. Săn lùng Khóa Mật mã trong pagefile.sys & Memory Dumps
│ ├── RescueRemediator.hpp # 6. Bộ Thực thi Khắc phục & Điều phối Giao dịch
│ └── RescueTransactionJournal.hpp # 7. Nhật ký Giao dịch ACID LIFO Rollback
└── source/
└── bhpai_rescue_main.cpp # Điểm khởi nhập (Entrypoint CLI & Menu Tương tác)
RescueTargetFinder(操作系统分区定位):
FindFirstVolumeW、FindNextVolumeW)。System32\ntoskrnl.exe、System32\config\SYSTEM、explorer.exe)。OfflineRegistryManager(离线注册表管理):
RegLoadKeyW 将 hive 文件加载到临时前缀:HKEY_LOCAL_MACHINE\BHPAI_OFFLINE_SYSTEM、BHPAI_OFFLINE_SOFTWARE、BHPAI_OFFLINE_NTUSER。Select\Current 键解析当前活动的 ControlSet(例如:ControlSet001)。为确保安全,防止中断 Windows 操作系统的风险,RescueRemediator 采用 5 步事务流程:```
[Phase 1: DETECT] ────► [Phase 2: BACKUP] ────► [Phase 3: MODIFY] ────► [Phase 4: VERIFY] ────► [Phase 5: COMMIT]
Phát hiện mã độc Sao lưu Registry Cách ly tệp mã độc Kiểm tra tính toàn Xác nhận giao dịch
& Khóa Persistence & Tệp gốc (LIFO) & Khôi phục Registry vẹn & Hash khớp hoàn tất
│
(Nếu có lỗi)
▼
[AUTOMATIC ROLLBACK]
(Hoàn tác tức thì)
1. **Phase 1 (Detect)**:全面扫描,列出所有恶意二进制文件、注册表持久化键和受影响的文件。
2. **Phase 2 (Backup)**:创建与 Volume GUID 和 Disk ID 绑定的交易目录 `C:\BHPAI_Rescue_Backup\`。备份所有 hive 文件(`SYSTEM.before`、`SOFTWARE.before`、`NTUSER.DAT.before`)并保存原始文件元数据(大小、时间属性、ACL 描述符)。
3. **Phase 3 (Modify)**:将每个操作记录到交易日志(`transaction.json`),将恶意代码文件移入隔离区并修复恶意注册表值。
4. **Phase 4 (Verify)**:逐一验证磁盘上的每项更改:确认恶意文件已不在原位置,隔离区中的文件与 SHA-256 哈希匹配,且注册表 Hive 已正确指向 Windows 标准二进制文件。
5. **Phase 5 (Commit)**:将交易状态从 `IN_PROGRESS` 改为 `COMMITTED`。如果 Phase 3 或 Phase 4 中任何步骤出现问题,系统将自动触发 **LIFO Rollback**,完整恢复 hive 文件并将文件从隔离区还原到原始位置。
---
### 12.4 崩溃状态自动恢复机制(Crash State Recovery)
如果计算机在 `bhpai_rescue.exe` 执行修改期间突然断电或意外关机:
- 在下次启动进入 WinRE 时,`bhpai_rescue.exe` 将自动读取 `transaction.json` 并检测到 **CRASH STATE**(`IN_PROGRESS`)状态。
- 程序发出警告 `[CRITICAL WARNING] INCOMPLETE REMEDIATION DETECTED`。
- 提供两级恢复选项:
- **Tier 1**:按 LIFO Rollback 日志顺序进行反向恢复。
- **Tier 2 (Emergency Hive Restore)**:从 `*.before` 备份强制恢复所有原始注册表 hive 文件。
---
### 12.5 部署方案与 WinRE 自动启动
#### 1. 安全嵌入脚本 [`scripts/deploy_winre.ps1`](file:///c:/Users/Kryo/Documents/BHPAI/scripts/deploy_winre.ps1):
- **直接调用 DISM**:执行 `& dism.exe` 并实时传递输出流,降低 PowerShell 进程挂起的风险。
- **保留配置状态**:记录原始 WinRE 状态(`reagentc /info`)。如果初始为 Disabled,完成后将恢复为 Disabled;如果初始为 Enabled,将确保 WinRE 重新激活。
- **修改前备份**:自动将 `Winre.wim` 复制为 `Winre.wim.BHPAI.backup`。
- **自适应启动器**:创建脚本 `Windows\System32\bhpai.cmd`,使用环境变量 `%~d0` 和 `%SystemDrive%`,自动适应 WinPE 分配的驱动器盘符。
- **自动回滚机制**:处理挂载过程中产生的异常,自动执行 `/Discard`,从备份恢复 WIM 文件并清理临时目录。
#### 2. 救援启动脚本 [`scripts/trigger_rescue_reboot.ps1`](file:///c:/Users/Kryo/Documents/BHPAI/scripts/trigger_rescue_reboot.ps1):
- 如果 WinRE 处于关闭状态则激活它。
- 使用标准命令 `reagentc /boottore` 并配置 `bcdedit /set {current} recoveryenabled yes`,以指定计算机在下次重启时启动进入 WinRE。
---
### 12.6 `bhpai_rescue.exe` 操作指南与命令行参数
在计算机启动进入 Windows Recovery Environment 后:
1. 依次点击:**Troubleshoot(疑难解答)** $\rightarrow$ **Advanced options(高级选项)** $\rightarrow$ **Command Prompt(命令提示符)**。
2. 在命令行窗口中,输入: ```cmd
bhpai
Select Operation Mode: [1] Dry-Run Safe Triage (Phân tích & Lập báo cáo - KHÔNG sửa đổi đĩa) [2] Full Active Emergency Rescue (Giao dịch 5 giai đoạn: Quét -> Sao lưu -> Khắc phục -> Xác thực -> Commit) [3] Multi-Signal Blast Radius Assessment (Đánh giá mức độ tệp bị mã hóa & Ransom Notes) [4] Crypto Artifact Hunter (Săn tìm cấu trúc khóa mật mã trong pagefile.sys & Crash Dumps) [5] Registry Unbrick Only with Pre-Backup (Khôi phục Winlogon Shell về explorer.exe) [6] Transactional Rollback (Hoàn tác toàn bộ thay đổi từ BHPAI_Rescue_Backup) [7] Exit / Return to WinRE Prompt
#### 高级命令行参数(CLI Flags):```cmd
# Chạy mô phỏng an toàn không sửa đĩa (Dry-Run):
bhpai_rescue.exe --dry-run
# Chạy khắc phục toàn diện tự động (Auto Repair):
bhpai_rescue.exe --target C: --repair --auto
# Hoàn tác phiên cứu hộ trước đó (Rollback):
bhpai_rescue.exe --target C: --rollback
# Xuất kết quả ra định dạng JSON cho chuyên gia điều tra:
bhpai_rescue.exe --dry-run --json
# Chỉ định tệp bản quyền ngoại tuyến:
bhpai_rescue.exe --license C:\license.dat --repair
完成每个工作会话后,系统会在目标分区根目录下输出 2 份数字调查取证报告(DFIR Reports):
C:\BHPAI_Rescue_Report.json:JSON 格式的详细报告,包含所有 SHA-256 哈希值、密钥列表、注册表行为和事务元数据。C:\BHPAI_Rescue_Summary.md:Markdown 格式的摘要报告,为分析专家提供综合呈现(参考示例:BHPAI_Rescue_Summary.md)。bhpai_sourceopen - 25%)为服务网络安全研究社区、独立测试和技术能力演示,BHPAI 项目发布了 Community Edition,存放于目录 bhpai_sourceopen。该软件包按照 Open-Core 模式设计:
Core/scanner/:全部 C++ 源代码,用于分析 PE 结构、提取 Opcode/API N-Grams 特征、CFG Cyclomatic Complexity 图、TF-IDF、自动生成 YaraGen 规则、AVX2 StringEx 优化字符串处理。Core/Decompile/:通过 Capstone Engine 实现的 x86/x64 二进制反汇编器(Disassembler、PeParser)。Core/pack/:UPX 和 WWPack 的内存解包器。fuzzy/:SSDEEP 二进制模糊哈希算法(fuzzyhash.c/.h)。Analyzers/Common/:三阶段文件路由 FileRouter、ParserLimits 限制、MITRE ATT&CK 映射 MitreMapper、IOC 无害化 IOCExtractor(Defanging)。Core/Train/ 与 model/:PE 特征向量提取器(feature_extractor.py)和分类阈值配置。scan.py 与 app_scan.py:命令行扫描器和专用于 PE 的桌面界面。[!IMPORTANT] 版权承诺与独立性:
- 100% 排除 PDF 子系统:由于 PDF 子系统仍在完善开发中,全部 PDF 源代码均保密,不纳入此开源版本。
- 100% 排除数据集:绝对不公开
dataset/目录(不包含恶意软件样本或用户文档)。- 独立版权:附带 Community license stub(
BhpaiLicense.hpp),帮助用户完全自由地编译和运行二进制分析,无需激活商业硬件密钥。
BHPAI V1.6 Enterprise 项目技术 Master 文档由 BHPAI Engineering Team 编制并标准化。保留所有权利。
语言 / Language:🇻🇳 Tiếng Việt | 🇬🇧 English
系统版本:V1.6 Enterprise Edition(完整架构与功能发布)
作者:Rin449 核心语言与技术栈:C++17(MinGW-w64 / MSYS2)、Python 3.9+、PyQt6、MinHook、Capstone Engine、Intel PT(Processor Trace)、PyTorch、LightGBM、OpenSSL 3.x、zlib、Argon2id、Cryptography、Ed25519
主参考手册:涵盖多格式架构路由、分层递归载荷分解、静态 PE 与原生 PDF 流解析、Ring-3 隐蔽动态沙箱、勒索软件候选密钥提取、抗误报校准 AI 模型、离线 WinRE 事务恢复套件以及零知识加密保险库备份。
在现代网络安全威胁态势中,高级持续性威胁(APT)、间谍软件和勒索软件活动已远远超出传统可执行二进制文件(.exe、.dll)的范畴:
/Launch 操作生成隐藏 shell 命令)或在文档中嵌入投放器 PE 可执行文件来实现。BHPAI 版本 V1.6 Enterprise 是一个多层网络防御生态系统,通过统一的 多格式混合引擎 提供端到端攻击链防护:三阶段自动格式路由(PE、PDF、Office、Script)、递归嵌套载荷分析、Ring-3 隐蔽动态沙箱隔离、硬件辅助 Intel PT 监控,以及经过校准的抗误报 AI 模型。
BHPAI V1.6 基于 路由 - 递归剖析 - 关联行为 - 离线恢复 的架构原则运行:``` ┌───────────────────────────────────────────────┐ │ INPUT FILE STREAM │ └───────────────────────┬───────────────────────┘ │ ┌───────────▼───────────┐ │ 3-STAGE FILE ROUTER │ │ (Magic/ZIP/Script) │ └───────────┬───────────┘ │ ┌──────────────────────────────┼──────────────────────────────┐ │ │ │ [FileFormat::PE] [FileFormat::PDF] [FileFormat::Office] │ │ │ ┌────────────▼────────────┐ ┌────────────▼────────────┐ ┌────────────▼────────────┐ │ STATIC PE ANALYZER │ │ PDF ANALYZER V2.0 │ │ OOXML / OLE ANALYZER │ │ - Capstone Disassembler│ │ - Binary Stream Parser │ │ - Macro VBA Extractor │ │ - Opcode TF-IDF & CFG │ │ - Action/JS Deobfuscate│ │ - External DDE Links │ │ - YaraGen & Fuzzy Hash │ │ - 57 Features + Level 2│ │ - Embedded OLE Objects │ └────────────┬────────────┘ │ Structural Fingerprnt│ └────────────┬────────────┘ │ └────────────┬────────────┘ │ │ │ │ │ (Extract Embedded PE) │ │ │ │ │ ┌────────────▼────────────┐ │ └────────────────►│ RECURSIVE ANALYSIS TREE │◄────────────────┘ │ (AnalysisNode Tree) │ └────────────┬────────────┘ │ ┌────────────▼────────────┐ │ DYNAMIC SECURE SANDBOX │ │ - Job Object & Token │ │ - COW Overlay FS/Reg │ │ - Stealth PEB Unlink │ │ - Intel PT Hardware Trc│ └────────────┬────────────┘ │ ┌──────────────────────────────┴──────────────────────────────┐ │ │ ┌────────────▼────────────┐ ┌────────────▼────────────┐ │ BHR RANSOMWARE ENGINE │ │ AI & BEHAVIORGRAPH V1.6 │ │ - High-Entropy Detector │ │ - Multi-Format Ensemble │ │ - RAM & Pagefile Keys │ │ - Cross-Process Machine │ │ - Instant COW Rollback │ │ - MITRE ATT&CK Mapping │ └─────────────────────────┘ └─────────────────────────┘
1. **安全优先与防炸弹保护**:沙箱将执行限制在私有虚拟桌面(`BHPAISandboxDesktop`)内,强制执行严格的 Windows 作业对象限制(512MB 内存上限、CPU 亲和性、禁止进程脱离),并通过受限令牌剥离高权限。PDF 解析器由 `AnalysisBudget` 和严格的 `ParserLimits` 保护,防止解压缩炸弹(最大压缩比 100:1、有界流扩展和递归深度上限)。
2. **隐蔽反规避(最小用户态足迹)**:Ring-3 监控 DLL 通过主动从所有 3 个 PEB 模块列表(`InLoadOrder`、`InMemoryOrder`、`InInitializationOrder`)中解除自身 `LDR_DATA_TABLE_ENTRY` 的链接、从 RAM 中擦除 PE 头和 PDB 调试路径,并对启动器进程应用 DACL 保护,从而降低被检测的风险。
3. **分层递归分析树与子节点主导**:`AnalysisNode` 树递归检查每个嵌入的有效载荷。如果任何嵌套二进制文件(子 PE)被归类为恶意,系统将触发**子节点主导规则**,将父文档的判定提升为**恶意**,最低威胁评分为 85/100。
4. **抗误报 AI**:通过 3 层数据集设计(`suspicious_benign`)、多级去重(精确哈希 + 结构指纹)以及通过 `StratifiedGroupKFold` 进行的组感知交叉验证,彻底消除虚假特征捷径。
5. **数据保护与候选密钥恢复**:BHR 引擎在 Win32/NT I/O 边界检测高熵加密突发,从进程 RAM 和 `pagefile.sys` 中提取候选加密密钥结构(AES-GCM GHASH $H$、ChaCha20 状态、RSA DER、X25519),并从 COW 虚拟覆盖缓冲区回滚已修改的文件。
---
### 1.3 V1.6 核心技术亮点与规格矩阵
| 子系统与标准 | V1.6 技术规格与实现栈 |
| :--- | :--- |
| **文件路由引擎** | 3 阶段:魔术字节(PE、PDF、PK、OLE2、ELF、Shebang)+ 内存容器检查(用于 DOCX/XLSX/PPTX 的 ZIP OOXML)+ 脚本分类器(PS1、VBS、JS、BAT、HTA) |
| **原生 C++ PDF 分析器 V2.0** | C++17 二进制安全解析器、FlateDecode/ASCIIHex/LZW 解压、递归嵌入有效载荷(`MZ`)、Javascript 反混淆与 Acrobat API 分析器、57 个向量特征 |
| **防炸弹 / DoS 防御** | `ParserLimits`:最大输入 500MB、最大提取 250MB、最大比率 100.0、最大对象数 100K、最大过滤器深度 6、分析超时 30s |
| **沙箱环境** | Windows 作业对象(RAM 512MB、CPU 亲和性、禁止脱离、UILIMITs)+ 受限令牌(丢弃管理员 SID 与危险权限)+ 专用虚拟桌面 |
| **文件系统 / 注册表虚拟化** | 2 层写时复制(COW)虚拟覆盖,支持备用数据流(ADS)、重解析点和合并虚拟注册表视图 |
| **隐蔽监控技术** | 3 路 PEB 模块解除链接(`InLoadOrder`、`InMemoryOrder`、`InInitializationOrder`)+ 内存 PE 头擦除器 + PDB 擦除 + 启动器 DACL 防护 |
| **挂钩与行为图** | MinHook 引擎 + RAII `HookGuard` + 跨进程 `BehaviorGraph`(远程线程、进程镂空、APC 队列注入跟踪) |
| **硬件辅助 Intel PT** | 通过 CPUID 叶 0x14 进行硬件跟踪、Windows 内核跟踪 `ProcessIntelProcessorTrace` 类 47、TNT/TIP/FUP 数据包解码 |
| **静态 PE 反汇编引擎** | Capstone 反汇编器(x86/x64)+ 操作码 TF-IDF + API N-Grams + CFG 圈复杂度 + YaraGen(Rust 噪声黑名单)+ SSDEEP/TLSH |
| **机器学习 / AI 集成** | PyTorch 序列嵌入器 + CFG GNN + LightGBM 集成(Adam、Eve、Marcus)+ SHAP 特征剪枝 + PDF 校准 LGBM |
| **抗误报训练** | 3 层数据集(`malware`、`benign`、`suspicious_benign`)、Level-1(SHA256)与 Level-2(结构指纹)去重、`StratifiedGroupKFold` |
| **勒索软件检测(BHR)** | 实时香农熵率($\ge 7.5$)+ 突发修改率($>20$ 文件/秒)+ 卷影副本删除命令检测器 |
| **密钥提取与恢复** | 针对 20+ 标准的 RAM 与 `pagefile.sys` 提取器(AES-GCM GHASH $H$、ChaCha20、RSA DER、X25519 Clamping)+ 自动 COW 覆盖回滚 |
| **零知识备份保险库** | 客户端 E2EE(AES-256-GCM)+ SRP-6a PAKE(RFC 5054)+ 即时主密钥重加密($K_{\text{vault}}$)+ 规范二进制 AAD + 桶填充 |
| **WinRE 紧急救援套件** | `bhpai_rescue.exe` C++17 独立程序、7 个核心子系统、5 阶段 ACID 事务、崩溃状态恢复、自动离线注册表配置单元加载 |
| **桌面 GUI 与许可** | PyQt6 深色玻璃拟态 GUI(QThread 工作线程)+ Ed25519 HWID 硬件锁定许可引擎 |
---
## 2. 整体架构图与执行流水线
下面的序列图展示了从原始文件摄取到静态/动态分诊、递归分解、AI 推理和离线灾难恢复的端到端执行流程:```mermaid
sequenceDiagram
autonumber
actor Analyst as Analyst / Operator
participant GUI as Desktop GUI / CLI Runner
participant Router as 3-Stage FileRouter
participant Static as Static Engine (PE/PDF/Office)
participant RecTree as Recursive Analysis Tree
participant Sandbox as Ring-3 Stealth Sandbox
participant BHR as BHR Ransomware Engine
participant AI as AI Ensemble & BehaviorGraph
participant WinRE as BHPAI Rescue Suite (WinRE)
Analyst->>GUI: Ingest Sample (PE, PDF, Doc, Script)
GUI->>Router: Route File Format (Magic Bytes/Container)
alt PDF Format
Router->>Static: Parse via C++ PDF Parser V2.0
Static->>RecTree: Extract JavaScript & Embedded Streams
opt Contains Embedded PE / Shellcode
RecTree->>Static: Static Scan of Child PE
Static-->>RecTree: Detect Malicious Payload (Trigger Child Dominance Rule)
end
else PE Format
Router->>Static: Disassemble via Capstone, Opcode TF-IDF, CFG, YaraGen
end
Static->>AI: Vectorize Static Features & Compute Initial Inference
opt In-Depth Dynamic Analysis Requested
GUI->>Sandbox: Launch Sample in Virtual Desktop & Job Object
Note over Sandbox: Activate PEB Unlink, COW FS/Reg, MinHook, Intel PT
Sandbox->>BHR: Real-Time Stream Entropy & Write Rate Monitoring
opt Ransomware Activity Detected (Entropy >= 7.5, Burst I/O)
BHR->>BHR: Trigger RAM & Pagefile Candidate Key Extractor
BHR->>Sandbox: Record Crypto Timeline & Transformation Map
end
Sandbox->>AI: Stream Hooked & ETW Events into BehaviorGraph
AI->>AI: Match Attack Chain Patterns & Map to MITRE ATT&CK
end
AI-->>GUI: Emit Universal Schema 2.0 Report (Threat Score, IOCs)
opt System Severely Compromised / Ransomware Screen Locker Active
Analyst->>WinRE: Boot into Windows Recovery Environment
WinRE->>WinRE: 5-Phase Transaction: Scan -> Backup -> Unbrick Registry -> Rollback
WinRE-->>Analyst: Host System Restored to Clean Baseline
end
核心源码实现:BHPAISandbox.cpp、BHPAIMonitor.cpp、SafeVirtualDesktop.cpp、SafeJobObject.cpp、IntelPTMonitor.cpp、FakeNetEngine.cpp。
BHPAISandboxDesktop):通过 CreateDesktopW 初始化,并设置安全标志 DESKTOP_CREATEWINDOW | DESKTOP_WRITEOBJECTS。所有图形窗口、Windows 消息(WM_DROPFILES、WM_COPYDATA、UI 钩子)以及键盘记录器均与交互式用户会话(Default 桌面)严格隔离。SafeJobObject):
JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE:确保终止启动器时能够即时且干净地终止整个子进程树。JOB_OBJECT_LIMIT_PROCESS_MEMORY:将每个进程的最大提交内存限制为 512MB,防止内存耗尽攻击。JOB_OBJECT_LIMIT_ACTIVE_PROCESS:将活动进程数限制为 32,遏制 fork 炸弹拒绝服务尝试。JOB_OBJECT_LIMIT_DIE_ON_UNHANDLED_EXCEPTION:抑制 Windows 错误报告崩溃对话框。JOB_OBJECT_UILIMIT_HANDLES | JOB_OBJECT_UILIMIT_GLOBALATOMS:防止未经授权的跨进程句柄共享和全局原子污染。启动器在执行 CreateProcessAsUserW 之前,通过 CreateRestrictedToken 构造受限安全令牌:
WinBuiltinAdministratorsSid、WinLocalSystemSid、WinLocalAdminSid。SeDebugPrivilege、SeTcbPrivilege、SeTakeOwnershipPrivilege、SeLoadDriverPrivilege、SeBackupPrivilege、SeRestorePrivilege、SeShutdownPrivilege、SeImpersonatePrivilege。SECURITY_MANDATORY_LOW_RID 或 SECURITY_MANDATORY_MEDIUM_RID。为在用户态下针对反分析技术最小化监控痕迹:
BHPAIMonitor.dll 自动将其自身的 LDR_DATA_TABLE_ENTRY 从进程环境块(PEB)内的全部 3 个双向链接模块列表中解链:
InLoadOrderModuleListInMemoryOrderModuleListInInitializationOrderModuleList
恶意软件遍历 PEB->Ldr 或调用 EnumProcessModules 时,不会发现任何监控 DLL 的痕迹。PAGE_READWRITE 并将其 IMAGE_DOS_HEADER、IMAGE_NT_HEADERS、IMAGE_SECTION_HEADER 以及调试目录 PDB 文件路径字符串清零,从而挫败内存签名扫描器。SetKernelObjectSecurity 配置显式安全描述符,并使用空的自定义访问控制列表(DACL),阻止低完整性进程执行 PROCESS_TERMINATE、 和 。监控代理使用 MinHook 引擎 挂钩 ntdll.dll 和 kernelbase.dll 中的底层原生 NT API:
每个 detour 均由基于 RAII 的 HookGuard(thread_local bool in_hook)保护,消除无限递归重入死锁。
在允许恶意软件不受阻碍地执行的同时保护底层主机:
GENERIC_READ)直接由原始磁盘文件提供。GENERIC_WRITE)或删除(FILE_DELETE_ON_CLOSE)时,文件按需复制到 BHPAI_Sandbox_Overlay\Files\。所有后续修改均在此隔离沙箱克隆上操作。file.txt:zone.identifier)、重解析点和符号链接。HKLM\Software\Microsoft\Windows\CurrentVersion\Run)被重定向到 HKCU\Software\BHPAI_Virtual_Registry\。利用 Microsoft Event Tracing for Windows(ETW) 内核会话:
Microsoft-Windows-Kernel-Process:即使恶意软件通过直接系统调用绕过用户态钩子,也能捕获进程创建。Microsoft-Windows-Kernel-Network:捕获原始 TCP/UDP 套接字活动。Microsoft-Windows-Kernel-Memory:检测跨进程虚拟内存映射。集成网络模拟器(FakeNetEngine.cpp):
127.0.0.1)。IntelPTMonitor.cpp 直接与 CPU 硬件跟踪原语交互:
__cpuidex(0x14, 0) 验证 CPU 支持。ProcessIntelProcessorTrace(Class 47)配置物理地址表(ToPA)。TNT(Taken/Not-Taken 分支决策)、TIP(目标 IP)和 FUP(函数指针),无需基于软件的二进制重写即可暴露 ROP 链和控制流重定向。PROCESS_VM_WRITEPROCESS_SUSPEND_RESUME| API 组 | 被 Hook 的 Native 函数 | 监控与重定向目的 |
|---|
| 进程 / 线程 | NtCreateProcessEx、NtCreateUserProcess、NtCreateThreadEx、NtQueueApcThread | 检测子进程创建、Process Injection、APC Injection。 |
| 虚拟内存 | NtAllocateVirtualMemory、NtProtectVirtualMemory、NtWriteVirtualMemory | 识别 PAGE_EXECUTE_READWRITE 分配、Process Hollowing、Shellcode Injection。 |
| 文件系统 I/O | NtCreateFile、NtOpenFile、NtWriteFile、NtSetInformationFile、NtDeleteFile | 记录 I/O、重定向 COW Overlay、测量 Shannon Entropy。 |
| 注册表 | NtCreateKey、NtOpenKey、NtSetValueKey、NtDeleteValueKey | 监控自启动持久化(Persistence)挂载点并重定向 COW。 |
| 反分析 | NtQueryInformationProcess、NtSetInformationThread、NtDelayExecution | 阻止检测 ProcessDebugPort、ThreadHideFromDebugger,加速 Sleep Evasion。 |
retjejneMZ<html>[Content_Types].xml 和 word/ $
ightarrow$ FileFormat::Office(Word DOCX)xl/ $
ightarrow$ FileFormat::Office(Excel XLSX)ppt/ $
ightarrow$ FileFormat::Office(PowerPoint PPTX)classes.dex / AndroidManifest.xml $
ightarrow$ FileFormat::APKMETA-INF/MANIFEST.MF $
ightarrow$ FileFormat::JAR.ps1)、VBScript(.vbs)、JavaScript(.js)、Batch(.bat)、HTML Application(.hta)。unescape()、String.fromCharCode()、eval()、Heap Spraying NOP Sled(%u9090%u9090),以及利用 Adobe Reader API(util.printf、collab.getIcon、spell.customDictionaryOpen)。| Tactic | Technique ID | 技术名称 | 检测状态 |
|---|
| Execution | T1204.002 | Malicious File (PDF OpenAction / Launch) | 🔴 Detected |
| Execution | T1059.007 | JavaScript (PDF Heap Spray / Eval) | 🔴 Detected |
| Execution | T1059.003 | Windows Command Shell | 🔴 Detected (cmd.exe /c vssadmin...) |
| Defense Evasion | T1027 | Obfuscated Files or Information | 🔴 Detected |
| Defense Evasion | T1027.009 | Embedded Payloads (PDF Embedded PE) | 🔴 Detected |
| Defense Evasion | T1562.001 | Impair Defenses: Disable Tools | 🔴 Detected (AMSI/ETW Patching) |
| Defense Evasion | T1620 | Reflective Code Loading | 🔴 Detected (Memory Mapped DLL) |
| Credential Access | T1003.001 | LSASS Memory Dumping | 🔴 Detected (lsass.exe Read Access) |
| Privilege Escalation | T1055 | Process Injection | 🔴 Detected (Remote Thread / APC) |
| Command and Control | T1105 | Ingress Tool Transfer | 🔴 Detected |
| Impact | T1486 | Data Encrypted for Impact | 🔴 Detected (High Entropy File Write) |
| Impact | T1490 | Inhibit System Recovery | 🔴 Detected (Shadow Copy Deletion) |
| 测试 | Test Script | 状态 | 实际测量结果 |
|---|
| 1. Stress & Reentrancy | tests/test_sandbox_stress.py | PASSED | 在持续创建进程与 I/O 压力下 0 crash / 0 deadlock。 |
| 2. API Coverage & Normalization | tests/test_sandbox_coverage.py | PASSED | 0 条未规范化的 \Device\ 路径遗漏。 |
| 3. False-Positive Baseline | tests/test_sandbox_false_positive.py | PASSED | 正常运行,未在标准 Windows 工具上误触发。 |
| 4. BehaviorGraph Validation | tests/test_sandbox_behavior_graph.py | PASSED | 进程图与 TLS SNI/HTTP 网络会话运行准确。 |
| 5. E2E Performance Benchmark | tests/benchmark_sandbox_e2e.py | PASSED | Peak RAM Footprint: 1.47 MB | Total Time: 3.17s。 |
| 6. PDF E2E Direct Sync Router | tests/test_pdf_router_e2e.py | PASSED | 通过全部 Clean、Obfuscated JS、Embedded PE 测试用例。 |
Shell 键(被从 explorer.exe 修改为恶意文件)和 Userinit。taskmgr.exe、cmd.exe、sethc.exe 分配伪造调试器的技术。Windows\System32\Tasks 中的 XML 任务文件。OfflineMalwareScanner(扫描与 BHR 10-Pillar 评估):
AppData\Local\Temp、ProgramData、Users\Public、Windows\Temp)提取的可执行 PE 文件列表。MALICIOUS、SUSPICIOUS、CLEAN)。OfflineBlastRadius(多信号损害范围评估):
Desktop、Documents、Downloads、Pictures、Videos)。README.txt、DECRYPT_FILES.html、HOW_TO_RESTORE.txt)。OfflineCryptoArtifactHunter(加密密钥搜寻):
pagefile.sys、swapfile.sys 以及崩溃转储文件(MEMORY.DMP)。RescueRemediator(修复协调):
C:\BHPAI_Rescue_Quarantine\)的流程,并附带 SHA-256 哈希验证。explorer.exe,删除 IFEO hijacks,禁用后台任务(Scheduled Tasks)和恶意服务。RescueTransactionJournal(ACID 事务日志与 LIFO 回滚):
PROCESS_VM_WRITEPROCESS_SUSPEND_RESUME| API 子系统 | 挂钩的原生 NT API | 监控与重定向目标 |
|---|
| 进程 / 线程 | NtCreateProcessEx、NtCreateUserProcess、NtCreateThreadEx、NtQueueApcThread | 检测子进程生成、进程注入、APC 注入。 |
| 虚拟内存 | NtAllocateVirtualMemory、NtProtectVirtualMemory、NtWriteVirtualMemory | 捕获 PAGE_EXECUTE_READWRITE 分配、镂空、Shellcode。 |
| 文件系统 I/O | NtCreateFile、NtOpenFile、NtWriteFile、NtSetInformationFile、NtDeleteFile | 记录 I/O、重定向到 COW 覆盖层、评估香农熵。 |
| 注册表 | NtCreateKey、NtOpenKey、NtSetValueKey、NtDeleteValueKey | 跟踪持久化键、将写入重定向到虚拟注册表。 |
| 反分析 | NtQueryInformationProcess、NtSetInformationThread、NtDelayExecution | 中和 ProcessDebugPort 检查、线程隐藏、加速休眠。 |