Voltar às atualizações
New releaseJul 31, 2026

Sirius v1.1.0

Scanner de vulnerabilidades de código aberto com descoberta automatizada de rede, detecção baseada em CVE, pontuação CVSS, painéis de risco, agentes remotos via gRPC e uma interface web moderna para equipes de segurança empresarial.

Compartilhar

Sirius Scan

CI Release Registry License: MIT Discord

Painel Sirius Scan

O Sirius é um scanner de vulnerabilidades de código aberto com descoberta automatizada, detecção baseada em CVE e uma interface web moderna. Clone, execute quatro comandos e comece a escanear.

Início Rápido

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

Abra http://localhost:3000 e faça login:

E-mail[email protected]
Senhaimpressa pelo instalador (procure por INITIAL_ADMIN_PASSWORD na saída)

É isso. Todos os seis serviços são iniciados automaticamente. O instalador gera segredos seguros na primeira execução e é seguro reexecutá-lo.

Por padrão, o instalador deixa IMAGE_TAG vazio, então o Compose baixa latest do GHCR. Para fixar uma versão (por exemplo, v1.0.0 no .env), faça isso somente após essa tag existir para todas as seis imagens de contêiner; verifique com bash scripts/verify-ghcr-public-access.sh v1.0.0 em um shell que não esteja logado no ghcr.io.

Requisitos: Docker Engine 20.10+ com Compose V2, 4 GB de RAM, 10 GB de disco. Funciona no Linux, macOS e Windows (WSL2).

O que o Sirius Faz

  • Descoberta de Rede – enumeração automatizada de hosts e serviços via Nmap
  • Detecção de Vulnerabilidades – varredura baseada em CVE com pontuação CVSS
  • Painéis de Risco – progresso da varredura em tempo real, tendências de gravidade e orientação de remediação
  • Agentes Remotos – varredura distribuída em vários ambientes via gRPC
  • Terminal Interativo – console PowerShell para scripts avançados e automação
  • API REST – integração com fluxos de trabalho de segurança existentes (autenticação X-API-Key na porta 9001)

Opções de Implantação

A etapa do instalador é sempre a mesma. Apenas o comando docker compose up muda.

ModoComandoCaso de uso
Padrãodocker compose up -dMaioria dos usuários – baixa a stack completa de release do GHCR
Desenvolvimentodocker compose -f docker-compose.yaml -f docker-compose.dev.yaml up -dRecarga automática para trabalho local com código
Build a partir do códigodocker compose -f docker-compose.yaml -f docker-compose.build.yaml up -d --buildBuilds explícitos locais de toda a stack
Produçãodocker compose -f docker-compose.yaml -f docker-compose.prod.yaml up -dConfigurações reforçadas, pull_policy: always

Configuração não interativa (CI / Terraform / automação)

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

Rotacionar segredos

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

Verificar Instalação

docker compose ps                    # todos os 6 serviços devem mostrar "healthy" ou "running"
curl http://localhost:3000            # UI responde
curl http://localhost:9001/health     # API responde

Serviços esperados: sirius-ui (3000), sirius-api (9001), sirius-engine (5174, 50051), sirius-postgres (5432), sirius-rabbitmq (5672, 15672), sirius-valkey (6379).

Arquitetura

graph TD
    subgraph clients [Clients]
        UI["Sirius UI (Next.js)"]
        CLI["Terminal and Agent Runtime"]
    end

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

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

    UI -->|"HTTP/WebSocket"| API
    CLI -->|"gRPC"| Engine
    API -->|"AMQP publish"| MQ
    MQ -->|"Queue consume"| Engine
    API -->|"SQL read/write"| DB
    Engine -->|"SQL read/write"| DB
    API -->|"Session/cache ops"| Cache
    Engine -->|"Scan state cache ops"| Cache
ServiçoTecnologiaPortasPropósito
sirius-uiNext.js 14, React, Tailwind3000Interface web
sirius-apiGo, Gin9001API REST e lógica de negócios
sirius-engineGo + agente gRPC embutido5174, 50051Serviços de scanner, terminal e agente
sirius-postgresPostgreSQL 155432Dados de vulnerabilidades e varreduras
sirius-rabbitmqRabbitMQ5672, 15672Mensageria entre serviços
sirius-valkeyValkey (compatível com Redis)6379Dados de cache e sessão

Interface

PainelScannerNavegador de Vulnerabilidades
PainelScannerNavegador de Vulnerabilidades
AmbienteDetalhes do HostTerminal
AmbienteHostTerminal

API

O Sirius expõe endpoints REST na porta 9001, protegidos pela chave de API interna do serviço. Prefira o arquivo de segredo do Docker (SIRIUS_API_KEY_FILE, padrão /run/secrets/sirius_api_key); SIRIUS_API_KEY continua sendo suportado como fallback de variável de ambiente. O instalador escreve ./secrets/sirius_api_key.txt (modo 0644 para que UIDs de aplicativos não-root possam ler o segredo montado via bind) e configura ambos.

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"

Documentação completa da API: Referência da API REST

Recomendações de Segurança

Para implantações em produção:

  1. Rotacione segredos – execute o instalador com --force para regenerar todas as credenciais
  2. Restrinja portas – exponha apenas a porta 3000 (UI); mantenha 5432, 6379, 5672 internas
  3. Use um proxy reverso – coloque nginx ou Traefik na frente com TLS
  4. Mantenha as imagens atualizadas – docker compose pull && docker compose up -d

Solução de Problemas

Correções rápidas para problemas comuns:

Categorias