BLACKSHIELD

Guida pubblica

Ingerisci i primi risultati

Esegui la tua prima scansione, invia i risultati e conferma la qualità dei dati prima di espanderli a ulteriori integrazioni. Pubblico: Ingegneri di sicurezza, proprietari di CI e ingegneri dell'integrazione. Tempo medio di configurazione: 10-15 minuti.

Prima di iniziare

  • Crea una chiave API di acquisizione in /api-keys e salva la chiave non elaborata (mostrata una volta).
  • Utilizza l'immagine dello scanner secplatform/pipeline-scanner:latest (o il tuo alias public.ecr.aws con mirroring).
  • Imposta SECPLATFORM_API_URL sull'endpoint backend (locale: http://localhost:8000).

Passo dopo passo

Passo 1

Scegli l'immagine dello scanner e il primo target

Utilizza un target deterministico e un'immagine scanner nota in modo che i risultati siano facili da convalidare.

  • Utilizza `secplatform/pipeline-scanner:latest` (o l'alias ECR pubblico con mirroring) per primo esegui.
  • Scegliere un obiettivo noto come ad esempio `python:3.11-slim` per primi risultati prevedibili.
  • Esegui Trivy o Semgrep in modalità JSON supportata dal client dello scanner.
  • Mantieni metadati di rami, commit o artefatti per la risoluzione dei problemi.

Passo 2

Crea e utilizza un'API di acquisizione key

Crea una chiave dell'area di lavoro in Chiavi API e utilizzala solo per l'acquisizione dello scanner.

  • Apri `/api-keys`, crea una chiave e salva immediatamente il valore non elaborato `sp_...`.
  • Imposta `SECPLATFORM_API_URL` e `SECPLATFORM_API_KEY` tramite variabili di ambiente.
  • Esegui il punto di ingresso del client dello scanner corrispondente o il comando del contenitore.
  • Acquisisci i log di risposta come prova dei payload accettati.

Passo 3

Convalida qualità e deduplicazione

Essicurati che i risultati siano completi, la gravità sia mappata correttamente e i caricamenti ripetuti non si duplicano problemi.

  • Apri risultati e filtra per scanner e risorsa.
  • Verificare che i campi `first_seen` e `last_seen` siano popolati.
  • Riinvia lo stesso payload una volta e verifica il comportamento di deduplicazione.

Esegui

Crea una chiave API di acquisizione tramite API

bash
TOKEN=$(curl -s -X POST "http://localhost:8000/api/v1/auth/login?email=admin@acme.com&password=changeme123" | python3 -c "import sys, json; print(json.load(sys.stdin)['access_token'])")

curl -s -X POST http://localhost:8000/api/v1/api-keys \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"label":"Pipeline Scanner","expires_in_days":90}'

Esegui la prima scansione e acquisizione della pipeline risultati

bash
docker run --rm \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -e SECPLATFORM_API_URL=http://localhost:8000 \
  -e SECPLATFORM_API_KEY=sp_your_key_here \
  -e SCAN_TOOL=trivy \
  -e SCAN_TARGET=python:3.11-slim \
  secplatform/pipeline-scanner:latest

Controlli di esito

  • Lo stato del processo di acquisizione viene completato con creato > 0 o aggiornato > 0.
  • I nuovi risultati vengono visualizzati in /findings con gravità, scanner di origine e timestamp.
Ingerisci i primi risultati | BlackShield Docs