3 pontos por GN⁺ 2024-03-31 | 1 comentários | Compartilhar no WhatsApp

Descompilador rev.ng se torna open source e inicia beta fechado da UI

  • Anunciada a abertura do código do descompilador backend revng-c, concluindo a abertura de todo o mecanismo de descompilação
  • Convites para o beta fechado da UI do rev.ng serão enviados aos assinantes da newsletter, com convites baseados em FIFO
  • Novo site lançado, com versão em nuvem disponível via rev.ng Hub
  • Mesmo quem não participa do beta fechado pode explorar projetos públicos
  • Inscrições abertas para demonstrações individuais dos recursos do rev.ng

Como usar o rev.ng

  • A instalação do revng não exige privilégios de root, e tudo é instalado em um único diretório
  • É fornecido um exemplo de descompilação de um programa simples, e a documentação permite conferir a configuração do ambiente e os tutoriais
  • Para usar a UI, é necessário se cadastrar na newsletter, e os participantes do beta fechado serão convidados gradualmente
  • QA inicial realizado para binários Linux x86-64, com suporte a vários ABIs e plataformas

Objetivos e design do rev.ng

  • Foco em recuperação automática de estruturas de dados, UX moderna, reversing colaborativo, amplo suporte a plataformas e extensibilidade
  • Recurso de recuperação automática de layout de structs por meio da análise de layout de dados
  • UI baseada em VSCode, podendo rodar em uma aba do navegador ou como aplicação standalone
  • Suporte a reversing colaborativo por meio de arquitetura cliente-servidor, com gerenciamento de projetos via rev.ng Hub
  • Suporte a diversas arquiteturas com base nas arquiteturas suportadas pelo QEMU, além de um formato declarativo para suportar ABIs
  • Como projeto open source, facilita scripting, com wrappers em Python e TypeScript

Uso gratuito e premium em comparação ao open source

  • O framework rev.ng é totalmente open source, com descompilação disponível via CLI
  • A UI pode ser usada gratuitamente na nuvem para projetos públicos; projetos privados exigem assinatura
  • A UI totalmente standalone pode ser executada offline mediante compra de licença

Uso na nuvem do rev.ng

  • É possível criar projetos e convidar colaboradores por meio do rev.ng Hub
  • A UI roda no navegador, enquanto o backend roda na nuvem
  • Projetos públicos são gratuitos; projetos privados exigem assinatura
  • Há possibilidade de discutir a instalação de serviço em nuvem privada

Roadmap

  • É fornecido um roadmap detalhado até o lançamento da versão 1.0
  • O roadmap é composto por 4 etapas: versão alfa, versão beta, beta aberto e lançamento 1.0
  • Mais detalhes podem ser consultados na página de roadmap

Como entrar em contato e acompanhar novidades

  • Contato e informações via X/Twitter, Discord, Discourse, GitHub, newsletter mensal e e-mail

Opinião do GN⁺

  • A abertura do código do rev.ng é um avanço importante que pode estimular a colaboração e o compartilhamento de conhecimento nas áreas de engenharia de software e segurança.
  • Tornar o descompilador open source permite que os usuários modifiquem e melhorem o código livremente, viabilizando inovação orientada pela comunidade.
  • A UI em nuvem do rev.ng combina bem com o ambiente de trabalho moderno, em que trabalho remoto e colaboração se tornam cada vez mais importantes.
  • Apesar de ser um projeto open source, oferecer recursos premium e construir um modelo de monetização pode servir de bom exemplo para outros projetos open source.
  • Outros projetos open source com recursos semelhantes incluem Ghidra e Radare2, que também podem ser considerados ferramentas poderosas de engenharia reversa.
  • Ao adotar o rev.ng, é preciso considerar o escopo das arquiteturas e ABIs suportados, com a vantagem adicional do suporte da comunidade open source.

1 comentários

 
GN⁺ 2024-03-31
Comentários no Hacker News
  • Resumo do modelo de preços:

    • O framework rev.ng é totalmente open source, e é possível descompilar o que você quiser pela CLI.
    • A UI é oferecida nas seguintes formas:
      • Para projetos públicos, pode ser usada gratuitamente na nuvem.
      • Para projetos privados, pode ser usada na nuvem por meio de assinatura.
      • Pode ser comprada como um aplicativo totalmente independente e utilizável offline.
    • Para comparação, o Hopper oferece 1 ano de atualizações por 100 USD, o Ghidra e o Radare2 são FOSS e totalmente gratuitos, e o IDA Pro é muito caro.
  • Resumo da análise sobre a equipe:

    • É um pouco incomum que o CEO (aleclearmind) esteja fazendo muito mais commits do que o CTO (pfez).
    • A maioria dos CEOs reclama que não tem tempo para programar, mas neste caso o CEO está participando bastante do código.
    • Se essa abordagem funcionar, deve ser um trabalho muito divertido para a equipe.
  • Resumo do problema de compatibilidade com arquivos ELF:

    • Um usuário tentou analisar um arquivo ELF, mas o rev.ng aparentemente não oferece suporte a binários do FreeBSD nem a módulos de kernel.
    • Isso provavelmente não tem relação com o FreeBSD, e sim com o fato de não ser um executável simples.
  • Resumo da avaliação positiva sobre a empresa:

    • A empresa foi fundada com base em um dos melhores livros de PLT (Programming Language Theory).
    • Os cofundadores da empresa se conheceram por meio desse livro, que se tornou a base da empresa.
  • Resumo da sugestão:

    • Foi apresentada a ideia de nomear automaticamente com base na forma como o código interage com variáveis e membros de struct.
    • A abordagem seria baixar todo o código do GitHub, encontrar variáveis com layouts e interações semelhantes e usar esses nomes quando houver confiança suficiente.
  • Resumo da expectativa sobre fluxo de trabalho colaborativo:

    • A pessoa não usou ferramentas como as da equipe do IDA, mas espera uma experiência de engenharia reversa que funcione sem atrito, como o Google Docs.
  • Resumo do interesse na versão standalone:

    • O usuário tem interesse em testar a versão standalone e está aguardando notícias sobre o preço.
    • Espera que o valor seja razoável o suficiente para uso como hobby.
  • Resumo da reação positiva à ferramenta de hacking binário:

    • A pessoa expressa alegria com o lançamento de uma nova ferramenta de hacking binário.
    • Também faz várias sugestões específicas sobre formatos de empacotamento.
  • Resumo da reflexão sobre terceirização do QEMU TCG:

    • Pergunta se houve arrependimento por terceirizar o "lifting" usando o QEMU TCG.
    • Busca opiniões sobre se essa abordagem funcionou bem.