Sobre o projeto

Vuls é um scanner de vulnerabilidades sem agente escrito em Go. Ele tem como alvo hosts Linux, FreeBSD, Windows e macOS, servidores em nuvem e on-premise, contêineres Docker em execução, instalações WordPress, bibliotecas de linguagens de programação e dispositivos de rede. Motivação: o rastreamento e a aplicação manual de patches de vulnerabilidades é oneroso, especialmente quando atualizações automáticas são evitadas em produção. O Vuls visa detectar vulnerabilidades automaticamente, identificar quais servidores são afetados e produzir relatórios regulares via cron ou agendamento semelhante. Fontes de dados: bancos de dados de vulnerabilidades NVD e JVN; feeds OVAL do Red Hat, Debian, Ubuntu, SUSE e Oracle Linux; avisos de segurança como Alpine-secdb, Red Hat Security Advisories, Debian Security Bug Tracker, Ubuntu CVE Tracker e Microsoft CVRF; comandos de gerenciadores de pacotes (yum, zypper, pkg-audit), incluindo RHSA/ALAS/ELSA/FreeBSD-SA e changelogs; fontes de exploits e PoCs, incluindo Exploit Database, módulos Metasploit, awesome-cve-poc, PoC-in-GitHub, inthewilddb e nuclei-templates; alertas CERT do US-CERT e JPCERT; catálogos KEV da CISA e VulnCheck; inteligência de ameaças MITRE ATT&CK e CAPEC; aquasecurity/vuln-list; e wpscan para WordPress. Modos de varredura: o Fast Scan é executado sem privilégios de root ou dependências e quase não impõe carga ao alvo, com modo offline disponível para várias distribuições. O Fast Root Scan usa privilégios de root e pode detectar processos afetados por atualizações (yum-ps) ou processos atualizados mas não reiniciados (checkrestart do debian-goodies). O modo de varredura remota requer uma máquina conectada aos alvos via SSH; o modo de varredura local é executado em cada host; o modo servidor escuta como um servidor HTTP e recebe resultados enviados por comandos executados nos alvos, sem exigir SSH ou scanner no alvo. Análise dinâmica: o Vuls se conecta via SSH, executa comandos para capturar o estado do servidor e avisa quando uma atualização de kernel ou semelhante não foi seguida de reinicialização. Pacotes não pertencentes ao sistema operacional: varredura baseada em lockfile, integração com alertas de segurança do GitHub, varredura baseada em CPE e integração com OWASP Dependency Check ajudam a detectar vulnerabilidades em bibliotecas de linguagens, software compilado pelo próprio usuário e dispositivos de rede. O núcleo, temas e plugins do WordPress também podem ser verificados. Outros recursos: testes não destrutivos; nenhuma pré-autorização necessária para varredura na AWS, o que é adequado para integração contínua; geração automática de modelos de arquivos de configuração ao detectar servidores via CIDR; notificações por e-mail e Slack com suporte ao idioma japonês; e visualização de resultados por meio de um visualizador TUI de terminal ou da interface web VulsRepo. O Vuls não atualiza pacotes vulneráveis. Documentação, instalação e guias de uso estão disponíveis em vuls.io, incluindo traduções para o japonês. O projeto é licenciado sob uma licença de código aberto e aceita contribuições.