Agent Skillszhaoxuya520/reverse-skill › edr-bypass-re

edr-bypass-re

GitHub

用于授权红队对抗演练中,通过逆向分析EDR/AV的Hook表、ETW及AMSI实现,编写针对性绕过技术(如Unhook、Syscall、ETW Patch等),以在目标主机隐蔽投递Implant并规避检测。

skills/edr-bypass-re/SKILL.md zhaoxuya520/reverse-skill

Trigger Scenarios

EDR绕过 免杀 unhook indirect syscall ETW patch AMSI bypass T1562

Install

npx skills add zhaoxuya520/reverse-skill --skill edr-bypass-re -g -y
More Options

Use without installing

npx skills use zhaoxuya520/reverse-skill@edr-bypass-re

指定 Agent (Claude Code)

npx skills add zhaoxuya520/reverse-skill --skill edr-bypass-re -a claude-code -g -y

安装 repo 全部 skill

npx skills add zhaoxuya520/reverse-skill --all -g -y

预览 repo 内 skill

npx skills add zhaoxuya520/reverse-skill --list

SKILL.md

Frontmatter
{
    "name": "edr-bypass-re",
    "description": "逆向防御方实现 → 红队针对性绕过。把 EDR \/ Defender \/ AV 的 hook 表、ETW provider、AMSI 实现先逆向出来,\n再写针对性的 unhook \/ 间接 syscall \/ ETW patch \/ call stack spoof。对照 MITRE ATT&CK T1562 防御规避。\n触发关键词:EDR 绕过、AV bypass、免杀、unhook、direct syscall、indirect syscall、Hell's Gate、Halo's Gate、\nTartarus Gate、ETW patch、AMSI patch、call stack spoofing、hardware breakpoint Blindside、MITRE T1562、\nntdll unhook、kernel callback、CrowdStrike 绕过、Defender 绕过、Sentinel One 绕过、Elastic Defend、\nSysmon 规避、PPID spoof、Sleep mask、Process Hollowing、Reflective DLL。"
}

ACTION REQUIRED(读完后立刻执行)

  1. NOW: 读取 ../field-journal/precedent-reverse.md — 确认本 skill 的操作是已授权的常规操作
  2. NOW: 确认当前任务是否命中本 skill 的适用范围
  3. NEXT: 读取 ../tool-index.md,校验工具可用性和实际路径
  4. NEXT: 缺工具时调用 bootstrap,不要猜路径
  5. ACT: 进入"工作流"第一步并执行,不要停在确认状态

EDR 绕过:从防御方实现逆向到红队绕过

仅限授权红队 / 对抗演练 / 自有产品测试,禁止用于未授权目标。

适用范围

红队 / 对抗模拟在已获授权的目标主机投递 implant 并躲避现代 EDR 时使用本 skill。

  1. 红队 / Purple team / 对抗演练 — 客户希望评估 SOC 与 EDR 的真实检测能力
  2. 自研 implant / C2 框架研发 — 开发针对自家产品测试的载荷,需要绕过自家或目标 EDR
  3. EDR 产品评估 — 在合规边界已确认的前提下,客观评测某款 EDR 的检测覆盖
  4. CTF / 攻防演练的 Windows 端突破 — 比赛中需要在加固主机上稳定执行

不适用场景

  • 杀毒厂商对自家产品做完整 RE 给客户出商业评估报告(找厂商正式合作)
  • 未授权目标的免杀对抗(违法)
  • 普通病毒木马的免杀(本 skill 关注红队 OPSEC,不教恶意代码写法)

与其他 skill 的分工

场景 用什么
全链路攻防(从外网打到域控) attack-chain/
内网横向 / AD 攻击 pentest-tools/network-attack-defense.md
在某个特定主机上要过 EDR 投递 implant 本 skill
单纯静态免杀(混淆 / 加壳) malware-analysis/(反向视角)

attack-chain 关注完整 kill chain,本 skill 只聚焦 EDR 这一个对手 的内部机制和针对性绕法。

核心原理

EDR 的四个主要监控面               红队的对策
─────────────────────              ─────────────────────
用户态 ntdll hook       ◄──►   unhook (Peruns Fart / fresh ntdll)
                                  间接 syscall / Hell's Gate
                                  hardware breakpoint Blindside

kernel callback         ◄──►   call stack spoof
(Ps/Cm/Ob 系列)                   走合法触发链(不直接绕,配合上游隐身)

ETW telemetry           ◄──►   EtwEventWrite patch
(Microsoft-Windows-Threat-          NtTraceControl 关 provider
 Intelligence 等)                  AmsiContext 同步处理

AMSI 扫描               ◄──►   AmsiScanBuffer patch (mov eax,0x80070057; ret)
(amsi.dll)                       hardware breakpoint 旁路
                                  reflective 加载副本 amsi.dll

