Torna agli aggiornamenti
New releaseJul 31, 2026

Sirius v1.1.0

Scanner di vulnerabilità open-source con rilevamento automatico della rete, rilevamento basato su CVE, punteggio CVSS, dashboard di rischio, agenti remoti tramite gRPC e una moderna interfaccia web per team di sicurezza aziendale.

Condividi

Sirius Scan

CI Release Registry License: MIT Discord

Sirius Scan Dashboard

Sirius è uno scanner di vulnerabilità open-source con rilevamento automatico, individuazione basata su CVE e una moderna interfaccia web. Clona, esegui quattro comandi, inizia la scansione.

Avvio Rapido

git clone https://github.com/SiriusScan/Sirius.git
cd Sirius
docker compose -f docker-compose.installer.yaml run --rm sirius-installer
docker compose up -d

Apri http://localhost:3000 e accedi:

Email[email protected]
Passwordstampato dall'installer (cerca INITIAL_ADMIN_PASSWORD nell'output)

Questo è tutto. Tutti e sei i servizi si avviano automaticamente. L'installer genera segreti sicuri al primo avvio ed è sicuro da rieseguire.

Per impostazione predefinita, l'installer lascia IMAGE_TAG non impostato, quindi Compose scarica latest da GHCR. Per fissare una release (ad esempio v1.0.0 in .env), fallo solo dopo che quel tag esiste per tutte e sei le immagini dei container; verifica con bash scripts/verify-ghcr-public-access.sh v1.0.0 da una shell che non sia autenticata su ghcr.io.

Requisiti: Docker Engine 20.10+ con Compose V2, 4 GB di RAM, 10 GB di disco. Funziona su Linux, macOS e Windows (WSL2).

Cosa fa Sirius

  • Scoperta di Rete -- enumerazione automatica di host e servizi tramite Nmap
  • Rilevamento delle Vulnerabilità -- scansione basata su CVE con punteggio CVSS
  • Dashboard di Rischio -- progresso della scansione in tempo reale, tendenze di gravità e guida alla correzione
  • Agenti Remoti -- scansione distribuita su più ambienti tramite gRPC
  • Terminale Interattivo -- console PowerShell per scripting e automazione avanzati
  • API REST -- integrazione con flussi di lavoro di sicurezza esistenti (autenticazione tramite X-API-Key sulla porta 9001)

Opzioni di Distribuzione

Il passo dell'installer è sempre lo stesso. Cambia solo il comando docker compose up.

ModalitàComandoCaso d'uso
Standarddocker compose up -dMaggior parte degli utenti -- scarica l'intero stack di release da GHCR
Sviluppodocker compose -f docker-compose.yaml -f docker-compose.dev.yaml up -dRicarica live per lavoro su codice locale
Build da Sorgentedocker compose -f docker-compose.yaml -f docker-compose.build.yaml up -d --buildBuild esplicite complete locali
Produzionedocker compose -f docker-compose.yaml -f docker-compose.prod.yaml up -dImpostazioni rafforzate, pull_policy: always

Configurazione non interattiva (CI / Terraform / automazione)

docker compose -f docker-compose.installer.yaml run --rm sirius-installer --non-interactive --no-print-secrets
docker compose up -d

Ruota i segreti

docker compose -f docker-compose.installer.yaml run --rm sirius-installer --force
docker compose up -d --force-recreate

Verifica dell'Installazione

docker compose ps                    # tutti e 6 i servizi dovrebbero mostrare "healthy" o "running"
curl http://localhost:3000            # L'interfaccia risponde
curl http://localhost:9001/health     # L'API risponde

Servizi previsti: sirius-ui (3000), sirius-api (9001), sirius-engine (5174, 50051), sirius-postgres (5432), sirius-rabbitmq (5672, 15672), sirius-valkey (6379).

Architettura

graph TD
    subgraph clients [Clienti]
        UI["Sirius UI (Next.js)"]
        CLI["Runtime Terminale e Agente"]
    end

    subgraph core [Servizi Core]
        API["Sirius API (Go/Gin)"]
        Engine["Sirius Engine"]
    end

    subgraph infra [Infrastruttura]
        MQ["RabbitMQ"]
        DB["PostgreSQL"]
        Cache["Valkey"]
    end

    UI -->|"HTTP/WebSocket"| API
    CLI -->|"gRPC"| Engine
    API -->|"Pubblicazione AMQP"| MQ
    MQ -->|"Consumo coda"| Engine
    API -->|"Lettura/scrittura SQL"| DB
    Engine -->|"Lettura/scrittura SQL"| DB
    API -->|"Operazioni sessione/cache"| Cache
    Engine -->|"Operazioni cache stato scansione"| Cache
ServizioTecnologiaPorteScopo
sirius-uiNext.js 14, React, Tailwind3000Interfaccia web
sirius-apiGo, Gin9001API REST e logica di business
sirius-engineGo + agente gRPC incorporato5174, 50051Scanner, terminale, servizi agente
sirius-postgresPostgreSQL 155432Dati di vulnerabilità e scansione
sirius-rabbitmqRabbitMQ5672, 15672Messaggistica tra servizi
sirius-valkeyValkey (compatibile Redis)6379Cache e dati di sessione

Interfaccia

DashboardScannerNavigatore di Vulnerabilità
DashboardScannerNavigatore Vulnerabilità
AmbienteDettagli HostTerminale
AmbienteHostTerminale

API

Sirius espone endpoint REST sulla porta 9001, protetti dalla chiave API del servizio interno. Preferisci il file segreto di Docker (SIRIUS_API_KEY_FILE, predefinito /run/secrets/sirius_api_key); SIRIUS_API_KEY rimane un fallback di ambiente supportato. L'installer scrive ./secrets/sirius_api_key.txt (modalità 0644 in modo che gli UID delle app non-root possano leggere il segreto montato) e configura entrambi.

curl http://localhost:9001/health -H "X-API-Key: $SIRIUS_API_KEY"
curl http://localhost:9001/api/v1/scan/get/all -H "X-API-Key: $SIRIUS_API_KEY"

Documentazione API completa: Riferimento API REST

Raccomandazioni di Sicurezza

Per deployment in produzione:

  1. Ruota i segreti -- esegui l'installer con --force per rigenerare tutte le credenziali
  2. Limita le porte -- espone solo la porta 3000 (UI); tieni 5432, 6379, 5672 interne
  3. Usa un proxy inverso -- metti nginx o Traefik davanti con TLS
  4. Mantieni le immagini aggiornate -- docker compose pull && docker compose up -d

Risoluzione dei Problemi

Soluzioni rapide per problemi comuni:

Categorie