Salta ai contenuti

Kubescape

Kubescape è una piattaforma open-source di gestione della postura di sicurezza Kubernetes di ARMO (progetto in incubazione CNCF). Fornisce analisi dei rischi, scansione della conformità, rilevamento delle errate configurazioni e scansione delle vulnerabilità nell’IDE, pipeline CI/CD e cluster in esecuzione.

ComandoDescrizione
curl -s https://raw.githubusercontent.com/kubescape/kubescape/master/install.sh | bashInstalla l’ultima versione (macOS/Linux)
brew install kubescapeInstalla tramite Homebrew (macOS)
scoop install kubescapeInstalla tramite Scoop (Windows)
docker run -it kubescape/kubescape:latest kubescape --helpEsegui Kubescape in Docker
kubescape versionVisualizza versione installata
kubescape downloadScarica framework e politiche
kubescape download --frameworksScarica tutti i framework
ComandoDescrizione
kubescape scanScansiona cluster corrente usando kubeconfig
kubescape scan --kubeconfig /path/to/kubeconfigScansiona cluster con kubeconfig specifico
kubescape scan -f manifest.yamlScansiona file manifesto YAML
kubescape scan -f *.yamlScansiona più file manifesto
kubescape scan -d ./k8s-configs/Scansiona tutti i manifesti nella directory
kubescape scan --helm /path/to/chartScansiona Helm chart prima del deployment
kubescape scan --include-namespaces default,kube-systemScansiona solo namespace specifici
kubescape scan --exclude-namespaces kube-node-leaseEscludi namespace dalla scansione
kubescape scan --severity high,criticalMostra solo problemi ad alta/critica gravità
kubescape scan --pod-runtime containerdSpecifica runtime contenitore (docker, containerd, cri-o)
ComandoDescrizione
kubescape scan framework nsaScansiona contro guida hardening Kubernetes NSA-CISA
kubescape scan framework cisScansiona contro CIS Kubernetes Benchmark
kubescape scan framework mitreScansiona contro framework MITRE ATT&CK
kubescape scan framework pci-dssScansiona contro conformità PCI-DSS
kubescape scan framework soc2Scansiona contro conformità SOC2
kubescape scan framework hipaaScansiona contro conformità HIPAA
kubescape scan -f manifest.yaml -f nsa,cis,mitreScansiona manifesto contro più framework
kubescape scan --list-frameworksElenca tutti i framework disponibili
ComandoDescrizione
kubescape scan image gcr.io/project/image:tagScansiona immagine contenitore per vulnerabilità
kubescape scan image --image-scan-concurrency 5 image1 image2Scansiona più immagini contemporaneamente
kubescape scan -f manifest.yaml --include-image-scanningScansiona manifesti e tutte le immagini referenziate
kubescape scan image --severity critical --only-vulnerabilitiesMostra solo vulnerabilità critiche
kubescape scan image --image-registry-credentials user:pass@registry:5000Scansiona immagini registry privati
kubescape scan -f manifest.yaml --image-scan-cacheCache scansioni immagine per esecuzioni ripetute
ComandoDescrizione
kubescape scan -o json > report.jsonRisultati output come JSON
kubescape scan -o pdf > report.pdfGenera rapporto PDF
kubescape scan -o html > report.htmlGenera rapporto HTML
kubescape scan -o sarif > report.sarifOutput in formato SARIF (per strumenti CI/CD)
kubescape scan -o pretty-jsonOutput JSON formattato
kubescape scan --output-file report.json -o jsonSalva output in file
kubescape scan -o json | jq '.results[] | select(.severity=="critical")'Filtra risultati JSON con jq
ComandoDescrizione
kubescape scan --fail-threshold 80Fallimento pipeline se punteggio rischio sotto 80
kubescape scan --fail-threshold 70 --severity criticalGate pipeline su risultati critici
kubescape scan -f manifest.yaml --fail-threshold 85 -o sarifGenera SARIF + gate in GitHub Actions
kubescape scan --fail-on-compliance-failureFallimento se framework conformità non passano
kubescape scan -o json --format-by-severityOutput raggruppato per livello gravità
- name: Run Kubescape security scan
  uses: kubescape/github-action@v2
  with:
    kubeconfig: ${{ secrets.KUBECONFIG }}
    frameworks: nsa,cis
    fail-threshold: 80
    output-format: sarif
    output-file: kubescape-report.sarif

