Per anni, gli aggressori hanno preso di mira le applicazioni una alla volta. Hanno cambiato tattica: perché compromettere un'app quando puoi comprometterne un'altra? pipeline che ne costruisce molti? Di Xygeni Allerta precoce sul malware (MEW) rilevato 4,452 pacchetti dannosi nel 2025 e Altri 1,281 nel 2026 finoraCiascuno degli incidenti di alto profilo verificatisi negli ultimi anni ha colpito un anello diverso della catena di distribuzione del software:
- SolarWinds (2020)Compromissione dell'ambiente di compilazione; aggiornamenti con backdoor distribuiti a 18,000 clienti.
- Codecov (2021): un'immagine Docker configurata in modo errato ha permesso agli aggressori di modificare uno script di caricamento bash, esfiltrando segreti CI da oltre 23,000 clienti.
- CircleCI (2023)Il furto di cookie di sessione sul laptop di un ingegnere è stato trasformato in token di accesso alla produzione; a ogni cliente è stato detto di ruotare tutte le credenziali di accesso.
- Backdoor di XZ Utilis (2024) :una campagna di ingegneria sociale pluriennale che ha raggiunto quasi tutte le distribuzioni Linux.
- tj-actions (2025) — una cascata di problemi nella catena di fornitura di GitHub Actions che ha compromesso un componente utilizzato da oltre 23,000 repository.
- Attacchi Aqua Trivy e Check Marx (2026) — la campagna TeamPCP ha trasformato due scanner di sicurezza ampiamente utilizzati in vettori di attacco, quindi ha utilizzato quelli rubati CI/CD credenziali da propagare a cascata a npm, OpenVSX e PyPI.
Ogni attacco ha sfruttato una parte diversa del pipeline: ambiente di build, strumenti CI, dipendenze, credenziali dello sviluppatore, fiducia del manutentore, riferimenti mutabili agli artefatti. La maggior parte delle organizzazioni risponde con controllo puntuale, uno scanner in CI, 2FA sull'IdP, protezione del ramo su mainCiò che in genere manca è un modo per chiedere Siamo coperti in modo sistematico? anziché Ci siamo ricordati di abilitare X dopo l'ultimo incidente?
I fornitori di sicurezza delle applicazioni si trovano proprio nel mirino, compromettendo ogni cliente che si fida dei loro artefatti. La pressione per passare da controlli reattivi a un approccio sistematico non è teorica. Questo è precisely cosa ha motivato l'adozione dell'OWASP SPVS standard come progetto di massima priorità.
Cos'è SPVS e perché la sua struttura è importante
La storia dell'origine è semplice. Al LASCON 2023, Farshad Abasi e Cameron Walters continuavano a farsi la stessa domanda: dov'è l'ASVS per pipelines? OWASP ASVS aveva fornito alla sicurezza delle applicazioni una soluzione completa e verificabile standardNon esisteva nulla di equivalente per CI/CD.
C'era la Top 10 dell'OWASP CI/CD Rischi, che era orientato alla consapevolezza, non testabile; SLSA, che si concentrava solo sulla provenienza della build; S2C2F, che si concentrava solo sul consumo delle dipendenze; e OpenSSF Scheda di valutazione, che copriva controlli specifici del repository. Ciascuna copriva una parte, nessuna copriva l'intero processo.
| Quadro o progetto | Ambito primario |
|---|---|
| OWASP Top 10 CI/CD Rischi | orientato alla sensibilizzazione CI/CD Linee guida sui rischi, non una verifica testabile standard. |
| SLSA | Garantire la provenienza e l'integrità dei manufatti. |
| S2C2F | Consumo sicuro delle dipendenze. |
| OpenSSF cartoncino segnapunti | Controlli di sicurezza specifici a livello di repository. |
Il divario: ogni struttura copriva un pezzo importante di software supply chain securityma nessuno ha fornito una soluzione completa e verificabile standard per l'intero CI/CD pipeline.
Quella conversazione si è trasformata in due anni di lavoro e nell'ottobre 2025 il gruppo di lavoro SPVS ha rilasciato la v1.0: 127 requisiti lungo tutto il ciclo di vita, Pianificazione, Sviluppo, Integrazione, Rilascio, Gestione, stratificati in tre livelli di maturità: L1 Fondamentale, L2 Standarde L3 Avanzato. Ogni requisito è mappato a NIST SP 800-53, OWASP CI/CD Top 10 e CWE.

