Confronti
Strumenti di sicurezza CI/CD a confronto
Gli strumenti di sicurezza CI/CD si dividono in quattro gruppi: scanner che leggono il Suo codice, strumenti che rafforzano la pipeline attorno ad esso, agenti che sorvegliano il runner e runner che controllano e registrano la build. Ecco che cosa copre ciascun gruppo e dove si colloca CRACI.
Aggiornato il
Ogni confronto spiega che cosa fa bene l'altro prodotto, in che cosa CRACI è diverso e quando conviene usarli entrambi. Per tutte le categorie, veda tutti i confronti.
Perché la pipeline ha bisogno di strumenti di sicurezza propri
Una pipeline CI/CD contiene credenziali, scarica codice da internet e produce gli artefatti che i Suoi clienti eseguono. Questo la rende un bersaglio a sé. Un attaccante in grado di cambiare ciò che una build scarica, o ciò che produce, non ha alcun bisogno di toccare il Suo codice sorgente. Gli scanner del codice non sono stati creati per questo, perché leggono il repository, non la build.
Gli strumenti di sicurezza CI/CD colmano questa lacuna da direzioni diverse. Alcuni verificano come è configurata la pipeline, altri sorvegliano ciò che accade sul runner durante l'esecuzione di un job, altri ancora controllano il runner stesso. Sapere a quale gruppo appartiene uno strumento dice più del suo elenco di funzionalità, perché determina ciò che lo strumento può vedere e ciò che può fermare.
Tipi di strumenti di sicurezza CI/CD
Scanner che leggono il Suo codice
L'analisi statica (SAST), la scansione dei secret e la software composition analysis (SCA) leggono il repository: file sorgente, manifest e lockfile. GitHub Advanced Security, ad esempio, combina il code scanning CodeQL con la scansione dei secret e la push protection, e gli avvisi di Dependabot dal GitHub Advisory Database. Questi strumenti trovano i problemi prima dell'esecuzione di una build. Non vedono ciò che la build ha effettivamente scaricato né dove si è connessa.
Strumenti che rafforzano la pipeline attorno alla build
Gli strumenti di postura e governance verificano la configurazione della pipeline. Cycode monitora policy di sicurezza
CI/CD, configurazioni e governance. StepSecurity mantiene un inventario delle action di terze parti che Lei usa, con
workflow di approvazione per quelle nuove, e apre pull request che fissano le action a SHA di commit e impostano
permessi GITHUB_TOKEN a privilegio minimo. Questi strumenti rendono la pipeline più difficile da usare
impropriamente, ma lavorano sulla definizione della build e non sulla build in esecuzione.
Agenti che sorvegliano il runner
Gli agenti runtime vengono eseguiti all'interno del job sui runner che Lei mantiene. StepSecurity Harden-Runner monitora connessioni in uscita, processi e scritture di file, collega ciascuno allo step del workflow che lo ha causato e può bloccare l'egress esterno a una allowlist. Cimon di Cycode monitora esecuzione dei processi, egress di rete e accesso ai file a livello di kernel con eBPF, produce una SBOM osservata a runtime e firma la provenance SLSA. Gli agenti funzionano su molti sistemi CI e sui runner ospitati, perché vengono aggiunti a un'infrastruttura già esistente.
Runner che controllano e registrano la build
CRACI adotta l'ultimo approccio: sostituisce il runner. I job girano su CRACI con runs-on: craci, e le
esecuzioni continuano a comparire in GitHub. La policy di egress fa parte del runner, viene convalidata prima dell'avvio
del job ed è fail closed. Un proxy che riconosce i pacchetti registra ogni pacchetto scaricato dal job, compresi quelli
ripristinati dalle cache CI, quindi ogni job produce una SBOM con uno stato di completezza, una traccia di rete e i dati
di provenance.
Fianco a fianco
| Funzionalità | CRACI | StepSecurity Harden-Runner | Cycode (Cimon) | GitHub Advanced Security |
|---|---|---|---|---|
| Dove viene eseguito | È il runner stesso | Agent sui runner che gestisce Lei | Agent all'interno della Sua CI esistente | Scansiona i repository su GitHub |
| Controllo dell'egress della build | Deny o allow predefinito, fail-closed | Allowlist in modalità di blocco | Modalità di prevenzione con host consentiti | |
| Modalità di audit prima del blocco | Modalità di monitoraggio o dry-run | Baseline per job | Modalità di rilevamento | Nessun controllo dell'egress |
| Monitoraggio di processi e file | eBPF | Non dichiarato | ||
| SBOM registrata dalla build | Per job, con uno stato di completezza | Registra destinazioni, processi, file | SBOM osservata a runtime | Grafo dai manifest, più i dati di build inviati |
| Provenance della build firmata | Nessuna provenance firmata | Non dichiarato | SLSA Provenance v1.0 | Artifact attestation |
| SAST | Non dichiarato | CodeQL | ||
| Scansione dei secret | Non dichiarato | Secret Protection | ||
| Copertura CI | Oggi GitHub Actions; GitLab CI e Jenkins nella roadmap | GitHub Actions, GitLab CI, Azure DevOps | GitHub Actions, Azure Pipelines, Jenkins, GitLab CI, Buildkite, Harness | GitHub, e Azure DevOps come acquisto separato |
- Incluso
- In parte
- Non incluso
- In roadmap
"Non dichiarato" significa che non abbiamo potuto confermarlo nelle pagine pubbliche del vendor. Per i dettagli di ogni colonna, veda CRACI vs StepSecurity, CRACI vs Cycode e CRACI vs GitHub Advanced Security.
Quale strumento copre quale rischio CI/CD
L'OWASP Top 10 CI/CD Security Risks è l'elenco più utilizzato di ciò che può andare storto in una pipeline. I suoi dieci rischi sono:
- CICD-SEC-1: Insufficient Flow Control Mechanisms
- CICD-SEC-2: Inadequate Identity and Access Management
- CICD-SEC-3: Dependency Chain Abuse
- CICD-SEC-4: Poisoned Pipeline Execution (PPE)
- CICD-SEC-5: Insufficient PBAC (Pipeline-Based Access Controls)
- CICD-SEC-6: Insufficient Credential Hygiene
- CICD-SEC-7: Insecure System Configuration
- CICD-SEC-8: Ungoverned Usage of 3rd Party Services
- CICD-SEC-9: Improper Artifact Integrity Validation
- CICD-SEC-10: Insufficient Logging and Visibility
Nessun singolo strumento li copre tutti e dieci. Questi sono i quattro a cui si applicano i controlli di CRACI:
| Funzionalità | Di che cosa tratta il rischio | Che cosa fa CRACI |
|---|---|---|
| CICD-SEC-3: Dependency Chain Abuse | Una build scarica un pacchetto malevolo o inatteso | La policy di egress limita le sorgenti da cui un job può scaricare, e la SBOM del job registra ogni pacchetto scaricato |
| CICD-SEC-7: Insecure System Configuration | Impostazioni deboli nei sistemi che eseguono la pipeline | I job vengono eseguiti in macchine virtuali isolate, e una policy che non può essere applicata va in fail closed |
| CICD-SEC-9: Improper Artifact Integrity Validation | Un artefatto manomesso attraversa la pipeline come se fosse legittimo | Nessuna provenance firmata; l'API restituisce i dati di provenance per ogni build |
| CICD-SEC-10: Insufficient Logging and Visibility | Gli attacchi nella pipeline passano inosservati e non è possibile indagare su di essi | Una traccia di rete per ogni job, avvisi sulle violazioni delle policy e un'API che restituisce SBOM, tracce di rete e provenance |
Per CICD-SEC-7, CRACI copre il runner. La configurazione dei Suoi repository e della Sua organizzazione GitHub resta a Suo carico. Per essere chiari sul resto: CRACI non affronta la gestione delle identità e degli accessi (CICD-SEC-2) né l'igiene delle credenziali (CICD-SEC-6), e non governa il controllo del flusso, i permessi della pipeline o i servizi di terze parti (CICD-SEC-1, 5 e 8). La scansione dei secret, come Secret Protection di GitHub o il rilevamento dei secret di Cycode, e gli strumenti di postura citati sopra sono pensati per questo.
Come scegliere uno strumento di sicurezza CI/CD
- Sostituire i runner o mantenerli. Se vuole mantenere i runner ospitati da GitHub, i runner self-hosted o un altro sistema CI, un agente è il modo per aggiungere controlli runtime. Se è disposto a cambiare runner, un runner come CRACI porta il controllo dell'egress e una registrazione della build senza un agente da distribuire.
- Modalità audit oggi. Harden-Runner e Cimon possono osservare il traffico prima di bloccare qualcosa. La modalità monitor o dry-run di CRACI è nella sua roadmap.
- Forensica a livello di processo. Se durante un incidente deve sapere quale processo ha scritto quale file, un agente che monitora processi e file copre questa esigenza. CRACI non monitora processi né scritture di file.
- SBOM ed evidenze per il CRA. Se Le servono una SBOM a livello di pacchetto per ogni build, la provenance e le evidenze per il Cyber Resilience Act, guardi che cosa registra ogni strumento e se continua a monitorare ciò che è stato distribuito. CRACI registra la SBOM durante l'esecuzione della build, rivaluta le SBOM monitorate quando compaiono nuove vulnerabilità ed esporta le SBOM in CycloneDX o SPDX.
- Piattaforme CI e sistemi operativi. Oggi CRACI supporta GitHub Actions, con GitLab CI e Jenkins in roadmap, ed esegue Linux su x86-64 e ARM64, con Windows e macOS in roadmap. Se compila su altri sistemi CI o Le servono subito runner Windows o macOS, verifichi prima la copertura degli agenti.
- Codice e secret. Gli scanner per il codice sorgente e i secret coprono un terreno che nessun runner copre. CRACI non offre SAST né scansione dei secret, quindi li preveda separatamente.
Un agente sul runner o il runner stesso
Un agente viene aggiunto a un'infrastruttura progettata da altri. Sui runner ospitati da GitHub viene installato da uno step all'inizio di ogni job, e la sua portata dipende da ciò che quell'infrastruttura consente. È questo che permette agli agenti di coprire contemporaneamente runner ospitati, flotte self-hosted e diversi sistemi CI, ed è un vantaggio reale quando le Sue build sono distribuite su tutti questi ambienti.
Un runner che applica direttamente la policy funziona al contrario. Su CRACI la policy di egress viene convalidata prima dell'avvio del job, rifiuta i campi sconosciuti ed è fail closed, quindi una policy che non può essere applicata non produce un'esecuzione non protetta. Le sue sorgenti sono tipizzate per ecosistema, con 24 preset integrati di sorgenti software e sorgenti personalizzate per npm, PyPI, apt, apk, il proxy Go, Nix, Cargo, registry OCI e Git, quindi la registrazione riguarda i pacchetti, non solo gli host. Sui job che girano su CRACI, sostituisce gli agenti runtime invece di affiancarli. Scopra di più sull'integrazione CI/CD e sulla generazione di SBOM in fase di build, oppure prenoti una demo per vedere un job GitHub Actions eseguito sotto una policy di egress.
CRACI a confronto con ciascuno strumento
Fianco a fianco
Più strumenti in una sola pagina, per quando sceglie una categoria e non un singolo prodotto.
Strumenti di sicurezza CI/CD: le risposte
Che cosa sono gli strumenti di sicurezza CI/CD?
Gli strumenti di sicurezza CI/CD proteggono la pipeline che trasforma il codice sorgente in software rilasciato. Si dividono in quattro gruppi: scanner che leggono il Suo codice e le dipendenze (SAST, scansione dei secret, SCA), strumenti che rafforzano la configurazione della pipeline attorno alla build, agenti che sorvegliano il runner durante l'esecuzione di un job e runner che controllano e registrano direttamente la build. L'OWASP Top 10 CI/CD Security Risks è un modo diffuso per verificare quali rischi affronta uno strumento.
Qual è la differenza tra sicurezza CI/CD e SCA?
La software composition analysis (SCA) legge i Suoi manifest e lockfile e Le dice quali dipendenze dichiarate hanno vulnerabilità note. La sicurezza CI/CD protegge la pipeline stessa: chi può modificarla, che cosa può raggiungere una build e se l'artefatto che distribuisce è quello che è stato compilato. CRACI lavora a partire dalla build: registra i pacchetti effettivamente scaricati da ciascun job, compresi quelli ripristinati dalle cache CI, e continua a monitorarli per individuare nuove vulnerabilità dopo la release.
Mi serve un agente runtime se uso CRACI?
Non per il controllo dell'egress né per una registrazione della build. Su CRACI la policy di egress fa parte del runner, viene convalidata prima dell'avvio del job ed è fail closed, quindi CRACI sostituisce agenti come Harden-Runner e Cimon sui job che girano su di esso. Ciò a cui rinuncia è il monitoraggio di processi e file, che CRACI non offre, e la modalità audit, che è nella roadmap di CRACI. Se la forensica a livello di processo è un requisito imprescindibile, oggi la copre un agente sui runner che Lei mantiene.
Gli strumenti di sicurezza CI/CD possono bloccare i pacchetti malevoli?
Alcuni sì, in modi diversi. Il controllo dell'egress impedisce a una build di raggiungere sorgenti esterne a una policy, quindi un download da un host inatteso fallisce. Le blocklist di pacchetti e i controlli sui registry impediscono del tutto l'installazione di una versione nota come dannosa. Oggi CRACI applica una policy di egress per job, con sorgenti tipizzate per ecosistema; le blocklist di pacchetti a livello di organizzazione sono nella roadmap di CRACI.
Quali strumenti di sicurezza CI/CD funzionano oltre GitHub Actions?
A settembre 2026, StepSecurity elenca GitLab CI e Azure DevOps accanto a GitHub Actions, e Cimon di Cycode funziona anche su Azure Pipelines, Jenkins, GitLab CI, Buildkite e Harness. Anche GitHub Advanced Security è venduto per Azure DevOps. Oggi CRACI supporta GitHub Actions, con GitLab CI e Jenkins in roadmap.
Altre categorie
Veda CRACI sulla Sua pipeline
Prenoti una demo: esamineremo insieme le Sue build, le Sue SBOM e le Sue evidenze di conformità.
Prenota una demo