Sign inSign up

azurejoga/bnvd

By azurejoga

Updated 8 months ago

Imagem para fim de desenvolvimento do banco nacional de vulnerabilidades cibernéticas, - bnvd.org

Image
Security
1

255

azurejoga/bnvd repository overview

BNVD – Banco Nacional de Vulnerabilidades Cibernéticas 🇧🇷

O BNVD é uma plataforma open source focada na coleta, correlação e disponibilização de informações sobre vulnerabilidades cibernéticas, integrando múltiplas fontes oficiais e especializadas como NVD, MITRE ATT&CK e feeds de notícias de segurança.

Esta imagem Docker fornece um ambiente completo para desenvolvimento, testes e integração.


✨ Principais Recursos

  • API REST em Flask
  • Atualização automática de notícias de segurança
  • Integração nativa com PostgreSQL
  • Processamento e tradução MITRE ATT&CK
  • CLI oficial (bnvd-cli)
  • Scheduler interno para tarefas periódicas
  • Imagem preparada com Poetry

📦 Imagem Docker

Repositório oficial no Docker Hub:


azurejoga/bnvd

Tags disponíveis:

  • dev – ambiente de desenvolvimento

🚀 Uso Rapido

Pull da imagem
docker pull azurejoga/bnvd:dev
Executar container
docker run -d --name bnvd-app-test -p 4448:4448 azurejoga/bnvd:dev

Acesse a API:

http://localhost:4448/api/v1/ ou, localhost:4448 para a aplicação principal.

🐘 Banco de Dados (PostgreSQL)

O BNVD requer PostgreSQL.

Exemplo de string de conexão:

postgresql://usuario:senha@postgres:5432/bnvd

Em ambientes Docker Compose, utilize o nome do serviço como host.


⚙️ Variaveis de Ambiente

VariávelDescrição
DATABASE_URLString de conexão PostgreSQL
NVD_API_KEYChave da API oficial do NVD
SESSION_SECRETChave secreta do Flask
FLASK_ENVdevelopment ou production

🧩 CLI (bnvd-cli)

A CLI oficial já vem instalada na imagem.

bnvd-cli --help

Pode ser usada tanto dentro do container quanto via docker exec.


🔧 Docker Compose (Exemplo)

services:
  bnvd-app:
    image: azurejoga/bnvd:dev
    ports:
      - "4448:4448"
    env_file:
      - .env
    depends_on:
      - postgres

  postgres:
    image: postgres:15-alpine
    environment:
      POSTGRES_DB: bnvd
      POSTGRES_USER: bnvd
      POSTGRES_PASSWORD: bnvd_secret
    volumes:
      - postgres_data:/var/lib/postgresql/data

volumes:
  postgres_data:

🧠 Arquitetura Interna

  • Flask + Gunicorn
  • APScheduler para tarefas recorrentes
  • Requests + BeautifulSoup para ingestão de notícias
  • Cache local para dados MITRE
  • Banco PostgreSQL como fonte central

📄 Codigo-Fonte

Repositório oficial no GitHub:

https://github.com/azurejoga/bnvd

Clientes / Wrappers disponíveis em múltiplas linguagens.


🤝 Contribuicao

Contribuições são bem-vindas. Abra issues, envie pull requests ou sugestões no GitHub.


📜 Licenca

Este projeto é distribuído sob a Licença MIT.

Consulte o arquivo LICENSE no repositório para mais detalhes.

Tag summary

Content type

Image

Digest

sha256:e663f7ea0

Size

298.9 MB

Last updated

8 months ago

docker pull azurejoga/bnvd:dev