Indispensabili per il funzionamento del sito (login, preferenze, sicurezza). Sempre attivi.
Checkov: intercettare il codice infrastrutturale malconfigurato prima del merge
Checkov è uno scanner open source policy-as-code che segnala le configurazioni errate di Terraform, Kubernetes e CloudFormation prima che raggiungano il cloud, in una corsia distinta dalla scansione CVE.
Checkov, mantenuto da Bridgecrew nel progetto GitHub bridgecrewio/checkov, è uno strumento di analisi statica open source che scansiona l'infrastruttura come codice — Terraform, piani Terraform, manifesti Kubernetes, CloudFormation, chart Helm, Bicep e diversi altri formati — alla ricerca di errori di configurazione di sicurezza e conformità prima che quell'infrastruttura venga effettivamente istanziata.

Dove si inserisce nella pipeline di un MSP
La collocazione naturale di Checkov è nella CI delle pull request: eseguilo su un piano Terraform o su un manifesto Kubernetes come parte del controllo di merge e tratta un errore di policy come un blocco del merge piuttosto che come un avviso da correggere in seguito. I suoi controlli sono basati su grafo, il che significa che possono verificare le relazioni tra le risorse — per esempio, che un'istanza EC2 sia effettivamente collegata a un'interfaccia di rete all'interno di una subnet con ambito VPC — invece di ispezionare solo gli attributi di una singola risorsa in modo isolato. Esegue inoltre un rilevamento di base dei segreti, riconoscendo i formati di credenziali noti come le chiavi di accesso AWS e segnalando le stringhe ad alta entropia che sembrano segreti casuali.
Una corsia diversa dalla scansione dei container
Vale la pena essere precisi su ciò che Checkov non è: non esegue la scansione delle immagini dei container o delle dipendenze dei pacchetti open source alla ricerca di CVE note — questo è il compito di strumenti come Grype o OSV-Scanner, che la maggior parte degli MSP probabilmente esegue già da qualche parte nella propria pipeline. La corsia di Checkov è la postura di configurazione nel codice dell'infrastruttura stesso, prima che esista qualsiasi risorsa cloud da scansionare. Eseguire entrambi è complementare, non ridondante.
La CLI è gratuita sotto licenza Apache 2.0, senza limiti di scansione o vincoli di telemetria sui risultati, ed è distribuita con integrazioni ufficiali per GitHub Actions, GitLab e gli IDE JetBrains, quindi aggiungerla a una pipeline esistente è in gran parte una questione di collegare l'azione piuttosto che creare nuova infrastruttura. Per gli MSP che gestiscono IaC per conto dei clienti, un gate Checkov fail-closed nella CI è un modo economico per individuare un bucket S3 pubblico o un gruppo di sicurezza eccessivamente permissivo prima che venga mai applicato.
Fonti: GitHub — bridgecrewio/checkov.