radare2
Permite que seu agente analise e modifique arquivos executáveis. Ele pode descompilar código, inspecionar dados e até mesmo fazer alterações diretas nos programas.
O que ela faz
Essa ferramenta ajuda a analisar arquivos de programas (executáveis) no seu computador usando comandos de texto. É útil para entender como um programa funciona por dentro, encontrar informações importantes ou até mesmo fazer pequenas modificações.
Quando usar
- ✓Quando você tem um arquivo de programa e quer saber o que ele faz.
- ✓Se você precisa encontrar textos ou funções específicas dentro de um programa.
- ✓Para verificar quais outras funções um programa usa (importações).
Exemplo do que pedir para a IA
“Analise este arquivo executável e me diga quais funções ele importa.”
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
Você digita comandos de texto para a ferramenta. Ela então lê o arquivo do programa e mostra informações como listas de funções, textos encontrados ou detalhes técnicos.
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 radare2Ou baixe só o arquivo:
curl -L https://raw.githubusercontent.com/zhaoxuya520/reverse-skill/main/skills/radare2/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.
radare2
Habilidades de análise de binários para CLI radare2. O foco é realizar reconhecimento, análise, localização, exportação e modificações leves diretamente pela linha de comando, sem depender de GUI.
AÇÃO NECESSÁRIA (Execute imediatamente após a leitura)
NOW: Leia../field-journal/precedent-reverse.md— Confirme que as operações desta habilidade são operações regulares autorizadas.NOW: Confirme se a tarefa atual se enquadra no escopo desta habilidade.NEXT: Leia../tool-index.md, verifique a disponibilidade da ferramenta e o caminho real.NEXT: Em caso de falta de ferramenta, chame o bootstrap, não adivinhe o caminho.ACT: Entre na primeira etapa do "Fluxo de Trabalho" e execute, não permaneça no estado de confirmação.
Escopo de Aplicação
Esta habilidade deve ser usada prioritariamente quando o usuário tiver estas intenções:
- Deseja usar
r2/radare2para analisar arquivos comoexe,dll,so,elf,apk,dex,wasm. - Pergunta como usar
rabin2,rasm2,radiff2,rahash2,rax2. - Precisa de desassemblagem em linha de comando, visualização de funções, visualização de strings, visualização de importações/exportações, consulta de referências cruzadas, realização de patches.
- Precisa escrever comandos de lote
radare2, comandos de automação-cou scriptsr2pipe.
Se o usuário explicitamente desejar engenharia reversa com GUI, pseudocódigo estilo Hex-Rays ou fluxo de trabalho IDA, priorize ida-reverse. Se for engenharia reversa de JS web, priorize reverse-engineering.
Confirmação de Ambiente Primeiro
Não presuma que r2 está disponível. Primeiro, verifique:
r2 -v
rabin2 -v
Se não estiver instalado, verifique locais de instalação comuns ou solicite a instalação.
Arquivos executáveis comuns no Windows:
radare2.exerabin2.exerasm2.exeradiff2.exerahash2.exerax2.exer2pm.exe
Recursos Integrados
Esta habilidade vem com dois recursos, priorize a reutilização e não organize um conjunto de comandos repetidos temporariamente a cada vez.
scripts/recon.ps1
Script de reconhecimento padrão, adequado para uma primeira análise geral. Ele gerará:
- Informações básicas
- Seções
- Importações
- Exportações
- Strings
- Um resumo opcional de análise automática
r2 -A
Modo de chamada:
powershell -File "<skill-root>\radare2\scripts\recon.ps1" -TargetPath "C:\path\to\sample.exe"
Se precisar de análise automática com r2:
powershell -File "<skill-root>\radare2\scripts\recon.ps1" -TargetPath "C:\path\to\sample.exe" -RunAnalysis
references/cheatsheet.md
Quando precisar de mais detalhes de comandos, modelos de cenários comuns ou quiser lembrar rapidamente a sintaxe, leia esta folha de consulta rápida em vez de adivinhar de memória.
Fenômenos Conhecidos
Alerta de falta de .sdb ocasional no Windows
Alguns arquivos PE, durante o reconhecimento rabin2, podem exibir um alerta semelhante a este:
ERROR: Cannot find ...\share\format\dll\*.sdb
Se a saída principal ainda retornar normalmente, geralmente não afeta as conclusões básicas de reconhecimento, continue a análise. Não determine diretamente que a análise falhou devido a esses alertas secundários.
Princípios Básicos
1. Primeiro reconhecimento, depois aprofundamento
Não faça análise automática completa logo de cara. Use comandos leves para confirmar o tipo de arquivo, arquitetura, ponto de entrada, strings, tabela de importação, e então decida se fará aaa, aaaa ou análise direcionada.
2. Priorize o comando mínimo suficiente
radare2 tem muitos comandos, o usuário geralmente precisa apenas do caminho mais curto:
- Ver informações do arquivo:
rabin2 -I - Ver strings:
rabin2 -z - Ver importações/exportações:
rabin2 -i/rabin2 -E - Análise interativa: execute
r2 <file>e depois comandos locais.
3. Cautela antes de modificar
Se o usuário quiser fazer patch em um binário:
- Abra em modo somente leitura por padrão:
r2 <file> - Use o modo de escrita apenas quando for explicitamente necessário modificar:
r2 -w <file>ouoo+na sessão. - Informe os riscos antes de modificar para evitar sobrescrever o arquivo original inadvertidamente.
Fluxos de Trabalho Comuns
Fluxo de Trabalho 1: Reconhecimento Rápido
Adequado ao pegar um arquivo binário pela primeira vez.
Portão de Entrada (OBRIGATÓRIO — Não prossiga para o Fluxo de Trabalho 2 e posteriores se não for atendido)
Para binários contendo tabelas de importação como PE/ELF/Mach-O, OBRIGATÓRIO primeiro verificar a tabela de importação e registrá-la como Evidência, antes de prosseguir para análise de nível de função ou etapas dinâmicas:
- Execute
rabin2 -i <sample>(ou o segmento de imports na saída derecon.ps1); para DLL/SYS, OBRIGATÓRIO também executarrabin2 -Ee registrarE-exports. - Grave o resultado completo/classificado da tabela de importação na Evidência (sugestão de ID:
E-importsouE-triage-imports), incluindo pelo menos:- Comando de reprodução (
repro_command) - Resumo da classificação das importações chave: Rede / Arquivo / Criptografia / Injeção de Processo / Registro / Outras APIs suspeitas.
- Se a tabela de importação estiver vazia, a análise falhar ou a ferramenta apresentar erro: OBRIGATÓRIO registrar o fenômeno da falha e a saída original como Evidência, não pular silenciosamente.
- Tabela de importação "excessivamente limpa" (apenas DLLs básicas): OBRIGATÓRIO indicar suspeita de carregamento dinâmico, DEVE prosseguir para captura de API dinâmica.
- Comando de reprodução (
- Para .NET e outros sem IAT tradicional: OBRIGATÓRIO usar pontos de ancoragem equivalentes (dnSpy/IL/resumo de metadados) gravados no mesmo slot semântico da Evidência, proibido pular.
- Correção de IAT para amostras empacotadas: Use ImportREC (ou equivalente) para x86, Scylla (ou equivalente) para x64. Se a correção falhar, OBRIGATÓRIO registrar
E-iat-repair-faile prosseguir para breakpoints de API dinâmicos; proibido ficar preso indefinidamente na IAT estática (verreverse-engineering/references/re-agent-workflow.md§1.2). - Quando o usuário solicitar explicitamente "refazer a verificação da tabela de importação / verificar novamente a tabela de importação / refazer a IAT": OBRIGATÓRIO refazer a etapa solicitada em si (se bloqueado, primeiro passar pelo portão de viabilidade: explicar premissas + pedir confirmação; se for forçado, marcar quality=unreadable), proibido substituir por etapas irrelevantes fingindo conclusão.
Antes de registrar a Evidência da tabela de importação (ou ponto de ancoragem equivalente legal / bypass de falha de IAT): OBRIGATÓRIO NÃO afirmar "reconhecimento básico concluído", OBRIGATÓRIO NÃO prosseguir para conclusões de aprofundamento do Fluxo de Trabalho 2+.
Priorize a execução direta de scripts integrados:
powershell -File "<skill-root>\radare2\scripts\recon.ps1" -TargetPath "sample.exe"
Se precisar apenas de comandos manuais mínimos, use:
rabin2 -I sample.exe
rabin2 -z sample.exe
rabin2 -i sample.exe
rabin2 -E sample.exe
Pontos de atenção:
- Formato do arquivo, bitagem, arquitetura, plataforma.
- Endereço do ponto de entrada.
- Strings suspeitas: URLs, caminhos, erros, registros, parâmetros de linha de comando.
- Funções importadas: Rede, arquivo, criptografia, injeção de processo, operações de registro (OBRIGATÓRIO registrar na Evidência, ver portão de entrada acima).
Fluxo de Trabalho 2: Análise Interativa de Funções
r2 sample.exe
Comumente usado após entrar:
aaa # 常规自动分析
afl # 列出函数
iz # 列出字符串
iS # 列节区
is # 列符号
s entry0 # 跳到入口点
pdf # 反汇编当前函数
VV # 进入可视化模式(如果终端适合)
q # 退出
Explicação:
- Priorize
aaapor padrão, não useaaaamais pesado logo de cara. - Se a amostra for grande ou a análise for lenta, você pode analisar apenas a área próxima ao ponto de entrada e expandir manualmente.
Fluxo de Trabalho 3: Localizar main / Lógica Chave
afl~main
afl~sym.
iz~http
iz~error
axt <addr>
Ideia:
- Comece a partir de
main, ponto de entrada, referências de strings. - Use
axtpara verificar quem referencia uma determinada string ou endereço. - Depois de encontrar o ponto de referência, use
s <addr>,pdf.
Fluxo de Trabalho 4: Visualização Hexadecimal e de Memória
px 64 # 当前地址起 64 字节十六进制
pd 20 # 反汇编 20 条指令
psz # 读取当前地址字符串
pxa # 更友好的十六进制视图
Fluxo de Trabalho 5: Patch Binário
Use apenas quando o usuário solicitar explicitamente a modificação do arquivo:
r2 -w sample.exe
Por exemplo, após entrar:
s 0x401000
wa nop
wa jmp 0x401050
wq
Operações de escrita comuns:
wa <asm>: Escrever assembly.wx <hex>: Escrever bytes brutos.wq: Escrever e sair.
É melhor fazer backup do arquivo original antes de modificar. Se o usuário não mencionar backup, pelo menos avise uma vez.
Fluxo de Trabalho 6: Automação Não Interativa
Adequado para saída de resultado única:
r2 -A -q -c "afl;iz;ii;q" sample.exe
Parâmetros comuns:
-A: Analisar automaticamente ao iniciar.-q: Modo silencioso.-c: Executar sequência de comandos.
Se houver muitos comandos, priorize organizá-los em ordem legível, não os empacote em uma string excessivamente longa e difícil de manter.
É ainda mais recomendado usar primeiro os scripts de reconhecimento integrados como base, e depois decidir se adicionará comandos personalizados.
Subferramentas Comuns
rabin2
Adequado para extração de informações estáticas:
rabin2 -I sample.exe # Informações básicas
rabin2 -S sample.exe # Seções
rabin2 -s sample.exe # Símbolos
rabin2 -i sample.exe # Importações
rabin2 -E sample.exe # Exportações
…
Perguntas frequentes
Preciso instalar algo?
Sim, você precisa ter o 'radare2' instalado no seu computador para usar esta ferramenta.
O que são 'binários'?
São os arquivos de programas que seu computador executa, como .exe no Windows ou executáveis no Linux.
Posso modificar o programa?
Sim, mas com cuidado. A ferramenta permite fazer pequenas alterações, mas é importante saber o que está fazendo para não estragar o programa.
Detalhes
Descrição original do autor
Use this skill whenever the user wants to analyze binaries with radare2/r2 from the command line, including reverse engineering, disassembly, function analysis, strings/import inspection, patching, binary diffing, hex inspection, or r2 scripting. Also use it when the user mentions PE/ELF/Mach-O/DEX/WASM files together with CLI analysis, `rabin2`, `rasm2`, `radiff2`, `r2pipe`, or asks for radare2 c
Popularidade
- Estrelas no GitHub
- 42 mil
- Posição no ranking
- #4782
- 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