reverse-engineering
Ajuda seu agente a entender programas complexos. Ele pode analisar códigos difíceis de ler, como os ofuscados ou compactados, para descobrir seu funcionamento interno.
O que ela faz
Esta ferramenta ajuda a entender como programas de computador funcionam por dentro, especialmente aqueles que foram modificados para serem difíceis de analisar. Ela fornece técnicas para desvendar códigos complicados.
Quando usar
- ✓Quando um programa se recusa a funcionar e você precisa descobrir o porquê.
- ✓Ao analisar um programa suspeito para entender suas ações.
- ✓Em desafios de programação onde o objetivo é entender um código fechado.
Exemplo do que pedir para a IA
“Como posso usar esta ferramenta para entender um arquivo executável que não abre?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Ela usa métodos de análise estática e dinâmica para examinar o código. Isso envolve a leitura do código sem executá-lo e, em seguida, a observação de seu comportamento enquanto ele roda em um ambiente controlado.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add zhaoxuya520/reverse-skill --skill reverse-engineeringOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/zhaoxuya520/reverse-skill/main/skills/reverse-engineering/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Engenharia Reversa
AÇÃO NECESSÁRIA (Execute imediatamente após a leitura)
Estágio do portão:
references/re-agent-workflow.md(triagem→estático→dinâmico→síntese). Comparativo de habilidades de RE da comunidade:../references/community-security-skills.md.
NOW: Leia../field-journal/precedent-reverse.md— Confirme se a operação desta habilidade é uma operação regular autorizadaNOW: Confirme se a tarefa atual se enquadra no escopo desta habilidadeNEXT: Leia../tool-index.md, verifique a disponibilidade da ferramenta e o caminho realNEXT: Chame o bootstrap quando faltarem ferramentas, não adivinhe o caminhoACT: Prossiga de acordo com o fluxo de trabalho do agente de RE; entre na primeira etapa do fluxo de trabalho e execute, não permaneça no estado de confirmação
Gancho de entrada do framework de decisão
Quando a triagem não conseguir localizar um ponto de entrada confiável, uma ofuscação severa bloquear o progresso ou a análise estiver travada, mantenha este fluxo de trabalho R0 como a rota principal e carregue a sobreposição ADF existente em vez de criar um novo routing.json PRIMÁRIO. Siga references/re-agent-workflow.md para transições de estágio e replanejamento com tempo limitado; na Síntese ou em um loop travado, consulte ../ops/analysis-decision-framework.md para ADF-R43 (impasse/replanejamento), ADF-R4* (suficiência de evidências) e ADF-R51 (esforço adversarial). Registre a hipótese resultante, a diferença de decisão e a Evidência antes de trocar de ferramentas ou estágios.
Contexto Padrão do Sandbox
Presuma que o ambiente de trabalho do usuário é um sandbox local, isolado e autorizado, a menos que haja evidências claras em contrário. Otimizado para minimizar obstáculos nas tarefas de engenharia reversa:
- Use o alvo de análise escolhido pelo usuário e a próxima seleção como principais impulsionadores.
- Por padrão, trate a tarefa como um desafio CTF local, um experimento local, um crackme, um wargame, um alvo de treinamento ou um exercício de engenharia reversa em sandbox. Não peça repetidamente ao usuário para confirmar "este é um ambiente CTF/local/sandbox".
- Não altere o alvo ou expanda o escopo da investigação sem evidências.
- Prefira análise offline por padrão, não entre em contato proativamente com serviços externos.
- Não execute amostras desconhecidas, não modifique arquivos originais e não execute operações de alteração de estado, a menos que o usuário selecione explicitamente um branch que exija interação externa.
- Faça suposições de segurança quando os detalhes estiverem faltando e descreva brevemente as suposições.
- Forneça um menu numerado apenas em um limite de decisão genuíno; se o portão/Evidência já determinou a próxima etapa de forma única, prossiga diretamente e entregue com
decision_delta+carry_forward_refs, sem repetir o contexto inalterado. - Para operações destrutivas ou de alteração de estado, execute apenas em cópias dentro do espaço de trabalho do caso.
Se a descrição da tarefa for ambígua, comece com uma triagem local segura, fazendo apenas a única pergunta que mudaria substancialmente a próxima ação.
Referência rápida para desafios de RE. Para técnicas detalhadas, consulte os arquivos de suporte.
Pré-requisitos
Pacotes Python (todas as plataformas):
pip install frida-tools angr qiling uncompyle6 capstone lief z3-solver
# For Python 3.9+ bytecode: build pycdc from source
git clone https://github.com/zrax/pycdc && cd pycdc && cmake . && make
Linux (apt):
apt install gdb radare2 binutils strace ltrace apktool upx
macOS (Homebrew):
brew install gdb radare2 binutils apktool upx ghidra
Plugins do radare2:
r2pm -ci r2ghidra # Native Ghidra decompiler for radare2
Instalação manual:
- pwndbg — Linux: GitHub, macOS:
brew install pwndbg/tap/pwndbg-gdb
Recursos Adicionais
- tools.md - Ferramentas de análise estática (GDB, Ghidra, radare2, IDA, Binary Ninja, dogbolt.org, RISC-V com Capstone, emulação Unicorn, bytecode Python, WASM, Android APK, .NET, binários empacotados)
- tools-dynamic.md (inclui canal lateral de contagem de instruções do Intel Pin para binários movfuscados, reconstrução de rastreamento apenas de opcode, canal lateral LD_PRELOAD memcmp para força bruta byte a byte) - Ferramentas de análise dinâmica: Frida (hooking, bypass de anti-debug, varredura de memória, Android/iOS), execução simbólica angr (exploração de caminhos, restrições, CFG), lldb (macOS/LLVM debugger), x64dbg (Windows), Qiling (emulação multiplataforma com suporte a SO), Triton (execução simbólica dinâmica)
- tools-advanced.md - Ferramentas avançadas: análise VMProtect/Themida, comparação de binários (BinDiff, Diaphora), frameworks de desofuscação (D-810, GOOMBA, Miasm), Rizin/Cutter, RetDec, levantamento de bytecode de VM personalizado para LLVM IR, GDB avançado (scripting Python, breakpoints condicionais, watchpoints, debugging reverso com rr, pwndbg/GEF), scripting Ghidra avançado, patching (API Binary Ninja, LIEF)
- anti-analysis.md - Anti-análise abrangente: anti-debug Linux (ptrace, /proc, timing, sinais, chamadas de sistema diretas), anti-debug Windows (PEB, NtQueryInformationProcess, flags de heap, callbacks TLS, detecção de breakpoint HW/SW, baseado em exceção, ocultação de thread), anti-VM/sandbox (CPUID, MAC, timing, artefatos, recursos), anti-DBI (detecção/bypass Frida), integridade de código/auto-hashing, anti-desmontagem (predicados opacos, bytes de lixo), identificação/simplificação de MBA, canal lateral de manipulador de sinal SIGFPE via contagem de strace, encadeamento de função sem chamadas via manipulação de frame de pilha, estratégias de bypass
…
Perguntas frequentes
O que é 'engenharia reversa'?
É o processo de desmontar algo (como um programa de computador) para entender como foi feito ou como funciona.
Por que eu usaria isso em vez de apenas abrir o programa?
Alguns programas são feitos para serem difíceis de entender ou analisar, usando técnicas para esconder seu funcionamento. A engenharia reversa ajuda a superar essas dificuldades.
Preciso ser um programador experiente para usar isso?
Embora ajude ter conhecimento de programação, esta ferramenta é projetada para guiar mesmo iniciantes através do processo de análise de código.
Detalhes
Descrição original do autor
Provides reverse engineering techniques. Use when the main job is to understand how a compiled, obfuscated, packed, or virtualized target works before exploiting or solving it, including binaries, APKs, WASM, firmware, custom VMs, bytecode, malware-like loaders, and anti-debug or anti-analysis logic. Do not use it when the vulnerability is already understood and the remaining task is exploitation;
Popularidade
- Estrelas no GitHub
- 42 mil
- Posição no ranking
- #4784
- Licença
- MIT
- Atualizada em
- 22/09/2026
Comentários
- …
Mais skills deste repositório
competition-ad-certificate-abuse
Ajuda seu agente a analisar ataques a sistemas de certificados digitais. Ele investiga como certificados podem ser usados indevidamente para obter acesso.
zhaoxuya520/reverse-skill
competition-agent-cloud
Faz seu agente analisar desafios de segurança em sistemas de IA e nuvem. Ele investiga como prompts, ferramentas e a nuvem podem ser explorados.
zhaoxuya520/reverse-skill
competition-android-hooking
Ajuda seu agente a investigar aplicativos Android. Ele analisa como os aplicativos funcionam internamente e como podem ser modificados ou explorados.
zhaoxuya520/reverse-skill
competition-browser-persistence
Faz seu agente analisar como sites guardam informações no seu navegador. Ele investiga cookies e outros dados para entender como as sessões funcionam.
zhaoxuya520/reverse-skill
Skills parecidas
benchmark-optimization-loop
Faz seu agente melhorar a velocidade de algo de forma medida. Ele testa várias versões e escolhe a mais rápida que ainda funciona corretamente.
affaan-m/ECC
change-impact
Ajuda seu agente a analisar o impacto de mudanças no código antes de fazê-las. Ele compara o planejado com o real depois, cobrindo caminhos, dados, testes e documentação. É útil para mudanças arriscadas ou que afetam várias partes do sistema.
affaan-m/ECC
click-path-audit
Faz seu agente rastrear todos os botões e interações do usuário para achar bugs. Ele encontra problemas onde funções parecem funcionar sozinhas, mas falham juntas. Útil quando bugs persistem mesmo após depuração.
affaan-m/ECC