OpenParable
Skip to content
← Back to skills

Evasion Technique Integrate

DevOps & Security
evasion-technique-integrate

Evasion Technique Integrate is an Agent Skill for devops & security published in the wgpsec/AboutSecurity repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.

免杀技术整合:将免杀技术(API 混淆、字符串加密、Syscall、反调试、AMSI 绕过等)植入已有 Loader 代码。当需要向已有 Loader 添加新加载技术、或现有 Loader 被检测到需要替换组件时使用。先读 references/evasion-techniques-db.json 确认组件库中有你需要的技术,再执行集成

View on GitHub ↗
QUICK START

How to use this skill

Bring this guide into your coding agent with a prompt tailored to the tool you use.

  1. Open your project in Codex.
  2. Copy and paste the prompt below.
  3. Review files and risks before approving any action.
Prompt to paste
Inspect the Agent Skill at https://github.com/wgpsec/AboutSecurity/blob/HEAD/skills/evasion/evasion-technique-integrate/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/evasion-technique-integrate, but wait for my approval before writing files or running scripts.

Copying this prompt does not install or run the skill. Review third-party files before use.

免杀技术整合方法论

⛔ 深入参考


7 类免杀技术速查

类型目的复杂度典型技术
api_obfuscation隐藏 API 导入mediumAPI Hashing, IAT 混淆
string_obfuscation隐藏敏感字符串simpleXOR 加密, 编译期混淆
memory_evasion避免 RWX 内存页simple权限翻转 (RW→RX)
execution_evasion绕过 Hookcomplex直接 Syscall, 间接 Syscall
anti_analysis检测调试/沙箱mediumIsDebuggerPresent, 时间差, CPU 核心数
amsi_etw_bypass禁用 AMSI/ETWmediumAmsiScanBuffer Patch, EtwEventWrite Patch
unhooking恢复被 Hook 的 DLLcomplexNTDLL 重映射

整合流程

1. 读取目标 Loader 源码
2. 查免杀技术库 → references/evasion-techniques-db.json
3. 分析兼容性
   ├─ 使用 RWX? → 加 memory_evasion(权限翻转)
   ├─ 使用标准 API? → 加 execution_evasion(Syscall)
   ├─ 有明文字符串? → 加 string_obfuscation(XOR)
   └─ 无反调试? → 加 anti_analysis
4. 逐项整合(参考 references/integration-patterns.md)
5. 交叉编译验证
6. 输出变更报告

兼容性矩阵

Loader 特征兼容技术
任意 LoaderAPI 混淆、字符串混淆、反调试
使用 RWX 内存权限翻转
使用标准 Win APISyscall 替换
未做 UnhookNTDLL 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 一步到位
  • 验证:编译通过、功能正常、验证执行结果