- name: Upload SARIF to GitHub Security
  uses: github/codeql-action/upload-sarif@v2
  with:
    sarif_file: kubescape-report.sarif
kubescape_scan:
  stage: security
  image: kubescape/kubescape:latest
  script:
    - kubescape scan framework nsa --fail-threshold 80 -o sarif > report.sarif
    - kubescape scan framework cis --fail-threshold 75 -o json > cis-report.json
  artifacts:
    reports:
      sast: report.sarif
    paths:
      - cis-report.json
stage('Security: Kubescape') {
    steps {
        sh '''
            kubescape scan -f k8s-manifests/ \
              --fail-threshold 80 \
              -o sarif > kubescape-report.sarif \
              -o json > kubescape-report.json
        '''
        archiveArtifacts artifacts: '*-report.*'
    }
}
ComandoDescrizione
kubescape download --output-dir ./offline-dataScarica tutti i framework nella directory locale
kubescape download --frameworks nsa,cis --output-dir ./fwScarica framework specifici offline
kubescape scan -f manifest.yaml --offline --frameworks-dir ./offline-dataScansiona usando framework scaricati
kubescape scan -d manifests/ --offline --frameworks-dir ./offline-dataScansione directory offline
ComandoDescrizione
kubescape configMostra configurazione corrente
kubescape config set <key> <value>Imposta valore configurazione
kubescape config get <key>Ottieni valore configurazione
kubescape config -p ~/.kubescape/configUsa percorso file config personalizzato
kubescape scan -c ./custom-config.yamlScansiona con configurazione personalizzata
ComandoDescrizione
kubescape operator installInstalla operatore Kubescape nel cluster
kubescape operator install --namespace kubescapeInstalla operatore in namespace specifico
kubescape operator uninstallRimuovi operatore Kubescape
kubectl get deployment -n kubescapeVerifica installazione operatore
kubectl logs -n kubescape -l app=kubescape-operatorVisualizza log operatore
kubescape operator statusControlla stato operatore
ComandoDescrizione
kubescape scan --exceptions exceptions.jsonApplica regole di eccezione alla scansione
kubescape scan --enable-controls <control-id>Abilita control specifici
kubescape scan --disable-controls <control-id>Disabilita control specifici
kubescape scan --controls <id1>,<id2>Esegui solo control specificati
kubescape scan --list-controlsElenca tutti i control disponibili
kubescape scan --list-controls --framework nsaElenca control framework NSA
{
  "exceptions": [
    {
      "ruleID": "C-0001",
      "namespace": "test-namespace",
      "resources": ["deployment/test-app"],
      "justification": "Development environment exemption"
    }
  ]
}
ComandoDescrizione
kubescape scan --verboseMostra output debug dettagliato
kubescape scan --log-level debugImposta livello logging (debug, info, warn, error)
kubescape scan --submitInvia risultati scansione a Kubescape Cloud
kubescape scan --account <account-id>Invia a account cloud specifico
kubescape scan --keep-localScansiona senza inviare a cloud
kubescape scan --max-workers 10Controlla worker elaborazione parallela
kubescape scan --timeout 300Imposta timeout in secondi
PraticaDescrizione
Version Control ManifestsSempre versionare manifest Kubernetes; scansionare prima del deployment
Gate on Risk ScoreImposta --fail-threshold in CI/CD; usa 75-85 a seconda tolleranza rischio org
Multi-Framework ScanningUsa NSA + CIS + MITRE; affronta prima risultati priorità massima
Regular Image ScanningScansiona immagini contenitore nella supply chain; cattura CVE presto
Namespace IsolationUsa --include-namespaces per focalizzare scansioni; escludi namespace sistema
Offline in Secure EnvsScarica framework offline per cluster air-gapped
Monitor Over TimeTraccia punteggi rischio tra scansioni; investigare regressioni
Exception JustificationDocumenta eccezioni; rivedi periodicamente per rimozione
Helm Pre-DeploymentEsegui kubescape scan --helm su chart prima di Helm install
Enable RBACVerifica ServiceAccount ha permessi minimi richiesti
Use SARIF OutputIntegra rapporti SARIF in IDE, GitHub e sistemi SIEM
Review Control DetailsUsa kubescape scan --list-controls per capire scopo di ogni control