O Cascavel Ă© um Quantum Security Framework modular, extensĂvel e multiplataforma (Linux/macOS) projetado para automatizar e otimizar processos de testes de penetração (pentest). Ele integra ferramentas de segurança lĂderes de mercado com um sistema robusto de plugins customizáveis, permitindo varreduras abrangentes de subdomĂnios, portas, diretĂłrios, banners, e a identificação de vulnerabilidades. AlĂ©m disso, o framework gera relatĂłrios detalhados em Markdown, facilitando a análise e o compartilhamento dos resultados de segurança.
Desenvolvido com foco em escalabilidade e facilidade de uso, o Cascavel visa capacitar profissionais de segurança e equipes de Red Team a realizar avaliações de segurança de forma mais eficiente e completa.
Desenvolvido por DevFerreiraG.
- Automação de Pentest Inteligente: Automatiza tarefas repetitivas e complexas, permitindo que os analistas se concentrem na análise crĂtica e na exploração manual.
- Arquitetura Plugável e ExtensĂvel: Facilmente extensĂvel com novos plugins desenvolvidos pela comunidade ou personalizados para necessidades especĂficas, cobrindo diversas áreas como segurança de rede, web, nuvem, e wireless.
- Multi-Plataforma: Compatibilidade total com sistemas operacionais Unix-like, incluindo macOS e Linux, garantindo flexibilidade no ambiente de trabalho.
- Integração de Ferramentas Essenciais: Utiliza e orquestra ferramentas de segurança populares como Subfinder, Amass, Httpx, Nmap, Ffuf, Gobuster, Naabu, Nuclei, Feroxbuster e Curl para uma cobertura abrangente de testes.
- Gerenciamento de Wordlists Integrado: Suporte para o uso de wordlists locais e a capacidade de baixar wordlists comuns automaticamente, otimizando ataques de força bruta e enumeração.
- Geração de RelatĂłrios Detalhados: Produz relatĂłrios claros e organizados em formato Markdown, incluindo todas as saĂdas das ferramentas, banners coletados, resultados de plugins e dados de portas abertas, facilitando a documentação e o compartilhamento.
- Criação Automática de Estrutura: Configura automaticamente as pastas necessárias para exports, relatórios, plugins, wordlists e templates do Nuclei na primeira execução.
Para configurar e começar a usar o Cascavel em seu ambiente, siga os passos abaixo:
Certifique-se de ter o Python 3.8 ou superior instalado em seu sistema.
git clone https://github.com/FuturoDevJunior/Cascavel.git
cd Cascavel
É uma boa prática isolar as dependências do projeto em um ambiente virtual.
python3 -m venv venv
source venv/bin/activate # No Windows, use `venv\Scripts\activate`
Instale todas as bibliotecas Python necessárias listadas no arquivo requirements.txt
:
pip install -r requirements.txt
O Cascavel integra-se com diversas ferramentas externas para oferecer sua funcionalidade completa. Recomenda-se instalar as seguintes ferramentas e adicioná-las ao seu $PATH
:
- Subfinder: Para enumeração rápida de subdomĂnios.
go install -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest
- Amass: Para mapeamento avançado da superfĂcie de ataque e descoberta de ativos.
go install -v github.com/owasp-amass/amass/v3/...@master
- Httpx: Para sondagem rápida e análise de servidores HTTP/S.
go install -v github.com/projectdiscovery/httpx/cmd/httpx@latest
- Nmap: Para varredura de portas, descoberta de serviços e detecção de SO.
- Linux (Debian/Ubuntu):
sudo apt-get install nmap
- macOS (Homebrew):
brew install nmap
- Linux (Debian/Ubuntu):
- Ffuf: Para fuzzing rápido e robusto de caminhos e parâmetros web.
go install -v github.com/ffuf/ffuf@latest
- Gobuster: Para bruteforce de diretĂłrios, arquivos, DNS e S3.
go install github.com/OJ/gobuster/v3@latest
- Naabu: Para varredura de portas ultrarrápida.
go install -v github.com/projectdiscovery/naabu/v2/cmd/naabu@latest
- Nuclei: Para testes de vulnerabilidade rápidos e baseados em templates.
go install -v github.com/projectdiscovery/nuclei/v2/cmd/nuclei@latest
- Feroxbuster: Para descoberta de conteúdo web via força bruta de diretórios e arquivos.
cargo install feroxbuster
(requer Rust)
Configuração do $PATH
para Ferramentas Go:
Se vocĂŞ instalou ferramentas Go, certifique-se de que o diretĂłrio $(go env GOPATH)/bin
esteja no seu $PATH
. Adicione a seguinte linha ao seu arquivo de perfil do shell (.bashrc
, .zshrc
, etc.) e recarregue-o:
export PATH=$PATH:$(go env GOPATH)/bin
Após a instalação e configuração das dependências, você pode iniciar o Framework Cascavel executando o script principal:
./cascavel.py
O framework Ă© interativo e solicitará o alvo (IP ou domĂnio) para iniciar as varreduras e testes:
Target (IP/domain): exemplo.com
O Cascavel automatiza uma série de etapas de reconhecimento e testes, incluindo:
- Enumeração de SubdomĂnios: Utiliza Subfinder e Amass.
- Sondagem HTTP/S: Com Httpx e Curl.
- Varredura de Portas: Com Naabu e Nmap.
- Descoberta de ConteĂşdo Web: Com Ffuf, Gobuster e Feroxbuster.
- Testes de Vulnerabilidade: Aplicação de templates Nuclei.
- Coleta de Banners: Identificação de serviços e versões em portas abertas.
- Execução de Plugins Personalizados: Módulos de teste adicionais via diretório
plugins/
. - Geração de Relatório Final: Um arquivo
.md
completo emreports/
.
O Cascavel Ă© projetado com uma arquitetura de plugins que o torna incrivelmente flexĂvel e extensĂvel. Para uma visĂŁo aprofundada sobre a vasta gama de plugins disponĂveis, detalhes sobre como cada um funciona, suas dependĂŞncias especĂficas e um guia completo sobre como vocĂŞ pode desenvolver seus prĂłprios plugins personalizados, por favor, consulte o arquivo PLUGINS.md.
.
├── cascavel.py # Script principal do Framework Cascavel
├── plugins/ # Diretório contendo todos os plugins de segurança
│ ├── __init__.py # Inicialização do pacote de plugins
│ ├── base/ # Base para classes de plugins (ex: plugin_base.py)
│ ├── network/ # Plugins focados em segurança de rede
│ ├── web/ # Plugins focados em segurança web
│ └── ... # Outras categorias de plugins (cloud, auth, etc.)
├── wordlists/ # Armazena wordlists para ataques de força bruta e enumeração
├── nuclei-templates/ # Diretório para templates de vulnerabilidade do Nuclei
├── exports/ # SaĂdas de ferramentas externas e dados brutos
├── reports/ # Relatórios finais gerados pelo framework
├── cascavel_logo.png # Logo do projeto
├── README.md # Documentação principal do projeto
├── CONTRIBUTING.md # Diretrizes para contribuição
├── CODE_OF_CONDUCT.md # Código de Conduta da comunidade
└── LICENSE # Informações sobre a licença do projeto
Todos os resultados dos testes sĂŁo compilados em relatĂłrios compreensivos no formato Markdown, salvos automaticamente no diretĂłrio reports/
. Os relatĂłrios sĂŁo nomeados com um timestamp (cascavel_YYYYMMDD_HHMMSS.md
) para facilitar a organização e a auditoria.
Cada relatĂłrio inclui:
- Informações básicas do alvo (Target, IP, Timestamp da execução)
- SaĂdas detalhadas de todas as ferramentas de reconhecimento e varredura (Subfinder, Amass, Httpx, Nmap, etc.)
- Resultados em formato JSON de ferramentas como Feroxbuster (quando aplicável)
- Listagem de portas abertas identificadas
- Banners coletados para cada porta aberta
- Resultados padronizados de todos os plugins executados, com detalhes e possĂveis vulnerabilidades encontradas.
Sua contribuição é fundamental para o crescimento e aprimoramento do Cascavel! Se você deseja participar do desenvolvimento, por favor, siga estas diretrizes:
- Fork o repositĂłrio principal no GitHub.
- Clone seu fork para sua máquina local.
- Crie uma nova branch para sua feature ou correção de bug:
git checkout -b minha-nova-feature
- Implemente suas mudanças, seguindo os Padrões de Código e garantindo que o código esteja bem documentado e testado.
- Faça commits claros e descritivos.
- Envie um Pull Request (PR) para a branch
main
do repositório original. Certifique-se de que seu PR passe em todas as verificações de CI/CD.
Para mais detalhes sobre o processo de contribuição, incluindo padrões de código e testes, consulte nosso arquivo CONTRIBUTING.md.
Para garantir um ambiente acolhedor e respeitoso para todos os colaboradores, pedimos que todos sigam nosso CĂłdigo de Conduta. Conflitos serĂŁo tratados de acordo com este documento.
Este projeto está distribuĂdo sob a MIT License. Para mais informações sobre os termos e condições, consulte o arquivo LICENSE completo no repositĂłrio.
GostarĂamos de expressar nossa profunda gratidĂŁo a toda a comunidade de segurança cibernĂ©tica e aos talentosos desenvolvedores das diversas ferramentas open-source que, com seu trabalho e dedicação, tornam este projeto possĂvel e fortalecem o ecossistema de segurança.