VULNRΞPO - Gerador de relatórios de vulnerabilidades e repositório gratuito, com criptografia de ponta a ponta! Modelos de issues, CWE, CVE, MITRE ATT&CK, PCI DSS, importação de Nmap/Nessus/Burp/OpenVAS/Bugcrowd/Trivy, exportação para Jira, TXT/JSON/MARKDOWN/HTML/DOCX, anexos, changelog automático, estatísticas, gerenciamento de vulnerabilidades, bug bounty, IA/LLM local, relatórios de pentest super rápidos!

Um gerenciador de relatórios de vulnerabilidades do lado do cliente, priorizando a privacidade, para profissionais de segurança. Todos os dados são criptografados e armazenados localmente no seu navegador — nada é enviado a nenhum servidor por padrão.
App ao vivo: https://vulnrepo.com/ | Branch dev: https://dev.vulnrepo.com/
Vídeo de demonstração / Tutorial:
O VULNRΞPO utiliza criptografia nativa do navegador exclusivamente:
| Propriedade | Valor |
|---|---|
| Derivação de chave | PBKDF2-SHA-256, 600.000 iterações |
| Criptografia | AES-256-GCM (criptografia autenticada) |
| Salt | 16 bytes, aleatório por criptografia |
| IV | 12 bytes, aleatório por criptografia |
| Armazenamento de dados criptografados | IndexedDB do navegador (apenas máquina local por padrão) |
| Armazenamento da chave de descriptografia | Apenas na memória — nunca gravada em sessionStorage, localStorage ou qualquer meio persistente |
| Rede | Nenhum dado sai do navegador, a menos que você configure o backend de API opcional |
As senhas de descriptografia são mantidas em um cofre de memória de curta duração (KeyVaultService) que é limpo automaticamente quando ocorre qualquer um dos seguintes eventos:
visibilitychange)pagehide e beforeunloadApós a limpeza do cofre, reabrir um relatório solicita novamente a senha. Nenhum material de chave é gravado em sessionStorage, localStorage, cookies ou qualquer outro armazenamento persistente do navegador.
Relatórios criptografados com versões mais antigas do app (formato legado CryptoJS AES) são detectados automaticamente e descriptografados para compatibilidade reversa.
Importante: Não há recuperação de chave no servidor. Se você perder sua chave de segurança, os dados do relatório não poderão ser recuperados.
| Ferramenta | Formato |
|---|---|
| VULNRΞPO Criptografado | .VULNR |
| VULNRΞPO Issues Descriptografadas | .JSON |
| Burp Suite | .XML |
| Bugcrowd | .CSV |
| Nmap | .XML |
| OpenVAS 9 | .XML |
| Tenable Nessus | .NESSUS, .CSV |
| Trivy | .JSON |
| Atlassian Jira | .XML |
| NPM Audit | .JSON |
| Semgrep | .JSON |
| PHP Composer Audit | .JSON |
| WIZ Issues | .CSV |
| OWASP ZAP | .JSON |
| BlackDuck Code Sight | .JSON |
| Formato | Observações |
|---|---|
| HTML | Totalmente autocontido; modelo e CSS personalizáveis |
| HTML Criptografado | HTML autocontido e criptografado com AES; compartilhe com segurança por e-mail ou transferência de arquivos |
| DOCX | Compatível com Microsoft Word |
| TXT | Texto simples |
| Use a impressão do navegador para PDF (Ctrl+P) na exportação HTML; ou use o gerador LaTeX para personalização completa |
As seguintes checklists interativas estão disponíveis na barra lateral:
Use-as durante uma avaliação para garantir que nada seja esquecido antes de finalizar o relatório.
O VULNRΞPO integra-se ao Ollama para fornecer escrita assistida por IA de relatórios usando um modelo hospedado localmente. Nenhum dado é enviado para nenhum serviço em nuvem.
Configuração:
ollama run llama3.2:latest
OLLAMA_ORIGINS=https://vulnrepo.com ollama serve
http://localhost:11434 por padrão), selecione um modelo e salve.npm install -g @angular/cli
# Instalar dependências
npm install
# Iniciar o servidor de desenvolvimento
npm start
# ou
ng serve
Navegue para http://localhost:4200/. A aplicação recarrega automaticamente quando os arquivos de origem mudam.
ng build -c production
Os artefatos de build são gravados em dist/vulnrepo-app/. Implante o conteúdo desse diretório em qualquer host web estático ou CDN.
A imagem Docker oficial está disponível no Docker Hub:
docker pull kac89/vulnrepo
docker run -p 8080:80 kac89/vulnrepo
Veja a página da imagem para documentação completa: https://hub.docker.com/r/kac89/vulnrepo
vulnrepo-master/
├── src/
│ ├── app/
│ │ ├── report/ # Componente principal do editor de relatórios
│ │ ├── myreports/ # Lista/dashboard de relatórios
│ │ ├── newreport/ # Assistente de criação de relatório
│ │ ├── import-report/ # Importar arquivo de relatório criptografado
│ │ ├── templates-list/ # Gerenciador de modelos de issues
│ │ ├── settings/ # Configurações do app (perfis, cofre de API)
│ │ ├── asvs/ # Checklist OWASP ASVS 4
│ │ ├── pcidss4/ # Checklist PCI DSS 4
│ │ ├── tbhm/ # Checklist Metodologia do Caçador de Bugs
│ │ ├── cve-search/ # Consulta CVE do NVD
│ │ ├── bb-list/ # Lista de programas de bug bounty
│ │ ├── faq/ # Página de FAQ no app
│ │ ├── crypto-utils.service.ts # Serviço de criptografia PBKDF2 + AES-GCM
│ │ ├── indexeddb.service.ts # Serviço de armazenamento local (IndexedDB)
│ │ ├── api.service.ts # Serviço de backend de API opcional
│ │ ├── ollama-service.service.ts # Serviço de integração com LLM Ollama
│ │ └── dialog-*/ # Diálogos modais (adicionar issue, importar, exportar, …)
│ ├── assets/ # Recursos estáticos, logotipos de fornecedores
│ └── environments/ # Configurações de ambiente
├── dist/ # Saída do build de produção
├── API-INTEGRATION.md # Referência da API do backend
├── SECURITY.md # Política de relato de vulnerabilidades
├── angular.json
└── package.json
O VULNRΞPO pode opcionalmente armazenar relatórios criptografados no seu próprio servidor backend. A API é uma interface HTTP simples com um esquema de autenticação baseado em cabeçalho personalizado.
Veja API-INTEGRATION.md para a referência completa da API.
Uma implementação de servidor de exemplo está disponível em: https://github.com/kac89/vulnrepo-server
O VULNRΞPO requer um navegador moderno com suporte a IndexedDB e Web Crypto API. Ele não funciona no modo de navegação privada/incógnito (o IndexedDB é bloqueado pela maioria dos navegadores nesse modo).
Testado e suportado:
dev.ng build).dev.Para relatar uma vulnerabilidade de segurança, veja SECURITY.md.
O VULNRΞPO é distribuído sob a Licença Apache 2.0.