Pular para o conteúdo
Skillpedia
Segurança48 mil · #4014

reverse-engineer

Faz seu agente analisar programas compilados. Ele entende como desmontar, descompilar e analisar softwares usando ferramentas avançadas de engenharia reversa.

O que ela faz

Esta ferramenta ajuda a entender como programas de computador funcionam por dentro, analisando seu código sem precisar do código fonte original. É útil para segurança, aprendizado ou para consertar programas.

Quando usar

  • ✓Quando você precisa entender um programa sem o código fonte.
  • ✓Para encontrar falhas de segurança em softwares.
  • ✓Para aprender como programas específicos funcionam.

Exemplo do que pedir para a IA

“Como posso analisar este programa para ver como ele verifica senhas?”

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

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/reverse-engineer/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/reverse-engineer/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta usa técnicas avançadas para desmontar o código do programa, permitindo ver as instruções que o computador executa. Ela ajuda a mapear o fluxo do programa e identificar partes importantes.

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 sickn33/agentic-awesome-skills --skill reverse-engineer

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/reverse-engineer/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

⚠️ USO AUTORIZADO APENAS Esta habilidade é apenas para fins educacionais ou avaliações de segurança autorizadas. Você deve ter permissão explícita e por escrito do proprietário do sistema antes de usar esta ferramenta. O uso indevido desta ferramenta é ilegal e estritamente proibido.

Portão de confirmação obrigatório Antes de executar qualquer comando que sonde, explore, altere, persista, extraia dados ou tente acesso a credenciais contra um alvo:

  1. Peça ao usuário para declarar o URL, IP, conta ou recurso exato do alvo.
  2. Peça ao usuário para confirmar a autorização por escrito e o escopo permitido.
  3. Mostre o(s) comando(s) exato(s) e explique seu efeito esperado.
  4. Aguarde a confirmação explícita na conversa atual.

Sem essa confirmação, permaneça somente leitura e forneça apenas orientação defensiva. Prefira um sandbox, VM descartável ou laboratório controlado.

Ambientes comuns de script de RE

  • IDAPython (scripting do IDA Pro)
  • Scripting Ghidra (Java/Python via Jython)
  • r2pipe (API Python do radare2)
  • pwntools (kit de ferramentas de CTF/exploração)
  • capstone (framework de desassemblagem)
  • keystone (framework de montagem)
  • unicorn (framework de emulador de CPU)
  • angr (execução simbólica)
  • Triton (análise binária dinâmica)

## Use this skill when

- Working on common re scripting environments tasks or workflows
- Needing guidance, best practices, or checklists for common re scripting environments

## Do not use this skill when

- The task is unrelated to common re scripting environments
- You need a different domain or tool outside this scope

## Instructions

- Clarify goals, constraints, and required inputs.
- Apply relevant best practices and validate outcomes.
- Provide actionable steps and verification.
- If detailed examples are required, open `resources/implementation-playbook.md`.

## Analysis Methodology

### Phase 1: Reconnaissance
1. **File identification**: Determine file type, architecture, compiler
2. **Metadata extraction**: Strings, imports, exports, resources
3. **Packer detection**: Identify packers, protectors, obfuscators
4. **Initial triage**: Assess complexity, identify interesting regions

### Phase 2: Static Analysis
1. **Load into disassembler**: Configure analysis options appropriately
2. **Identify entry points**: Main function, exported functions, callbacks
3. **Map program structure**: Functions, basic blocks, control flow
4. **Annotate code**: Rename functions, define structures, add comments
5. **Cross-reference analysis**: Track data and code references

### Phase 3: Dynamic Analysis
1. **Environment setup**: Isolated VM, network monitoring, API hooks
2. **Breakpoint strategy**: Entry points, API calls, interesting addresses
3. **Trace execution**: Record program behavior, API calls, memory access
4. **Input manipulation**: Test different inputs, observe behavior changes

### Phase 4: Documentation
1. **Function documentation**: Purpose, parameters, return values
2. **Data structure documentation**: Layouts, field meanings
3. **Algorithm documentation**: Pseudocode, flowcharts
4. **Findings summary**: Key discoveries, vulnerabilities, behaviors

## Response Approach

When assisting with reverse engineering tasks:

1. **Clarify scope**: Ensure the analysis is for authorized purposes
2. **Understand objectives**: What specific information is needed?
3. **Recommend tools**: Suggest appropriate tools for the task
4. **Provide methodology**: Step-by-step analysis approach
5. **Explain findings**: Clear explanations with supporting evidence
6. **Document patterns**: Note interesting code patterns, techniques

## Code Pattern Recognition

### Common Patterns
```c
// Ofuscação de strings (XOR)
for (int i = 0; i < len; i++)
    str[i] ^= key;

// Anti-depuração (IsDebuggerPresent)
if (IsDebuggerPresent())
    exit(1);

// Hashing de API (comum em malware)
hash = 0;
while (*name)
    hash = ror(hash, 13) + *name++;

// Construção de string na pilha
char s[8];
*(DWORD*)s = 0x6C6C6548;  // "Hell"
*(DWORD*)(s+4) = 0x6F;     // "o\0"

Convenções de Chamada

  • x86 cdecl: Argumentos na pilha, chamador limpa
  • x86 stdcall: Argumentos na pilha, chamado limpa
  • x64 Windows: RCX, RDX, R8, R9, depois pilha
  • x64 System V: RDI, RSI, RDX, RCX, R8, R9, depois pilha
  • ARM: R0-R3, depois pilha

Segurança e Ética

Uso Autorizado Apenas

  • Pesquisa de segurança com autorização adequada
  • Competições CTF e desafios educacionais
  • Análise de malware para fins defensivos
  • Divulgação de vulnerabilidades por meio de canais responsáveis

…

Perguntas frequentes

Preciso ter permissão para usar esta ferramenta?

Sim, é crucial ter permissão explícita e por escrito do dono do sistema antes de usar esta ferramenta. O uso não autorizado é ilegal.

Quais programas posso analisar?

Você pode analisar programas onde você tem permissão para investigar, como em desafios de segurança (CTFs), para fins educacionais ou em avaliações de segurança autorizadas.

O que esta ferramenta NÃO faz?

Esta ferramenta não ajuda a criar programas maliciosos, invadir sistemas sem permissão, roubar propriedade intelectual ou qualquer outra atividade ilegal.

Detalhes

Descrição original do autor

Expert reverse engineer specializing in binary analysis, disassembly, decompilation, and software analysis. Masters IDA Pro, Ghidra, radare2, x64dbg, and modern RE toolchains.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#4014
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas