
reNgine é um framework de reconhecimento automatizado para aplicações web, com foco em um processo de reconhecimento otimizado e altamente configurável por meio de Engines, correlação e organização de dados de reconhecimento, monitoramento contínuo, apoiado por um banco de dados e uma interface de usuário simples e intuitiva. reNgine facilita para testadores de penetração a coleta de reconhecimento com configuração mínima e, com a ajuda da correlação do reNgine, torna o reconhecimento sem esforço.
O reNgine 2.2.0 vem com o bounty hub onde você pode sincronizar e importar seus programas do hackerone, notificações no aplicativo, chaos como ferramenta de enumeração de subdomínios, capacidade de enviar múltiplos padrões nuclei e gf, suporte a regex na configuração de subdomínios fora do escopo, modelo adicional de relatório PDF e muito mais. Confira as Novidades do reNgine 2.2.0!
As ferramentas tradicionais de reconhecimento muitas vezes ficam aquém em termos de configurabilidade e eficiência. O reNgine aborda essas deficiências e surge como uma excelente alternativa às ferramentas comerciais existentes.
O reNgine foi criado para superar as limitações das ferramentas de reconhecimento tradicionais e oferecer uma alternativa melhor, até superando algumas ofertas comerciais. Seja você um caçador de bugs, um testador de penetração ou uma equipe de segurança corporativa, o reNgine é sua solução ideal para automatizar e aprimorar seus esforços de coleta de informações.
Assista ao trailer de lançamento do reNgine 2.0-jasper aqui!

Documentação detalhada disponível em https://rengine.wiki


O reNgine não é um conjunto comum de reconhecimento; é um divisor de águas! Nós turbinamos o fluxo de trabalho tradicional com recursos inovadores que certamente facilitarão seu jogo de reconhecimento. O reNgine redefine a arte do reconhecimento com motores de varredura altamente configuráveis, correlação de dados de recon, monitoramento contínuo, relatório de vulnerabilidade com tecnologia GPT, gerenciamento de projetos e controle de acesso baseado em funções, etc.
🦾 O reNgine possui capacidades avançadas de reconhecimento, utilizando uma gama de ferramentas de código aberto para oferecer uma experiência abrangente de reconhecimento de aplicações web. Com sua interface de usuário intuitiva, ele se destaca na descoberta de subdomínios, identificação de endereços IP e portas abertas, coleta de endpoints, fuzzing de diretórios e arquivos, captura de screenshots e realização de varreduras de vulnerabilidades. Resumindo, ele faz o reconhecimento de ponta a ponta. Com identificação WHOIS e detecção de WAF, oferece insights profundos sobre os domínios alvo. Além disso, o reNgine também identifica buckets S3 mal configurados e encontra subdomínios e URLs interessantes, com base em palavras-chave específicas, para ajudá-lo a identificar seu próximo alvo, tornando-se uma ferramenta de referência para reconhecimento eficiente.
🗃️ Diga adeus ao caos dos dados de reconhecimento! O reNgine integra-se perfeitamente a um banco de dados, proporcionando correlação e organização de dados incomparáveis. Esqueça a dificuldade de vasculhar arquivos json, txt ou csv. Além disso, nossa linguagem de consulta personalizada permite filtrar dados de reconhecimento sem esforço, usando operadores de linguagem natural como filtragem de todos os subdomínios ativos com http_status=200 e também filtrar todos os subdomínios ativos que contenham admin no nome http_status=200&name=admin
🔧 O reNgine oferece flexibilidade incomparável por meio de seus motores de varredura altamente configuráveis, baseados em configuração YAML. Ele oferece a liberdade de criar e personalizar motores de varredura de reconhecimento com base em qualquer tipo de requisito; os usuários podem adaptá-los aos seus objetivos e preferências específicos, desde gerenciamento de threads até configurações de timeout e limites de taxa, tudo é personalizável. Além disso, o reNgine oferece uma variedade de motores de varredura pré-configurados prontos para uso, incluindo Varredura Completa, Varredura Passiva, Coleta de Screenshots e o Motor de Varredura OSINT. Esses motores prontos para uso eliminam a necessidade de configuração manual extensa, alinhando-se perfeitamente com a missão principal do reNgine de simplificar o processo de reconhecimento e permitir que os usuários acessem facilmente os dados de reconhecimento certos com o mínimo esforço.
💎 Subscans: Subscan é um recurso inovador no reNgine, tornando-o a única ferramenta de código aberto do gênero a oferecer essa capacidade. Com o Subscan, esperar pela conclusão de todo o pipeline é coisa do passado. Agora, os usuários podem responder rapidamente a novas descobertas durante o reconhecimento. Seja porque você se deparou com um subdomínio interessante e deseja realizar uma varredura de portas focada ou aprofundar-se com uma avaliação de vulnerabilidades, o reNgine tem a solução.
📃 Relatórios PDF: Além de suas capacidades robustas de reconhecimento, o reNgine vai além ao simplificar o processo de geração de relatórios, reconhecendo o papel crucial que os relatórios PDF desempenham no âmbito do reconhecimento de ponta a ponta. Os usuários podem gerar e personalizar relatórios PDF sem esforço para atender às suas necessidades exatas. Seja um Relatório de Varredura Completa, Relatório de Vulnerabilidades ou um relatório de reconhecimento conciso, o reNgine oferece flexibilidade para escolher o tipo de relatório que melhor comunica suas descobertas. Além disso, o nível de personalização é incomparável, permitindo que os usuários selecionem cores do relatório, ajustem resumos executivos e até adicionem toques personalizados como nomes de empresas e rodapés. Com a integração GPT, seus relatórios não são apenas um relatório; com etapas de remediação e impactos, você obtém uma visão de 360 graus das vulnerabilidades descobertas.
🔖 Diga Olá aos Projetos! O reNgine 2.0 introduz uma adição poderosa que permite organizar eficientemente seus esforços de reconhecimento de aplicações web. Com esse recurso, você pode criar espaços de projeto distintos, cada um adaptado a um propósito específico, como caça a bugs pessoal, engajamentos com clientes ou qualquer outra tarefa de reconhecimento especializada. Cada projeto terá um painel separado e todos os resultados das varreduras serão separados entre si, enquanto os motores de varredura e a configuração serão compartilhados entre todos os projetos.
⚙️ Funções e Permissões! No reNgine 2.0, elevamos seu reconhecimento de aplicações web a um novo nível de controle e segurança. Agora, você pode atribuir funções distintas aos membros da sua equipe — Sys Admin, Penetration Tester e Auditor — cada uma com permissões precisamente definidas para adaptar seu acesso e ações dentro do ecossistema reNgine.
🚀 Geração de Relatório de Vulnerabilidades com GPT: Prepare-se para o futuro dos relatórios de teste de penetração com o recurso inovador do reNgine: "Geração de Relatórios com Tecnologia GPT"! Com o poder do GPT da OpenAI, o reNgine agora fornece descrições detalhadas de vulnerabilidades, estratégias de remediação e avaliações de impacto que parecem ter sido escritas por um especialista humano em segurança! Mas não é só isso! Nossos relatórios baseados em GPT vão além ao vasculhar a web em busca de artigos de notícias relacionados, blogs e referências, para que você tenha uma visão de 360 graus das vulnerabilidades descobertas. Com o reNgine 2.0, revolucione seu jogo de teste de penetração e impressione seus clientes com relatórios que não são apenas informativos, mas envolventes e abrangentes, com análise detalhada sobre avaliação de impacto e estratégias de remediação.
🥷 Geração de Superfície de Ataque com GPT: Com o reNgine 2.0, o reNgine integra-se perfeitamente ao GPT para identificar os ataques que você provavelmente pode realizar em um subdomínio. Utilizando dados de reconhecimento como título da página, portas abertas, nome do subdomínio, etc., o reNgine pode aconselhar sobre os ataques que você poderia realizar em um alvo. O reNgine também fornecerá a justificativa de por que o ataque específico tem probabilidade de ser bem-sucedido.
🧭 Monitoramento Contínuo: O monitoramento contínuo está no centro da missão do reNgine, e seu recurso robusto de monitoramento contínuo garante que seus alvos estejam sob escrutínio constante. Com a flexibilidade de agendar varreduras em intervalos regulares, os testadores de penetração podem se manter informados sobre seus alvos sem esforço. O que diferencia o reNgine é sua integração perfeita com canais de notificação populares como Discord, Slack e Telegram, fornecendo alertas em tempo real para subdomínios recém-descobertos, vulnerabilidades ou quaisquer alterações nos dados de reconhecimento.



HailBytes - Enterprise reNgine Support
Serviços oficiais de suporte de nível empresarial, implantação e manutenção para reNgine estão disponíveis através da HailBytes.
Você também pode encontrar o vídeo aprofundado sobre como usar e instalar o reNgine aqui: reNgine Deep Dive by HailBytes

Clone o repositório
git clone https://github.com/yogeshojha/rengine && cd rengine
Configure o ambiente
nano .env
Certifique-se de alterar o POSTGRES_PASSWORD por segurança.
(Opcional) Para instalação não interativa, defina as credenciais do administrador no .env
DJANGO_SUPERUSER_USERNAME=yourUsername
[email protected]
DJANGO_SUPERUSER_PASSWORD=yourStrongPassword
Caso precise realizar uma instalação não interativa, você pode configurar o login, email e senha do administrador da interface web diretamente no arquivo .env (em vez de defini-los manualmente por meio de prompts durante o processo de instalação). Esta opção pode ser interessante para instalação automatizada (via ansible, vagrant, etc.).
DJANGO_SUPERUSER_USERNAME: nome de usuário do administrador da interface web (usado para fazer login na interface web).
DJANGO_SUPERUSER_EMAIL: email do administrador da interface web.
DJANGO_SUPERUSER_PASSWORD: senha do administrador da interface web (usada para fazer login na interface web).
A menos que esteja na branch de desenvolvimento, não acesse o reNgine por nenhuma porta.
Para Mac, Windows ou outros sistemas, consulte nosso guia de instalação detalhado em https://reNgine.wiki/install/detailed/
Se encontrar problemas durante a instalação ou preferir um guia visual, um dos membros da nossa comunidade criou um excelente vídeo de instalação para Kali Linux. Você pode encontrá-lo aqui: https://www.youtube.com/watch?v=7OFfrU6VrWw
Observação: Este é um conteúdo criado pela comunidade e não pertence ao reNgine. O processo de instalação pode mudar, portanto, consulte a documentação oficial para obter as instruções mais atualizadas.
Para atualizar o reNgine, execute:
cd rengine && sudo ./update.sh
Se o update.sh não tiver permissão de execução, use:
sudo chmod +x update.sh

O reNgine tem uma comunidade vibrante que frequentemente cria conteúdo útil sobre instalação, funcionalidades e uso. Abaixo está uma coleção de vídeos curados pela comunidade que você pode achar úteis. Observe que estes vídeos não são conteúdo oficial do reNgine, e as informações podem estar desatualizadas conforme o reNgine evolui.
Sempre consulte a documentação oficial para obter as informações mais atualizadas e precisas. Se você criou um vídeo sobre o reNgine e gostaria que fosse exibido aqui, envie um pull request atualizando esta tabela.
Agradecemos as contribuições da comunidade na criação desses recursos.



Aceitamos contribuições de todos os tamanhos! A comunidade de código aberto prospera com a colaboração, e sua contribuição é inestimável. Seja corrigindo um erro de digitação, melhorando a interface ou adicionando novos recursos, toda contribuição importa.
Como você pode contribuir:
Para começar:
Lembre-se, nenhuma contribuição é pequena demais. Seus esforços ajudam a tornar o reNgine melhor para todos!

Ao submeter issues, forneça o máximo de informações valiosas possível para ajudar os desenvolvedores a resolver o problema rapidamente. Siga estas etapas para coletar informações detalhadas de depuração:
Ative o Modo de Depuração:
web/entrypoint.sh na raiz do projetoexport DEBUG=1 no topo do arquivo:
#!/bin/bash
export DEBUG=1
python3 manage.py migrate
python3 manage.py runserver 0.0.0.0:8000
exec "$@"
docker-compose restart webVeja a saída de depuração:
make logs para ver o stack trace completoExemplo de saída de depuração:
web_1 | File "/usr/local/lib/python3.10/dist-packages/celery/app/task.py", line 411, in __call__
web_1 | return self.run(*args, **kwargs)
web_1 | TypeError: run_command() got an unexpected keyword argument 'echo'
Submeta sua issue:
Desative o Modo de Depuração:
DEBUG=0 em web/entrypoint.shAo fornecer essas informações detalhadas, você ajuda significativamente os desenvolvedores a identificar e corrigir problemas com mais eficiência.

O reNgine é um projeto de código aberto que acolhe contribuidores de todos os níveis de experiência, incluindo iniciantes. Se você nunca contribuiu para um projeto de código aberto antes, encorajamos você a começar aqui!
Sua contribuição, por menor que seja, é valiosa para nós.

Antes de buscar suporte:
Se ainda precisar de ajuda:
Observações:

O reNgine é um projeto por paixão desenvolvido no meu tempo livre, além do meu trabalho diário. Seu apoio ajuda a manter este projeto vivo e em crescimento. Veja como você pode contribuir:
Seu apoio, seja por meio de doações ou simplesmente dando uma estrela, me diz que o reNgine é valioso para você. Isso me motiva a continuar melhorando e adicionando recursos para tornar o reNgine a ferramenta de referência para reconhecimento.
Obrigado pelo seu apoio!

Agradecemos seus esforços para divulgar suas descobertas de forma responsável e faremos todo o possível para reconhecer suas contribuições.
Para reportar uma vulnerabilidade de segurança, siga estas etapas:
Não divulgue a vulnerabilidade publicamente em issues do GitHub ou qualquer outro fórum público.
Acesse a aba de Segurança do repositório do reNgine.
Clique em "Report a vulnerability" para abrir o formulário privado de relatório de vulnerabilidade do GitHub.
Forneça uma descrição detalhada da vulnerabilidade, incluindo:
Revisarei seu relatório e responderei o mais rápido possível, geralmente dentro de 48-72 horas.
Por favor, permita algum tempo para investigar e resolver a vulnerabilidade antes de divulgá-la a outros.
Estamos comprometidos em trabalhar com pesquisadores de segurança para verificar e resolver quaisquer vulnerabilidades potenciais reportadas a nós. Após corrigir o problema, reconheceremos publicamente sua divulgação responsável, a menos que você prefira permanecer anônimo.
Obrigado por ajudar a manter o reNgine e seus usuários seguros!

Distribuído sob a Licença GNU GPL v3. Veja LICENSE para mais informações.

Nota: Partes deste README foram escritas ou refinadas usando modelos de linguagem de IA.
Ajuste o dimensionamento dos workers do Celery no .env
MAX_CONCURRENCY=80
MIN_CONCURRENCY=10
MAX_CONCURRENCY: Este parâmetro especifica o número máximo de processos workers do Celery concorrentes do reNgine que podem ser gerados. Neste caso, está definido como 80, o que significa que a aplicação pode utilizar até 80 processos workers concorrentes para executar tarefas simultaneamente. Isso é útil para lidar com um alto volume de varreduras ou quando você deseja aumentar o poder de processamento durante períodos de alta demanda. Se você tiver mais núcleos de CPU, precisará aumentar este valor para maximizar o desempenho.
MIN_CONCURRENCY: Por outro lado, MIN_CONCURRENCY especifica o número mínimo de processos workers concorrentes que devem ser mantidos, mesmo durante períodos de menor demanda. Neste exemplo, está definido como 10, o que significa que mesmo quando há menos tarefas a processar, pelo menos 10 processos workers serão mantidos em execução. Isso ajuda a garantir que a aplicação possa responder prontamente a tarefas recebidas sem a sobrecarga de iniciar e parar processos workers repetidamente.
Essas configurações permitem o dimensionamento dinâmico dos workers do Celery, garantindo que a aplicação gerencie eficientemente sua carga de trabalho, ajustando o número de workers concorrentes com base no tamanho e na complexidade da carga de trabalho.
Aqui estão os valores ideais para MIN_CONCURRENCY e MAX_CONCURRENCY dependendo da quantidade de RAM da sua máquina:
MAX_CONCURRENCY=10MAX_CONCURRENCY=30MAX_CONCURRENCY=50Este é apenas um valor ideal que os desenvolvedores testaram e funciona! Mas sinta-se à vontade para experimentar com os valores. O número máximo de varreduras é determinado por vários fatores, como largura de banda da rede, RAM, número de CPUs disponíveis, etc.
Execute o script de instalação:
sudo ./install.sh
Para instalação não interativa: sudo ./install.sh -n
*Nota: Se necessário, execute chmod +x install.sh para conceder permissões de execução.*O reNgine agora pode ser acessado em https://127.0.0.1 ou, se estiver em um VPS, em https://seu_ip_do_vps
| Título do vídeo | Idioma | Publicador | Data | Link |
|---|
| reNgine Installation on Kali Linux | Inglês | Secure the Cyber World | 2024-02-29 | Assistir |
| Resultados do ReNgine - Automação para Recon | Português | Guia Anônima | 2023-04-18 | Assistir |
| reNgine Introduction | Árabe marroquino | Th3 Hacker News Bdarija | 2021-07-27 | Assistir |
| Automated recon? ReNgine - Hacker Tools | Inglês | Intigriti | 2021-08-24 | Assistir |