Recaf
Um editor de bytecode Java moderno e fácil de usar que abstrai as complexidades dos programas Java.
Download
- Lançador
- Uso e instruções encontradas no repositório do inicializador
- Lançamentos instantâneos
- Consulte ações de CI para artefatos de liberação
- Lançamentos independentes (nenhum para 4X atualmente)
Características
- Edite o bytecode Java com facilidade em um nível alto ou baixo (sem as partes irritantes)
- Os recursos do editor no Recaf abstraem detalhes complexos de aplicativos Java compilados, como:
- A piscina constante
- Cálculo do quadro de pilha
- Usando instruções amplas quando necessário
- E mais!
- Interface navegável fácil de usar com ações sensíveis ao contexto
- Suporte para aplicativos Java e Android padrão
- Vários descompiladores para alternar, com todos os seus parâmetros totalmente configuráveis
- Compilador integrado para permitir a recompilação de classes descompiladas, mesmo se algumas classes referenciadas estiverem faltando (quando suportado, o suporte pode variar dependendo da complexidade e ofuscação do código)
- Um montador de bytecode com sintaxe simples e ferramentas de suporte
- Veja o estado das variáveis locais e dos valores da pilha em qualquer ponto dos métodos
- Acesse variáveis por nomes em vez de índices para um código desmontado mais claro
- Converta trechos de código-fonte Java em sequências de bytecode automaticamente
- Procurando por uma variedade de conteúdos diferentes: Strings/constantes numéricas, classes e referências de membros, padrões de instrução
- Ferramentas para desofuscar código ofuscado
- Arquivos de classe especialmente criados com a intenção de travar as ferramentas de engenharia reversa são corrigidos automaticamente quando abertos no Recaf
- Arquivos jar/zip especialmente criados são lidos como a JVM, contornando truques sorrateiros que podem enganar as ferramentas de engenharia reversa para que mostrem os dados errados
- Suporte para renomear automaticamente classes ofuscadas e seus membros
- Suporte para renomear manualmente classes e seus membros (e exportar esses mapeamentos para uma variedade de formatos de mapeamento para uso em outras ferramentas)
- Anexe ao processo Java em execução com recursos de instrumentação
- E muito mais
Uma lista completa de recursos pode ser encontrada na documentação do usuário.
Scripts e plug-ins
Recaf expõe quase todas as suas funcionalidades através de APIs modulares. A automação de comportamentos pode ser feita facilmente com scripts ou plug-ins para situações mais complexas. Recursos adicionais também podem ser adicionados através de plugins, que podem registrar ganchos nas APIs que os oferecem.
Para criar seu próprio script ou plugin, consulte a documentação do desenvolvedor, especificamente a seção “plugins e scripts” .
Linha de Comando
Recaf pode ser executado como um aplicativo de linha de comando, o que pode ser especialmente útil quando combinado com scripts fornecidos na inicialização. Você pode ver todos os argumentos de inicialização atuais passando --help
como argumento do aplicativo.
Configuração de desenvolvimento
Clone o repositório via git clone https://github.com/Col-E/Recaf.git
Abra o projeto em um IDE ou gere o build com gradle.
IDE :
- Importe o projeto do arquivo
build.gradle
- Crie uma configuração de execução com a classe principal
software.coley.recaf.Main
Sem IDE :
- Execute
gradlew build
- A saída estará localizada em:
recaf-ui/build/libs/recaf-ui-{VERSION}-all.jar