免杀技术整合方法论,用于将免杀技术植入已有 Loader 代码。
用途 当需要向已有 Loader 添加新的加载技术,或现有 Loader 被检测到需要替换组件时,使用本技能进行免杀技术整合。
主要能力 提供 172 条免杀技术库(references/evasion-techniques-db.json)以及整合模式与代码示例(references/integration-patterns.md)。技术分为 7 类:
- api_obfuscation:隐藏 API 导入,复杂度 medium,典型技术包括 API Hashing、IAT 混淆。
- string_obfuscation:隐藏敏感字符串,复杂度 simple,典型技术包括 XOR 加密、编译期混淆。
- memory_evasion:避免 RWX 内存页,复杂度 simple,典型技术为权限翻转(RW→RX)。
- execution_evasion:绕过 Hook,复杂度 complex,典型技术包括直接 Syscall、间接 Syscall。
- anti_analysis:检测调试/沙箱,复杂度 medium,典型技术包括 IsDebuggerPresent、时间差、CPU 核心数。
- amsi_etw_bypass:禁用 AMSI/ETW,复杂度 medium,典型技术包括 AmsiScanBuffer Patch、EtwEventWrite Patch。
- unhooking:恢复被 Hook 的 DLL,复杂度 complex,典型技术为 NTDLL 重映射。
使用方式 整合流程:
- 读取目标 Loader 源码。
- 查免杀技术库 → references/evasion-techniques-db.json。
- 分析兼容性:
- 使用 RWX? → 加 memory_evasion(权限翻转)
- 使用标准 API? → 加 execution_evasion(Syscall)
- 有明文字符串? → 加 string_obfuscation(XOR)
- 无反调试? → 加 anti_analysis
- 逐项整合(参考 references/integration-patterns.md)。
- 交叉编译验证。
- 输出变更报告。
兼容性矩阵:
- 任意 Loader:API 混淆、字符串混淆、反调试
- 使用 RWX 内存:权限翻转
- 使用标准 Win API:Syscall 替换
- 未做 Unhook:NTDLL Unhooking
快速代码示例: 权限翻转(最常用): // Before: PAGE_EXECUTE_READWRITE(一步到位,易被检测) LPVOID addr = VirtualAlloc(NULL, size, MEM_COMMIT, PAGE_EXECUTE_READWRITE);
// After: 先 RW 写入,再改 RX 执行 LPVOID addr = VirtualAlloc(NULL, size, MEM_COMMIT, PAGE_READWRITE); memcpy(addr, shellcode, size); VirtualProtect(addr, size, PAGE_EXECUTE_READ, &oldProtect);
字符串 XOR: char dllName[] = { 0x1a, 0x14, 0x07, ... }; // XOR encrypted for (int i = 0; i < sizeof(dllName); i++) dllName[i] ^= KEY;
RWX 权限分离: 两步操作:先写后执行(W+X 分离),不使用 RWX 一步到位。
验证:编译通过、功能正常、验证执行结果。
适用场景 适用于已有 Loader 的免杀技术增强、组件替换与兼容性分析。
限制 资料未提供具体平台、收费、价格或效果保证等信息。