La struttura è il punto cruciale. Nelle parole degli autori di SPVS:
“Verifica il tuo intero pipeline, non solo un pezzo. È qui che la maggior parte delle organizzazioni incontra difficoltà. Scansionano le dipendenze ma ignorano la governance delle release. Firmano gli artefatti ma non modellano le minacce pipeline architettura. Monitorano la produzione, ma non i loro ambienti di costruzione."
È qui che la maggior parte delle organizzazioni incontra difficoltà. Analizzano le dipendenze ma ignorano la governance delle release. Firmano gli artefatti ma non modellano le minacce. pipeline architettura. Monitorano la produzione, ma non i loro ambienti di sviluppo.
Questa è la tesi che giustifica lo sforzo. I punti di forza in una fase non compensano le debolezze in un'altra. Agli aggressori basta un solo anello da rompere. Un ciclo di vita standard ti obbliga a controllarli tutti, e la progressione da L1 a L2 a L3 ti permette di farlo senza impazzire. SPVS non sostituisce SLSA, S2C2F, Scorecard o Sigstore; ti fornisce l'impalcatura che ti indica dove si colloca ciascuno di essi.
Adattare il Standard alla vostra organizzazione
Il primo passo naturale è un audit diretto della tua organizzazione e dell'infrastruttura software rispetto a ciascun requisito. Un foglio Google precompilato dal documento ufficiale Requisiti SPVS CSV funziona bene come punto di partenza. Tre viste sono utili: una matrice dei requisiti con stato e proprietario per controllo, una mappa di calore per repository e una dashboard dei progressi per fase e livello. L'output confluisce naturalmente in una roadmap tecnica, un documento dinamico che copre ogni fase, dalla pianificazione alla gestione operativa.
La maggior parte delle organizzazioni di ingegneria mature si troverà già intorno al livello L2 quando effettuerà questa mappatura iniziale. Questa è in realtà una buona posizione: significa che la prima fase può concentrarsi sulla chiusura di lacune specifiche piuttosto che sulla costruzione delle fondamenta da zero.
Un foglio di calcolo, tuttavia, fornisce solo un'istantanea, mentre SPVS richiede di più. La versione 1.1.7 impone un audit trimestrale degli amministratori VCS; le versioni dalla 5.1.1 alla 5.1.3 aggiungono audit regolari degli utenti, revisione dei registri di accesso e monitoraggio degli accessi privilegiati; diversi controlli delle versioni 2.1.x, 3.3.x e 4.2.x richiedono una continua manutenzione dei file YAML del flusso di lavoro. Se eseguito manualmente in tutta l'organizzazione, si tratta di mezza giornata di tracciamento dei clic ogni trimestre, con il rischio concreto di omissioni silenziose. È il tipo di lavoro che o viene automatizzato o viene rivisto solo dopo che si è verificato un problema.
Alcuni controlli SPVS non sono semplici elementi da inserire in una lista di controllo una tantum. Richiedono revisioni periodiche, prove di audit e rilevamento delle discrepanze tra repository, utenti, flussi di lavoro e accessi privilegiati.
| Area SPVS | Tipo di requisito |
|---|---|
V1.1.7 |
Verifica trimestrale degli amministratori di VCS. |
V5.1.1–V5.1.3 |
Verifiche periodiche degli utenti, revisione dei registri di accesso e monitoraggio degli accessi privilegiati. |
V2.1.x, V3.3.x, V4.2.x |
Pulizia continua del flusso di lavoro YAML. |
La risposta è costruire o adottare strumenti che funzionano con l'identità dell'org-owner e producono un pacchetto trimestrale strutturato: elenco degli amministratori, protezione dei rami, copertura dei CODEOWNERS, pulizia del flusso di lavoro YAML con azioni bloccate, autorizzazioni esplicite, pull_request_target gating, autenticazione a due fattori dei membri, app GitHub installate e chiavi di distribuzione. Quella che una volta era mezza giornata di archeologia dei fogli di calcolo diventa un singolo comando che emette JSON e Markdown. La revisione trimestrale tra il CISO e gli amministratori dell'organizzazione diventano un decisriunione ionica, non di raccolta dati, e i risultati attuabili diventano problemi arretrati con SLA basati sulla gravità.
Una policy di lista di autorizzazione, che includa amministratori approvati, app approvate e autorizzazioni per funzione per repository e flussi di lavoro, dovrebbe essere definita come file YAML in un repository con controllo di versione, soggetto a revisione da parte del team di sicurezza. Ogni modifica alla lista di autorizzazione lascia una traccia della revisione, generando così automaticamente le prove di audit. L'effetto è quello di trasformare controlli che prima erano auspicabili, come "dovremmo effettuare audit trimestrali", in controlli di routine, come "l'audit di questo trimestre è stato completato lunedì", e di fornire all'organizzazione un meccanismo ripetibile per il rilevamento delle deviazioni, come richiesto dal principio end-to-end.
Gli attriti da tenere in considerazione
I controlli tecnici sono la parte facile. Le persone sono più difficili.
L'esempio più eclatante è quasi sempre CODEOWNERS. Aggiungendo .github/workflows/ @your-org/security Aggiungere modifiche a ogni repository sembra banale. Un file, una riga. Ma significa che gli ingegneri che per anni hanno unito autonomamente le modifiche al flusso di lavoro ora devono sottoporsi a una revisione della sicurezza. Persino le persone attente alla sicurezza si oppongono: ho scritto io questo flusso di lavoro, lo capisco, perché devo aspettare?
Per capire il perché, è necessaria una vera e propria conversazione. I flussi di lavoro possono sottrarre credenziali, reindirizzare artefatti e compromettere i consumatori a valle. Un secondo paio d'occhi non è sinonimo di sfiducia; si basa sulla stessa logica di un controllo incrociato sulle modifiche al database di produzione. Avere un caso concreto e recente nella catena di fornitura, proveniente dal settore o dal proprio ambiente, è di enorme aiuto. Nulla rende evidente un controllo come un esempio concreto della sua assenza.
Anche gli altri attriti seguono lo stesso andamento:
- Autorizzazioni esplicite: I blocchi nei flussi di lavoro causano errori di integrazione continua (CI) finché i collaboratori non comprendono le autorizzazioni con ambito specifico. Non si tratta di un problema di autorizzazioni, ma di un problema di modello mentale.
- Immutabilità dei tag: interrompe gli strumenti di rilascio che sono stati silenziosamente rietichettati per anni.
- Firmato commits: Si creano attriti durante la fase di onboarding finché le chiavi GPG o SSH non vengono configurate correttamente su tutte le workstation. SPVS rende questa operazione obbligatoria per ogni repository e collaboratore, non solo per quelli principali.
- Sostituzione dei classici token di accesso personali: Questo coinvolge numerosi repository e file di flusso di lavoro, interessando quasi tutti i team.
Il modello che funziona è il seguente: introdurre ogni controllo con una minaccia specifica che blocca, testarlo su uno o due repository, implementarlo con eccezioni consentite e rimuovere le eccezioni secondo una tempistica definita. Gli ingegneri che inizialmente oppongono maggiore resistenza, il più delle volte, diventano i più convinti sostenitori una volta compresa la logica del sistema.
Un punto ancora più importante: qui entra in gioco il principio end-to-end. Non si può scegliere a piacimento. Rafforzare la fase di build lasciando la governance del rilascio permissiva genera una falsa sicurezza, che è esattamente la modalità di fallimento evidenziata dagli autori di SPVS. Ogni fase deve procedere in modo coordinato, anche quando un singolo controllo sembra sproporzionato se considerato isolatamente.
Costo: Circa un mese di tempo di ingegneria impiegato per la Fase 1, incentrata sulla conformità L2 per una piccola organizzazione, distribuito tra DevOps, Sicurezza e revisori di ingegneria. L'investimento si ripaga facilmente. Un singolo incidente nella catena di fornitura evitato lo ripaga molte volte. Le organizzazioni più grandi dovrebbero prevedere un budget proporzionalmente maggiore, ma la struttura a fasi da L1 a L2 a L3 garantisce che il valore venga generato prima del completamento del programma.
Cosa c'è dopo?
SPVS v1.5 è all'orizzonte con controlli relativi all'IA: provenienza del codice assistito dall'IA, guardrails per i flussi di lavoro CI che richiamano LLM, rivedi i percorsi per i file generati dall'IA pull requestse difese contro minacce emergenti come lo slopsquatting, in cui gli aggressori registrano nomi di pacchetti che gli assistenti di programmazione IA immaginano, e il malware operativo generato dall'IA che CrowdStrike segnala in circolazione. Le organizzazioni che già etichettano i malware assistiti dall'IA commitI responsabili delle pubbliche relazioni e i responsabili delle pubbliche relazioni, nelle loro linee guida interne per lo sviluppo, troveranno questo adattamento incrementale piuttosto che un nuovo programma di lavoro.
Si prevede che la versione 2.0 approfondisca il monitoraggio in fase di esecuzione e i requisiti del ciclo di vita delle credenziali. Una roadmap organizzativa ragionevole: colmare le lacune rimanenti di livello 3 entro la fine del secondo trimestre del 2026, tra cui SLSA provenance integrato standard CI/CD, controlli manuali per le implementazioni in produzione e provider di identità centralizzato, quindi passaggio alla modalità di manutenzione. Ogni nuovo repository inizia in conformità e ogni audit trimestrale individua tempestivamente eventuali deviazioni.
Un sentito ringraziamento a Farshad Abasi, Cameron Walters e al gruppo di lavoro OWASP SPVS. Progetti come questo abbassano la soglia di accesso per ogni organizzazione che desidera implementare la sicurezza della catena di approvvigionamento in modo sistematico anziché reattivo.
Punti chiave

