Che cos'è la scansione IaC?

L'analisi IaC (Infrastructure as Code) è il processo di analisi degli script che eseguono automaticamente il provisioning e la configurazione dell'infrastruttura. A differenza della scansione del codice tradizionale, che si concentra sul codice dell'applicazione, la scansione IaC è destinata alla sintassi e alle strutture specifiche utilizzate nella dichiarazione degli ambienti cloud. È diventato uno strumento cruciale per mantenere operazioni cloud sicure ed efficienti.

La scansione IaC identifica preventivamente Configurazioni errate e problemi di conformità prima che possano essere distribuiti. Nell'ambito dell'integrazione continua e della distribuzione continua (CI/CD), le scansioni IaC fungono da punto di controllo vitale, garantendo che le implementazioni dell'infrastruttura siano Sicuro per progettazione e anche facilitando iterazioni rapide e sicure delle modifiche all'infrastruttura.

In questo articolo,'A questo punto, l'utente deve affrontare le complessità della scansione di sicurezza IaC, esaminando più da vicino il suo significato e il processo di scansione. Esamineremo anche i concetti fondamentali, esploreremo gli strumenti di scansione IaC open source e forniremo approfondimenti su come questi strumenti possono rafforzare la tua infrastruttura'A questo punto, l'utente deve essere in grado di gestire

Get the IaC Security Best Practices [Cheat Sheet]

Scan early, fix at the source. Get the IaC Best Practices Cheat Sheet and discover how to embed scanning, remediation, feedback loops, and drift prevention into your infrastructure workflow.

Concetti chiave della scansione IaC

Lasciare'Iniziamo esaminando due elementi fondamentali che rendono la scansione del codice IaC uno strumento indispensabile per la moderna gestione dell'infrastruttura:

  • Politica come codice: Politica come codice (PaC) Consente ai team di dichiarare e gestire in modo esplicito la propria infrastruttura'Le politiche operative e di sicurezza all'interno delle basi di codice. Nella scansione IaC, PaC viene utilizzato per convalidare e applicare automaticamente la conformità a questi criteri, garantendo che l'infrastruttura di cui è stato effettuato il provisioning sia allineata agli standard organizzativi e normativi.

  • Postura di sicurezza e conformità: La scansione IaC ha un impatto diretto su un'organizzazione's sicurezza e conformità rilevando e correggendo sistematicamente potenziali minacce alla sicurezza e infrazioni di conformità all'interno degli script IaC. In breve, questa misura proattiva protegge l'infrastruttura e incorpora la conformità nelle fondamenta dell'infrastruttura'A questo punto, l'utente deve essere in

La sezione seguente esplorerà il processo di scansione IaC e dimostrerà come si inserisce nel ciclo di vita dello sviluppo.

Catch code risks before you deploy

Learn how Wiz Code scans IaC, containers, and pipelines to stop misconfigurations and vulnerabilities before they hit your cloud.

Per informazioni su come Wiz gestisce i tuoi dati personali, consulta il nostro Informativa sulla privacy.

Il processo di scansione IaC

La scansione IaC prevede sei fasi sistematiche, ognuna delle quali è parte integrante della protezione e dell'ottimizzazione dell'infrastruttura cloud:

StepDescription
Step 1: InitializationSelecting the appropriate policies to scan against is critical, as it sets the standard for security and compliance from the start. The goal is to ensure that the systems adhere to the necessary regulations and best practices, providing a foundation for robust security posture.
Step 2: IntegrationIntegrating IaC scanning into version control systems and CI/CD pipelines ensures that scans are an automated part of the build process, providing continuous oversight and timely detection of potential issues.
Step 3: ExecutionDuring execution, scanning tools assess the IaC against predefined rules, identifying potential security misconfigurations or compliance issues that could jeopardize the infrastructure's integrity.
Step 4: ReviewPost-scan, it is imperative to review the results closely to understand the context of each finding and prioritize issues based on their severity in order to address vulnerabilities promptly.
Step 5: RemediationRemediation involves taking actionable steps to address identified vulnerabilities, including modifying IaC scripts or incorporating modular, verified code snippets to fortify your infrastructure's security.
Step 6: Feedback loopEstablishing a feedback loop empowers developers to refine IaC scanning policies and processes. This iterative process allows continuous improvement based on historical scans and emerging threats, fostering a culture of security and vigilance.

Strumenti e soluzioni di scansione IaC open source

La scelta di uno strumento di scansione IaC open source dipende dall'infrastruttura specifica dell'organizzazione. Questa sezione si concentra su diversi strumenti di scansione IaC open source leader del settore, fornendo le informazioni necessarie per fare la scelta giusta per la tua azienda.

Terrascan (Scansione Terra)

Terrascan (Scansione Terra) è uno strumento di scansione IaC completo in grado di identificare preventivamente i problemi di sicurezza nei modelli Terraform. Ciò che lo distingue è la sua vasta libreria di policy, che si allinea con i benchmark CIS, rendendolo uno strumento formidabile per garantire la conformità.

Il processo di installazione è semplice e Terrascan viene spesso utilizzato in pipeline automatizzate per rilevare casi di violazioni delle norme. I risultati della scansione sono facili da capire e descrivono in dettaglio violazioni come l'accesso eccessivamente permissivo al bucket S3 con elevata gravità:

$ Scansione Terrascan
Per impostazione predefinita, Terrascan emetterà i suoi risultati in un formato di facile utilizzo:
Dettagli della violazione -

  Descrizione : L'accesso al bucket S3 è consentito a tutti gli utenti dell'account AWS.
  File : modules/storage/main.tf
  Linea : 124
  Gravità : ALTA