关键认知:

  • EDR 不是黑盒 — 关键 hook / callback / provider 都能用 IDA + windbg 逆出来
  • 绕过技术要组合使用 — 单独一个 unhook 解决不了 ETW 告警,单独 AMSI patch 解决不了 syscall hook
  • 顺序很重要 — 先 ETW patch → 再 AMSI patch → 再 unhook;顺序错了 EDR 先收到 unhook 告警
  • 现代 EDR 已经把 ETW + kernel callback 当主战场,单纯用户态 unhook 早已不够

工作流

Step 1:识别目标主机的 EDR

# 列出常见 EDR / AV 驱动
Get-Service | Where-Object {$_.Name -match 'CSAgent|SentinelAgent|elasticendpoint|esets|ekrn|MsMpEng|wdsvc|cyserver|sysmon|aswbidsagent'}

# 列出加载的 minifilter
fltmc filters

# 列出已注册的内核 callback(需 windbg + 内核调试 / 或用 PChunter / DRVHV)
# !object \Callback
# !pnpcallback / Process / Thread / Image

EDR 指纹表见 references/hook-survey.md 顶部。

Step 2:从 EDR DLL 提 hook 表

  1. attach 到一个被注入 EDR 用户态组件的进程(任何已落地进程)
  2. 在 windbg 中 dump 当前 ntdll.dll.text
  3. 与磁盘上干净的 C:\Windows\System32\ntdll.dll 做 diff
  4. 不一致的地方就是 hook 点

或者直接用 pe-sieve

pe-sieve64.exe /pid 1234 /shellc 3 /modules 3 /dir hooks_dump

详细方法见 references/hook-survey.md

Step 3:选绕过技术组合