Alcuni aspetti che si applicano anche al di là del nostro contesto specifico:
- Per provarlo: Scarica il file CSV con i requisiti SPVS e mappa i tuoi controlli attuali in un foglio di calcolo. Saprai entro un giorno se sono compatibili.
- Scegli un livello obiettivo e portalo a termine prima di puntare al successivo. Il passaggio da L1 a L2 a L3 è una funzionalità, non una limitazione.
- Migliori pipeline è l'obiettivo. I controlli incentrati sull'applicazione sono necessari ma non sufficienti; trattare l' pipeline come superficie di attacco di prim'ordine.
- Verificare l'intero pipeline, non un pezzo. La solidità nella scansione delle dipendenze non compensa una gestione del rilascio debole o ambienti di compilazione non monitorati.
- I fogli di calcolo sono istantanee; la deriva è continua. Implementare sistemi di automazione, anche semplici strumenti interni, per rilevare eventuali discrepanze tra le verifiche.
- Il lavoro organizzativo è più difficile del lavoro tecnico. Prevedi del tempo per la discussione e la fase pilota prima del lancio, e spiega la specifica minaccia che ogni misura di controllo blocca.
Per saperne di più
- OWASP: Assicurate Pipeline Convalida Standard (SPVS) v1.0Pagina del progetto OWASP.
- Farshad Abasi: Perché abbiamo creato OWASP SPVSArticoli OWASP SPVS.
- Farshad Abasi: Pipeline Gli attacchi stanno peggiorando. Ecco come prepararsi.Articoli OWASP SPVS.
- Farshad Abasi: OWASP SPVS a confronto con altri framework per la gestione della catena di fornitura.Articoli OWASP SPVS.
- OWASP: Top 10 CI/CD Rischi per la sicurezzaPagina del progetto OWASP.
- SLSA: Livelli della catena di fornitura per gli artefatti software. slsa.dev.
- OpenSSF: cartoncino segnapunti. securityscorecards.dev.
L'autore
Cofondatore e Responsabile della Sicurezza Informatica
Luis Rodriguez È co-fondatore e responsabile della ricerca sulla sicurezza presso Xygeni Security. Con oltre 20 anni di esperienza nella sicurezza delle applicazioni, si concentra sulla protezione AppSec e su funzionalità avanzate di analisi del codice che aiutano i team a ridurre il rischio reale di rilascio.





