Communitygithub.com

edr-bypass-re

Oferece o conhecimento necessário para entender os mecanismos internos dos EDRs e aplicar técnicas de bypass combinadas, indo desde a engenharia reversa dos hooks até a implementação de contramedidas como chamadas de sistema indiretas e ofuscação de ETW.

O que é edr-bypass-re?

Esta skill capacita equipes de Red Team e Purple Team a realizar bypass em soluções EDR modernas (como Defender, Sysmon, CrowdStrike e SentinelOne) através de uma abordagem baseada em engenharia reversa. Ela explica detalhadamente os quatro principais vetores de monitoramento do EDR — hooks em ntdll (modo usuário), callbacks de kernel (via Ps/Cm/Ob), telemetria ETW (especialmente o provedor Microsoft-Windows-Threat-Intelligence) e o scanner AMSI — e mapeia cada um deles para contramedidas específicas como unhooking seletivo, chamadas de sistema indiretas (Halo's Gate/Gall's Gate), spoofing de call stack, e patches nos buffers do AMSI e do ETW. A skill é estruturada em um workflow de 6 etapas: identificação do EDR alvo (via serviços, drivers e callbacks), extração da tabela de hooks (com WinDbg ou pe-sieve), seleção da combinação de técnicas de bypass com base em uma matriz de defesa recomendada, implementação no implant, validação em sandbox local com Sysmon e, por fim, entrega segura no host. Inclui dois cenários completos (beacon Cobalt-Strike-like contra Defender+Sysmon e sleep mask com Ekko/Foliage), referências detalhadas para as técnicas de unhook e cegueira de telemetria, e comandos de bootstrap para instalar automaticamente ferramentas como pe-sieve e SysWhispers3. A skill é compatível com ambientes Windows (x64) e pode ser combinada com as skills de cadeia de ataque (attack-chain/) para enriquecer a fase de pós-exploração. O uso é estritamente autorizado para Red Team, exercícios de defesa e testes de produtos próprios, sendo proibida sua aplicação em alvos não autorizados.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhaoxuya520/reverse-skill/tree/main/skills/edr-bypass-re

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

AÇÃO NECESSÁRIA (leia e execute imediatamente após ler)

  1. AGORA: Leia ../field-journal/precedent-reverse.md — confirme que a operação desta skill é uma operação de rotina autorizada
  2. AGORA: Confirme se a tarefa atual se enquadra no escopo de aplicação desta skill
  3. PRÓXIMO: Leia ../tool-index.md e verifique a disponibilidade e os caminhos reais das ferramentas
  4. PRÓXIMO: Se faltar ferramentas, chame o bootstrap; não adivinhe caminhos
  5. AJA: Entre na primeira etapa do "Fluxo de Trabalho" e execute, não pare no estado de confirmação

Bypass de EDR: Da Engenharia Reversa da Defesa ao Bypass do Red Team

Apenas para Red Team / Exercícios de Defesa / Testes de Produto Próprio autorizados. Proibido para alvos não autorizados.

Escopo de Aplicação

Use esta skill ao entregar um implant em um host alvo autorizado durante Red Team / Simulação Adversarial, visando evadir EDRs modernos.

  1. Red Team / Purple Team / Exercícios de Defesa — O cliente deseja avaliar a real capacidade de detecção do SOC e do EDR
  2. Desenvolvimento de Implant / C2 Próprio — Criação de cargas para teste de produto próprio, precisando contornar o EDR alvo ou o seu próprio EDR
  3. Avaliação de Produtos EDR — Avaliação objetiva da cobertura de detecção de um determinado EDR, uma vez confirmados os limites de conformidade
  4. Bypass em ambiente Windows para CTF / Exercícios de Ataque e Defesa — Necessidade de execução estável em hosts reforçados durante competições

Cenários Não Aplicáveis:

  • RE completo de produto EDR próprio por um fornecedor de antivírus para gerar relatório de avaliação comercial para o cliente (buscar parceria formal com o fornecedor)
  • Bypass de antivírus para alvos não autorizados (ilegal)
  • Bypass de trojans/malware comuns (esta skill foca em OPSEC de Red Team, não ensina escrita de código malicioso)

Divisão de Trabalho com Outras Skills

