Low Severity
Published: Oct 31, 2026

[GitHub] -Biblioteca-de-CVEs

Other
Type
N/A
CVSS Score
6
Views
Anonymous
Author

Description

Um sistema onde o time de desenvolvimento faz login e consulta uma biblioteca de CVEs (vulnerabilidades conhecidas), filtrando por tecnologia, severidade e ano, e registrando como mitigou cada uma no próprio código. As CVEs iniciais vêm do seu Telegram, importadas automaticamente.

# 🛡️ Biblioteca de CVEs

Sistema web para o time de desenvolvimento consultar vulnerabilidades conhecidas (CVEs) enquanto programa. Cada CVE tem CVSS, severidade, tecnologias afetadas, links de **exploits públicos** e **notas de mitigação** escritas pelo próprio time ("atualizamos para a versão X", "rodem tal comando no build"). As CVEs podem ser importadas direto do Telegram (por exemplo, do canal CVE Monitor, t.me/cvedetector).

Trabalho prático de Banco de Dados (CRUD com PostgreSQL), com um extra de segurança: um **honeypot** que detecta quem tenta descobrir como o time mitigou falhas para contorná-las.

## Funcionalidades

| Requisito do trabalho | Onde está |
|---|---|
| Login de usuário | Tela inicial. Senha guardada com bcrypt (`pgcrypto`), conferida no próprio SQL. Perfis `admin` e `dev`. |
| CRUD | CVEs (cadastrar, consultar, editar, excluir), notas de mitigação, usuários e iscas do honeypot. |
| Tabelas relacionadas (FK) | 10 tabelas, incluindo relação N:N entre `cves` e `tecnologias`. Ver diagrama abaixo. |
| Filtros com SQL | Busca por texto (`ILIKE`), severidade, faixa de CVSS, ano, tecnologia, origem e "só com exploit público", todos combináveis. |
| Comandos SQL | Pasta [`sql/`](sql/): `01_schema.sql`, `02_seed.sql`, `03_consultas.sql`. O código usa SQL puro, sem ORM. |
| Interface gráfica (bônus) | Streamlit. |

O que cada perfil vê:

- **dev**: Biblioteca (com filtros), detalhe da CVE, notas de mitigação (pode criar e editar as próprias), Relatórios.
- **admin**: tudo do dev, mais Cadastrar CVE, editar/excluir CVE, Importar Telegram, Honeypot e Usuários.

## Tecnologias

- Python 3.11+
- Streamlit (interface)
- PostgreSQL 16 + extensão `pgcrypto`
- psycopg 3 (driver, SQL escrito à mão)
- pandas (tabelas na tela)
- Docker Compose (opcional, para subir o banco)

## Modelo de dados

```
usuarios ──< cves >──< cve_tecnologias >── tecnologias
│ │
│ ├──< notas
│ └──< referencias (exploits/PoCs públicos)
│

Community Rating
0

Login to rate this exploit

Quick Actions