Nova IA desmonta e recria aplicativos

Uma ferramenta de código aberto chamada REA (Reverse Engineer Anything) permite que agentes de inteligência artificial analisem aplicativos, realizem engenharia reversa de arquivos executáveis e recriem funcionalidades sem precisar acessar o código-fonte original. A solução integra ferramentas especializadas de análise de software a assistentes de programação por meio do Model Context Protocol (MCP).
O projeto busca tornar a engenharia reversa mais acessível e automatizada. Em vez de tentar deduzir como determinada funcionalidade foi implementada, um agente de IA pode examinar o programa, identificar funções relevantes, acompanhar o fluxo de execução e apresentar evidências técnicas que sustentem suas conclusões.
Disponível como pacote rea-agents no npm, o REA é desenvolvido em TypeScript e distribuído sob licença MIT. Segundo informações citadas sobre o projeto, seu repositório ultrapassou 125 mil estrelas no GitHub em outubro de 2026, período em que também ganhou destaque entre os projetos mais populares da plataforma.
Como funciona a engenharia reversa com agentes de IA
O REA funciona como uma camada de integração entre agentes de IA e ferramentas tradicionais de engenharia reversa. Por meio de um servidor MCP local, os agentes conseguem solicitar análises, consultar resultados e utilizar diferentes recursos técnicos sem precisar operar diretamente cada ferramenta.
O processo é organizado em três etapas: descompilar, compreender e recriar.
Primeiro, o agente recebe um aplicativo ou arquivo para análise. Em seguida, utiliza ferramentas como Ghidra, Hopper ou IDA para examinar instruções, funções e referências internas. Com essas informações, identifica como determinada funcionalidade opera e pode desenvolver uma implementação semelhante em outro projeto.
Para aplicações web e softwares baseados em Electron, o sistema também pode utilizar recursos do Chrome DevTools, permitindo investigar scripts, comunicação entre processos e comportamento de componentes.
Uma das principais características do REA é a apresentação de evidências verificáveis. As conclusões podem incluir referências a funções específicas, posições dentro de arquivos binários e chamadas de comunicação entre processos, além das limitações identificadas durante a análise.
Essa abordagem busca reduzir interpretações incorretas e permitir que desenvolvedores validem tecnicamente os resultados produzidos pela IA.
Ferramenta analisa aplicativos Android, Windows, websites e outros sistemas
O REA oferece suporte a diferentes formatos e ambientes de software, utilizando mecanismos específicos conforme o tipo de arquivo analisado.
Entre as capacidades descritas pelo projeto estão:
Executáveis nativos: análise de código de máquina, pseudocódigo, símbolos, strings e chamadas entre funções, utilizando Ghidra, Hopper ou IDA.
JavaScript e Electron: inspeção de módulos, importações, mapas de código-fonte, rotas e comunicação entre processos, sem executar o aplicativo.
Aplicações .NET: análise estática de metadados, instruções CIL e dependências nativas declaradas.
Aplicativos Android: inspeção de arquivos APK, manifestos, classes e métodos descompilados por meio do JADX.
Websites: investigação da estrutura das páginas, scripts, tráfego de rede e capturas de tela utilizando navegadores baseados no Chrome.
Outros formatos: suporte a WebAssembly (WASM), bytecode EVM, binários Go, firmware, capturas de tráfego de rede e registros de falhas do Linux.
A análise estática de JavaScript e .NET ocorre sem executar os arquivos examinados. Já os recursos de análise dinâmica podem exigir a execução ou interação com o software, utilizando as permissões disponíveis no ambiente.
Para programas nativos, as funcionalidades dependem da ferramenta de descompilação instalada e da compatibilidade com o sistema operacional utilizado.
Instalação utiliza npm e integração com assistentes de programação
O REA pode ser configurado por meio de um único comando, desde que o ambiente tenha versões compatíveis do Node.js e npm.
npx rea-agents setupDurante a instalação, o usuário seleciona os agentes que deseja integrar, analisa as alterações propostas e autoriza a configuração. O processo adiciona o servidor MCP e as instruções necessárias, preservando cópias de segurança das configurações existentes.
Entre os assistentes compatíveis estão Claude Code, Cursor, Codex, Gemini CLI e Grok Build. Outros clientes que suportam servidores MCP locais também podem utilizar a ferramenta mediante configuração manual.
Para análises mais profundas de executáveis nativos, é necessário ter acesso a ferramentas como Ghidra, Hopper ou IDA. Já a inspeção estática de aplicações JavaScript não exige um mecanismo adicional de análise nativa.
Depois da configuração, o desenvolvedor pode solicitar tarefas em linguagem natural, como investigar o funcionamento da pesquisa em um aplicativo de notas, apresentar as evidências encontradas e implementar uma funcionalidade semelhante em seu próprio software.
O agente coordena as ferramentas necessárias e utiliza os resultados da investigação para produzir e testar o código solicitado.
Uso da engenharia reversa exige atenção às questões legais
Embora o REA automatize diferentes etapas da engenharia reversa, sua utilização continua sujeita às leis aplicáveis, aos direitos de propriedade intelectual e às condições de licenciamento dos softwares analisados.
Os responsáveis pelo projeto apresentam a ferramenta como uma solução destinada a pesquisa, educação, interoperabilidade, preservação de software e análise de aplicações próprias ou cuja investigação tenha sido autorizada.
O projeto também esclarece que a licença MIT do REA não concede direitos de utilização sobre ferramentas comerciais integradas, como IDA Pro, Hopper e JEB. Esses produtos precisam ser obtidos e utilizados conforme suas respectivas licenças.
A possibilidade de examinar aplicativos sem acesso ao código-fonte não significa, portanto, que qualquer software possa ser analisado ou reproduzido sem restrições.
Agentes de IA ganham novas capacidades de análise de software
O REA representa uma abordagem em que agentes de IA deixam de depender exclusivamente do conhecimento adquirido durante o treinamento e passam a interagir diretamente com ferramentas especializadas.
Em atividades de engenharia reversa, essa integração permite fundamentar respostas em informações extraídas do software analisado, em vez de produzir explicações baseadas apenas em inferências.
A proposta acompanha iniciativas voltadas à execução de tarefas por agentes autônomos, incluindo ambientes de desenvolvimento como Cursor e soluções multiagentes como Eigent, que permitem coordenar atividades de programação, revisão de código e automação de processos.
Para profissionais de desenvolvimento e segurança da informação, o REA pode auxiliar na investigação de comportamentos internos de aplicativos, na análise de componentes e na compreensão de sistemas sem documentação ou código-fonte disponível.
Sua principal contribuição está na combinação entre automação, ferramentas consolidadas de engenharia reversa e resultados acompanhados de evidências técnicas, permitindo que as conclusões produzidas pelos agentes sejam examinadas e verificadas.