CenárioO que usar
Ataque-defesa de cadeia completa (da internet ao controlador de domínio)attack-chain/
Movimentação lateral / Ataque ADpentest-tools/network-attack-defense.md
Entregar implant em um host específico e driblar o EDREsta skill
Apenas bypass estático (ofuscação / empacotamento)malware-analysis/ (visão inversa)

attack-chain foca na kill chain completa; esta skill concentra-se apenas nos mecanismos internos do EDR como um adversário e nas técnicas de bypass específicas.

Princípios Fundamentais

As quatro principais superfícies de monitoramento do EDR           Contramedidas do Red Team
───────────────────────────────────────              ──────────────────────────────────────
Hook em ntdll (modo usuário)                ◄──►   Unhook (Peruns Fart / ntdll limpo)
                                                    Syscall indireto / Hell's Gate
                                                    Bypass via hardware breakpoint (Blindside)

Callback do kernel                           ◄──►   Spoofing de pilha de chamadas (call stack spoof)
(Séries Ps/Cm/Ob)                                    Seguir cadeias de gatilho legítimas (não contornar diretamente, cooperar com a ocultação upstream)

Telemetria ETW                              ◄──►   Patch de EtwEventWrite
(Microsoft-Windows-Threat-                               Desligar provider via NtTraceControl
 Intelligence, etc.)                                   Processamento síncrono do contexto Amsi

Varredura AMSI                               ◄──►   Patch de AmsiScanBuffer (mov eax,0x80070057; ret)
(amsi.dll)                                              Bypass via hardware breakpoint
                                                        Carregamento reflexivo de cópia do amsi.dll

Conceitos-chave:

  • EDR não é uma caixa preta — Hooks / Callbacks / Providers críticos podem ser encontrados com IDA + WinDbg
  • Técnicas de bypass devem ser combinadas — Um unhook sozinho não resolve alertas ETW; um patch AMSI sozinho não resolve hooks de syscall
  • A ordem é importante — Patch ETW primeiro → depois patch AMSI → depois unhook; ordem errada faz o EDR receber o alerta de unhook primeiro
  • EDRs modernos já fizeram do ETW + callbacks do kernel seu campo de batalha principal; unhook apenas em modo usuário não é mais suficiente

Fluxo de Trabalho

Etapa 1: Identifique o EDR do Host Alvo

# Listar drivers EDR/AV comuns
Get-Service | Where-Object {$_.Name -match 'CSAgent|SentinelAgent|elasticendpoint|esets|ekrn|MsMpEng|wdsvc|cyserver|sysmon|aswbidsagent'}

# Listar minifilters carregados
fltmc filters

# Listar callbacks do kernel registrados (necessário WinDbg + depuração de kernel / ou PChunter / DRVHV)
# !object \Callback
# !pnpcallback / Process / Thread / Image

Tabela de impressões digitais de EDR no topo de references/hook-survey.md.

Etapa 2: Extraia a Tabela de Hooks a partir da DLL do EDR

  1. Anexe-se a um processo que tenha recebido o componente de modo usuário do EDR (qualquer processo já no sistema)
  2. No WinDbg, despeje a seção .text do ntdll.dll atual
  3. Compare com o ntdll.dll limpo no disco (C:\Windows\System32\ntdll.dll)
  4. As diferenças são os pontos de hook

Ou use pe-sieve diretamente:

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

Método detalhado em references/hook-survey.md.

Etapa 3: Selecione a Combinação de Técnicas de Bypass