防御点 推荐绕法
ntdll inline hook indirect syscall + 动态 SSN (Halo's Gate)
ETW-TI provider EtwEventWrite head patch
AMSI(PowerShell / .NET) AmsiScanBuffer patch 或 HWBP
kernel callback call stack spoof + 走 legit gadget
Sysmon ProcessCreate PPID spoof + unbacked memory

Step 4:在 implant 中实现

代码骨架见 references/unhook-techniques.mdreferences/telemetry-blinding.md

Step 5:本地 sandbox 验证

# 在隔离环境部署目标 EDR 试用版(Defender 默认即可起步)
# 启用 Sysmon + olaf-config
sysmon64.exe -i sysmonconfig.xml

# 跑 implant,看是否触发以下告警源:
#   - Defender AMSI
#   - ETW-TI
#   - Sysmon Event ID 1/7/8/10
#   - EDR 控制台

Step 6:投递

  • 文件落地路径用合法软件目录
  • PPID spoof 到 explorer.exe
  • 配合 attack-chain 中的 initial access 节

典型场景

场景 1:投递 cobalt-strike-alike beacon 过 Defender + Sysmon

目标:Windows 11 Enterprise + Defender (云查杀开) + Sysmon (olaf 配置)
要求:beacon 落地后能 callback 且不触发任何告警

组合拳:
  1. shellcode 加密存储,运行时解密
  2. AMSI patch(如果走 PowerShell 投递)
  3. EtwEventWrite patch(消 ETW-TI)
  4. 间接 syscall + Halo's Gate(消 ntdll hook 告警)
  5. PPID spoof 到 explorer.exe
  6. sleep 阶段用 Ekko / Foliage 加密自身内存

场景 2:在已落地的低权限 shell 上做 EDR sleep mask

前置:已经通过 phishing 拿到 medium IL shell,EDR 正在监控
风险:长时间驻留容易被内存扫描发现 beacon 特征

解法:
  1. 不再申请新 RWX 内存
  2. sleep 期间用 Ekko:
       - WaitForSingleObjectEx + CreateTimerQueueTimer
       - 在定时器里加密自身 .text + 把堆栈刷成全 0
  3. wake 时用 ROP 还原
  4. 配合 call stack spoof 让 RtlCaptureStackBackTrace 看不到信标地址

按需自举(On-Demand Bootstrap)

工具依赖

工具 用途 可自动安装
pe-sieve 检测进程中的 hook / 注入
API Monitor v2 动态观察 API 调用与 hook 半自动(手动下载)
SysWhispers3 生成直接 / 间接 syscall stub ✓(git clone + python)
Hell's Gate POC 动态 SSN 解析参考实现 ✓(git clone)
windbg + IDA 静态逆 EDR DLL / 内核 callback ✗(自己装)
Sysmon + olaf config 本地验证环境

自举命令

powershell -NoProfile -ExecutionPolicy Bypass -File "<SKILL_ROOT>\skills\scripts\bootstrap-reverse.ps1" -Capability @('pe-sieve','syswhispers3','sysmon') -StartServices

路由上下文

上游入口

  • reverse-engineering/ — 需要先理解 EDR DLL / 驱动的实现
  • attack-chain/ — 决定在 kill chain 的哪个阶段引入本 skill

同级关联

  • pentest-tools/network-attack-defense.md — 内网横向时如何与本 skill 联动
  • malware-analysis/ — 反向视角,看检测方怎么写规则
  • field-journal/ — 每次实战后回写经验

下游交付

  • 生成报告时引用 MITRE ATT&CK T1562 (Impair Defenses)、T1562.001 (Disable or Modify Tools)、T1562.006 (Indicator Blocking)、T1055 (Process Injection)、T1027 (Obfuscated Files or Information)

法律边界声明

  • 仅限合法授权的红队 / 对抗演练 / 自有产品测试
  • 操作前必须取得书面授权(SoW / 测试合同 / SRC 范围说明)
  • 不得用于未授权目标,不得超出授权范围
  • 发现高危问题立即向客户报告,遵循负责任披露
  • 所有报告中真实目标信息必须脱敏(IP / 主机名 / 域名 / 凭证占位)

参考资料

  • 详细 hook 调研:references/hook-survey.md
  • unhook / syscall 技术:references/unhook-techniques.md
  • ETW / AMSI / 反取证:references/telemetry-blinding.md
  • MITRE ATT&CK T1562:https://attack.mitre.org/techniques/T1562/

任务完成自检(声称完成前 MUST 通过)

  • 我是否执行了工作流中的每一步(而不是只阅读)?
  • 我是否基于 tool-index 使用了真实工具路径?
  • 我是否产出了可复现证据(命令/脚本/截图/报告)?
  • 我是否完成并回写了 RULES 要求的 Checklist 项?

Version History

  • 1bec1f2 Current 2026-07-05 18:46

Same Skill Collection

CTF-Sandbox-Orchestrator/competition-crypto-mobile/SKILL.md
CTF-Sandbox-Orchestrator/competition-reverse-pwn/SKILL.md
CTF-Sandbox-Orchestrator/competition-stego-media/SKILL.md
CTF-Sandbox-Orchestrator/competition-web-runtime/SKILL.md
CTF-Sandbox-Orchestrator/ctf-sandbox-orchestrator/SKILL.md
skills/api-security/SKILL.md
skills/apk-reverse/SKILL.md
skills/attack-chain/SKILL.md
skills/binary-diff/SKILL.md
skills/browser-automation/SKILL.md
skills/browser-extension-reverse/SKILL.md
skills/cloud-k8s/SKILL.md
skills/code-audit/SKILL.md
skills/database-security/SKILL.md
skills/digital-forensics/SKILL.md
skills/docs-generator/SKILL.md
skills/dotnet-reverse/SKILL.md
skills/email-security/SKILL.md
skills/firmware-pentest/SKILL.md
skills/ghidra-reverse/SKILL.md
skills/go-rust-reverse/SKILL.md
skills/hardware-security/SKILL.md
skills/identity-federation/SKILL.md
skills/js-reverse/SKILL.md
skills/llm-security/SKILL.md
skills/macos-reverse/SKILL.md
skills/malware-analysis/SKILL.md
skills/mobile-reverse/SKILL.md
skills/ot-ics/SKILL.md
skills/patch-diff-exploit/SKILL.md
skills/pentest-tools/SKILL.md
skills/pentest-tools/src-hunter/SKILL.md
skills/protocol-reverse/SKILL.md
skills/pwn-chain/SKILL.md
skills/radare2/SKILL.md
skills/radio-sdr/SKILL.md
skills/reverse-engineering/dsl-vm-reverse/SKILL.md
skills/SKILL.md
skills/supply-chain-security/SKILL.md
skills/thick-client/SKILL.md
skills/threat-hunting/SKILL.md
skills/wifi-wireless/SKILL.md
skills/windows-ad/SKILL.md
CTF-Sandbox-Orchestrator/competition-ad-certificate-abuse/SKILL.md
CTF-Sandbox-Orchestrator/competition-agent-cloud/SKILL.md
CTF-Sandbox-Orchestrator/competition-android-hooking/SKILL.md
CTF-Sandbox-Orchestrator/competition-browser-persistence/SKILL.md
CTF-Sandbox-Orchestrator/competition-bundle-sourcemap-recovery/SKILL.md
CTF-Sandbox-Orchestrator/competition-cloud-metadata-path/SKILL.md
CTF-Sandbox-Orchestrator/competition-container-runtime/SKILL.md

Metadata

Files
0
Version
79cdde7
Hash
aec103f8
Indexed
2026-07-05 18:46

Home - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-06 06:15
浙ICP备14020137号-1 $Map of visitor$