...

Checkov

Checkov'L'ultima iterazione vanta un motore di scansione basato su grafici, che rappresenta un significativo balzo in avanti in termini di prestazioni e precisione. Con il suo nuovo motore, Checkov è in grado di risolvere in modo efficiente le dipendenze complesse all'interno di Terraform e analizzare le configurazioni di Dockerfile, fornendo un approccio olistico alla scansione IaC.

Dopo aver installato Checkov da PyPI ed eseguito la scansione di una directory contenente i file del piano Terraform, l'output visualizzerà chiaramente lo stato di conformità per ogni controllo, consentendo di identificare le configurazioni conformi e non conformi:

Figure 1: A Checkov result in Jenkins (Source: GitHub)

CCI

CCI è uno scanner versatile in grado di gestire vari formati IaC. La sua facilità di integrazione con le pipeline CI/CD lo rende uno strumento di facile utilizzo per gli sviluppatori'A questo punto, l'utente deve essere in grado di gestire il processo di sviluppo mantenendo un elevato standard di sicurezza.

KICS offre la comodità di eseguire la scansione sia delle directory che dei singoli file utilizzando Docker:

$ docker run -t -v {path_to_host_folder_to_scan}:/path checkmarx/kics:ultima scansione -p /path -o "/sentiero/"
$ docker run -t -v {path_to_host_folder}:/path checkmarx/kics:ultima scansione -p /path/{filename}.{extension} -o "/sentiero/"

Fornisce inoltre report di facile utilizzo per gli sviluppatori mostrando l'origine delle vulnerabilità:

Figure 2: KICS example PDF report (Source: KICS Docs)

TFSEC

Con un focus su Terraform, TFSEC è uno strumento di analisi statica guidato dalla comunità. Il suo punto di forza unico è la profondità dei suoi controlli di sicurezza, che vengono regolarmente aggiornati dalla comunità, garantendo che lo strumento rimanga all'avanguardia delle migliori pratiche di sicurezza.

Lo scanner tfsec può essere eseguito sul sistema o come contenitore Docker, eseguendo la scansione di una directory specificata per individuare eventuali problemi:

$ tfsec . 
$ docker run --rm -it -v "$(pwd):/Src" aquasec/tfsec /src

Lo stato di uscita ti aiuterà a determinare se sono stati rilevati problemi durante la scansione:

Figure 3: tfsec output (Source: GitHub)

TFLint

Come linter per Terraform, TFLint Aiuta gli sviluppatori a rilevare gli errori nelle prime fasi del ciclo di sviluppo. Enfatizza l'aderenza agli standard di codifica e la conformità alle policy, che è fondamentale per mantenere una base di codice di alta qualità.

TFLint può essere installato su diverse piattaforme utilizzando uno script bash, Homebrew o Docker, ed è'A questo punto, l'utente deve essere in grado di applicare le procedure consigliate e trovare gli errori:

$ docker run --rm -v $(pwd):/data -t ghcr.io/terraform-linters/tflint

TFLint è noto per la sua architettura pluggable, in cui ogni funzionalità è fornita da plugin, rendendolo altamente personalizzabile e adattabile a varie esigenze:

Figure 4: TFLint in GitHub Actions (Source: GitHub)

Come abbiamo visto, l'integrazione di strumenti open source nella pipeline CI/CD può proteggere l'infrastruttura rilevando potenziali problemi nelle prime fasi del ciclo di sviluppo. La facilità d'uso e la documentazione completa fornita da questi strumenti li rendono accessibili agli sviluppatori e ai professionisti della sicurezza, favorendo un Approccio shift-left all'interno dell'organizzazione.

Wiz'L'approccio alla scansione IaC

Codice Wiz fornisce una soluzione completa di scansione IaC che consente di identificare e correggere le vulnerabilità di sicurezza e i problemi di conformità nel codice dell'infrastruttura. Wiz'Lo scanner IaC è in grado di eseguire la scansione di un'ampia gamma di formati IaC, tra cui Terraform, AWS CloudFormation, modelli di Azure Resource Manager e manifesti Kubernetes. Wiz fornisce anche una varietà di funzionalità per aiutarti a gestire il tuo livello di sicurezza IaC, tra cui:

  • Applicazione dei criteri:Wiz può applicare le tue politiche di sicurezza contrassegnando automaticamente il codice che viola le tue politiche.

  • Scansione delle vulnerabilità:Wiz può eseguire la scansione del codice alla ricerca di vulnerabilità note e fornire indicazioni per la correzione.

  • Verifica della conformità:Wiz può verificare la conformità del codice agli standard del settore, come PCI DSS e SOC 2.

Wiz'Lo scanner IaC rileva vulnerabilità, segreti e configurazioni errate nei modelli IaC, nelle immagini dei container e nelle immagini delle VM, rafforzando la sicurezza fin dalle prime fasi di sviluppo. Fornendo un'unica policy per tutti gli ambienti e il codice cloud, Wiz unisce sviluppatori e team di sicurezza, eliminando i silos e garantendo un approccio armonizzato alla sicurezza del cloud.

Con Wiz, puoi proteggere l'infrastruttura dall'origine alla produzione, imparare dal runtime e applicare il codice con un'efficienza e una precisione senza precedenti. Guarda Wiz in azione di persona: Pianifica una demo Oggi.