Ponto de DefesaBypass Recomendado
ntdll inline hooksyscall indireto + SSN dinâmico (Halo's Gate)
Provider ETW-TIPatch de cabeçalho de EtwEventWrite
AMSI (PowerShell / .NET)Patch de AmsiScanBuffer ou HWBP
callback do kernelSpoofing de pilha de chamadas + seguir gadget legítimo
ProcessCreate do SysmonSpoofing de PPID + memória sem backup

Etapa 4: Implemente no Implant

Esqueleto de código em references/unhook-techniques.md e references/telemetry-blinding.md.

Etapa 5: Validação em Sandbox Local

# Implante a versão de teste do EDR alvo em ambiente isolado (Defender padrão é suficiente para começar)
# Habilite Sysmon + configuração olaf
sysmon64.exe -i sysmonconfig.xml

# Execute o implant e verifique se dispara as seguintes fontes de alerta:
#   - Defender AMSI
#   - ETW-TI
#   - Sysmon Event ID 1/7/8/10
#   - Console do EDR

Etapa 6: Entrega

  • Use diretório de software legítimo para o caminho de arquivo no disco
  • Spoof de PPID para explorer.exe
  • Combine com a seção de acesso inicial em attack-chain

Cenários Típicos

Cenário 1: Entregar Beacon Estilo Cobalt-Strike para Driblar Defender + Sysmon

Alvo: Windows 11 Enterprise + Defender (nuvem ativada) + Sysmon (configuração olaf)
Requisito: Beacon deve estabelecer callback após ser entregue sem disparar nenhum alerta

Combinação de Técnicas:
  1. Armazenar shellcode criptografado, descriptografar em tempo de execução
  2. Patch de AMSI (se for entregue via PowerShell)
  3. Patch de EtwEventWrite (eliminar ETW-TI)
  4. Syscall indireto + Halo's Gate (eliminar alertas de hook em ntdll)
  5. Spoof de PPID para explorer.exe
  6. Na fase de sleep, criptografar a própria memória com Ekko / Foliage

Cenário 2: Sleep Mask de EDR em Shell de Baixo Privilégio Já Estabelecido

Pré-condição: Já conseguiu um shell de Medium IL via phishing, EDR está monitorando
Risco: Permanência prolongada pode levar à varredura de memória detectando características do beacon

Solução:
  1. Não alocar nova memória RWX
  2. Durante o sleep, usar Ekko:
       - WaitForSingleObjectEx + CreateTimerQueueTimer
       - No timer, criptografar o próprio `.text` e zerar a pilha (stack)
  3. Ao acordar, restaurar via ROP
  4. Combinar com spoofing de pilha de chamadas para que RtlCaptureStackBackTrace não veja o endereço do beacon

Bootstrap Sob Demanda

Dependências de Ferramentas

FerramentaUsoInstalação Automática
pe-sieveDetectar hooks / injeções em processos✓
API Monitor v2Observar dinamicamente chamadas de API e hooksSemi-automática (download manual)
SysWhispers3Gerar stubs de syscall direto / indireto✓ (git clone + python)
Hell's Gate POCImplementação de referência para resolução dinâmica de SSN✓ (git clone)
WinDbg + IDARE estático de DLLs/drivers de EDR, callbacks de kernel✗ (instalar manualmente)
Sysmon + config olafAmbiente de validação local✓

Comando de Bootstrap

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

Contexto de Roteamento

Entrada Upstream:

  • reverse-engineering/ — Necessário entender primeiro a implementação da DLL/driver do EDR
  • attack-chain/ — Decide em qual fase da kill chain introduzir esta skill

Associações no Mesmo Nível:

  • pentest-tools/network-attack-defense.md — Como coordenar com esta skill durante movimentação lateral
  • malware-analysis/ — Visão inversa, ver como o detector escreve regras
  • field-journal/ — Registrar experiências após cada operação real

Entrega Downstream:

  • Ao gerar relatório, referenciar MITRE ATT&CK T1562 (Impair Defenses), T1562.001 (Disable or Modify Tools), T1562.006 (Indicator Blocking), T1055 (Process Injection), T1027 (Obfuscated Files or Information)

Declaração de Limites Legais

  • Apenas para Red Team / Exercícios de Defesa / Testes de Produto Próprio legalmente autorizados
  • Obter autorização por escrito (SoW / Contrato de Teste / Declaração de Escopo SRC) antes da operação
  • Proibido para alvos não autorizados, proibido exceder o escopo autorizado
  • Relatar imediatamente ao cliente qualquer achado de alto risco, seguindo divulgação responsável
  • Todas as informações reais do alvo em relatórios devem ser desidentificadas (IP / hostname / domínio / placeholders de credenciais)

Referências

  • Pesquisa detalhada de hooks: references/hook-survey.md
  • Técnicas de unhook / syscall: references/unhook-techniques.md
  • ETW / AMSI / Contra-forense: references/telemetry-blinding.md
  • MITRE ATT&CK T1562: https://attack.mitre.org/techniques/T1562/

Auto-verificação de Conclusão da Tarefa (DEVE passar antes de afirmar conclusão)

  • Eu executei cada etapa do fluxo de trabalho (não apenas li)?
  • Eu usei caminhos reais de ferramentas com base em tool-index?
  • Eu produzi evidências reproduzíveis (comandos/scripts/capturas de tela/relatórios)?
  • Eu completei e registrei os itens da Checklist exigidos pelas REGRAS?

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

api-security

Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication, authorization, rate-limit, and CI/CD testing.

apk-reverse

在 CLI 环境下做 Android APK 逆向时使用。适用于 APK 解包、Java 反编译、smali 修改、重打包、Frida 动态 Hook,以及按需切换到 so/native 分析。优先使用本机已安装的 jadx、apktool、frida、adb、ida-reverse、radare2。

attack-chain

Use for authorized multi-stage attack-path planning and orchestration when a task spans reconnaissance, initial access, privilege escalation, lateral movement, or impact assessment. Route single-stage tasks directly to their specialist skill.

binary-diff

|

binary-ninja-reverse

Use for authorized binary analysis in Binary Ninja, including HLIL/MLIL/LLIL inspection, strings/imports/exports, cross-references, types, patch review, Python API automation, and optional Binary Ninja MCP or localhost HTTP integration.

browser-automation

|

browser-extension-reverse

Use for authorized reverse engineering of browser extensions (Chrome/Firefox) including manifest analysis, background workers, and extension-based credential or traffic logic recovery.

case-review

Reviews a reverse-skill case package for scope readiness, Evidence to Finding to Path traceability, work item coverage, timeline references, and optional artifact hash integrity before report handoff.

cloud-k8s

Use for authorized cloud, container, and Kubernetes security assessment including metadata SSRF, IAM misconfig, container escape paths, and cluster RBAC review.

code-audit

Use for authorized source-code security review and SAST workflows including Semgrep, CodeQL patterns, dangerous API hunting, and fix verification.

ctf-sandbox

Thin PRIMARY for CTF / AWD / 靶场 multi-type orchestration. Hands off to the sidecar CTF-Sandbox-Orchestrator. Use when the user says CTF, AWD, 靶场, or 比赛题 and no more specific pwn/APK/IDA route already won.

database-security

Use for authorized database security assessment covering PostgreSQL/MySQL/MSSQL/Mongo/Redis exposure, authz, UDF/command paths, and misconfiguration review.

diagram-generator

generate, refine, validate, and render diagrams from natural language, notes, code snippets, schemas, tables, or existing diagram source. use for flowcharts, swimlanes, sequence diagrams, state diagrams, er diagrams, class diagrams, architecture/c4-style diagrams, dependency graphs, gantt charts, mind maps, user journeys, sankey-style flows, org charts, network graphs, and other visual models. supports mermaid by default, graphviz dot for complex graph layout, plantuml for uml-heavy engineering diagrams, and svg output when direct markup is more reliable.

digital-forensics

Use for authorized digital forensics including memory dumps, disk timelines, PCAP investigation, artifact triage, and IR evidence preservation.

docs-generator

|

dotnet-reverse

.NET / C# 二进制逆向。当目标是 .NET assembly(PE 头含 CLR、.exe/.dll 托管程序)、C# 编译产物(含 NativeAOT)、红队 Sharp* 工具(Rubeus / SharpHound / SharpHound 等)、.NET 混淆程序(ConfuserEx / SmartAssembly / Babel / Eazfuscator)、.NET loader / info-stealer / 套壳 malware 时使用。优先用 dnSpyEx + de4dot,需要 AI 直接操作时联动 dnSpy MCP。不用于纯 native 二进制(走 reverse-engineering / ida-reverse)。

email-security

Use for authorized email security review including phishing analysis, header authentication (SPF/DKIM/DMARC), BEC patterns, and mailbox token abuse research.

firmware-pentest

|

ghidra-reverse

Use for free/open reverse engineering with Ghidra (headless or GUI), including decompile, cross-refs, and optional Ghidra MCP workflows when IDA is unavailable.

go-rust-reverse

Use for reverse engineering stripped Go and Rust binaries including runtime recognition, pclntab/moduel data recovery, panic strings, and idiomatic decompilation recovery.

Habilidades Relacionadas