Marcus Chen, YuSMP Group
Marcus Chen Staff Engineer (Backend & Cloud), YuSMP Group · Costruisce e mette in sicurezza le pipeline di consegna dietro software su misura ed enterprise per aziende statunitensi ed europee

In breve — il SDLC sicuro in un paragrafo

Il ciclo di vita dello sviluppo software sicuro (SSDLC) integra la sicurezza in ogni fase della consegna del software invece di testarla alla fine. Ogni fase acquisisce un attività di sicurezza — modellazione delle minacce in progettazione, codifica sicura nella build, SAST e DAST nella pipeline, patch in produzione — di solito guidata dal NIST SSDF o da OWASP SAMM. Trova le vulnerabilità quando la correzione è economica e trasforma la sicurezza in una proprietà del processo, non in un cancello finale.

Che cos è il ciclo di vita dello sviluppo software sicuro?

Il ciclo di vita dello sviluppo software sicuro (SSDLC) è la pratica di integrare il lavoro di sicurezza in ogni fase del ciclo di vita dello sviluppo software — requisiti, progettazione, sviluppo, test, rilascio e manutenzione — invece di applicare un controllo di sicurezza alla fine. In un SDLC standard la sicurezza tende a essere un singolo penetration test prima del lancio; in un SDLC sicuro ogni fase porta con sé la propria attività e il proprio responsabile di sicurezza. Il risultato è che le vulnerabilità vengono trovate e rimosse quando la correzione è economica, invece che dopo essere già arrivate in produzione e alla portata di un attaccante.

Questo conta soprattutto per le organizzazioni il cui software ha un reale peso normativo, finanziario o di sicurezza — ed è per questo che le imprese regolamentate che costruiscono con i nostri servizi di sviluppo software enterprise trattano il SDLC sicuro come una baseline piuttosto che come un miglioramento. Il processo sottostante è comunque l ordinario ciclo di vita: se vuoi prima le fasi e i deliverable, la nostra guida al ciclo di vita dello sviluppo software li percorre, e questo articolo sovrappone l attività di sicurezza a ciascuno di essi. La sintesi di questa sovrapposizione è « spostare a sinistra » — anticipare il lavoro di sicurezza, dove una correzione è una modifica di codice anziché un incidente.

SDLC sicuro vs SDLC tradizionale: cosa cambia?

La differenza tra un SDLC tradizionale e un SDLC sicuro non sono fasi in più — è un attività di sicurezza aggiunta dentro ogni fase che già esegui. Un ciclo di vita tradizionale scopre i problemi di sicurezza alla fine, quando sono strutturali e costosi; un ciclo di vita sicuro li fa emergere di continuo, quando sono ancora modifiche economiche. La tabella qui sotto mostra cosa cambia fase per fase.

FaseSDLC tradizionaleSDLC sicuro
RequisitiSolo requisiti funzionaliRequisiti di sicurezza & privacy catturati in parallelo
ProgettazioneArchitettura per le funzionalitàModellazione delle minacce e architettura sicura
SviluppoScrivere codice funzionanteStandard di codifica sicura, revisione, scansione delle dipendenze
TestTest funzionali e di QASAST, DAST, IAST e penetration testing
RilascioRilasciare la versioneConfigurazione rafforzata, gestione dei segreti, pipeline sicura
ManutenzioneCorreggere i bug su segnalazioneMonitoraggio delle vulnerabilità, SLA di patch, incident response

L attività di sicurezza in ogni fase del SSDLC

Un SDLC sicuro assegna una chiara attività di sicurezza a ogni fase, e il punto è la copertura: a nessuna fase è permesso passare la sicurezza a valle. Percorri le sei fasi qui sotto e vale sempre la stessa regola — nomina l attività, nomina il responsabile e dagli un cancello da cui dipende la fase successiva. Questi sono i processi fondamentali del ciclo di vita dello sviluppo software sicuro, in ordine.

  1. Requisiti — definire i requisiti di sicurezza. Cattura i requisiti di sicurezza e privacy come elementi di prima classe accanto a quelli funzionali: autenticazione, autorizzazione, classificazione dei dati, cifratura, logging e le normative in scope. Deliverable: un insieme di requisiti di sicurezza che il test potrà poi verificare.
  2. Progettazione — modellazione delle minacce. Modella come il sistema potrebbe essere attaccato prima che sia scritta una riga — confini di fiducia, flussi di dati, casi d abuso — e progetta le mitigazioni. Deliverable: un modello delle minacce e decisioni di architettura sicura, comprese scelte di accesso a privilegio minimo e di protezione dei dati.
  3. Sviluppo — codifica sicura. Applica standard di codifica sicura, revisione tra pari e software composition analysis (SCA) così che le dipendenze vulnerabili siano intercettate mentre entrano. Deliverable: codice revisionato, versionato, con un albero di dipendenze noto e scansionato.
  4. Test — test di sicurezza. Esegui analisi statica (SAST), analisi dinamica (DAST), test interattivi (IAST) e, per i rilasci a rischio più alto, penetration testing. Deliverable: una build testata e un elenco triato di risultati mappati alla gravità.
  5. Rilascio — rafforzare e automatizzare. Rilascia tramite una pipeline sicura con configurazione rafforzata, segreti gestiti, artefatti firmati e infrastruttura a privilegio minimo. Deliverable: un rilascio ripetibile e con cancelli e un piano di rollback.
  6. Manutenzione — rispondere alle vulnerabilità. Monitora le nuove vulnerabilità, applica le patch entro gli SLA concordati ed esegui l incident response quando qualcosa sfugge. Deliverable: un sistema supportato con un ciclo attivo di gestione delle vulnerabilità.
Due ingegneri revisionano insieme il pannello dei risultati di uno scanner di vulnerabilità durante la fase di sviluppo di un SDLC sicuro

Framework e standard per il SDLC sicuro nel 2026

Non devi inventare un SDLC sicuro da zero — diversi framework consolidati definiscono le pratiche, e la maggior parte dei team ne adotta uno come spina dorsale. Il riferimento dominante nel 2026 è il NIST Secure Software Development Framework (SSDF, SP 800-218); OWASP SAMM e BSIMM aggiungono modelli di maturità, e il SDL di Microsoft resta un opzione pratica e prescrittiva. Sono complementari anziché in competizione: scegline uno come spina dorsale e prendi in prestito dagli altri.

FrameworkChe cos èIdeale per
NIST SSDF (SP 800-218)Pratiche di alto livello in quattro gruppi: Prepare the Organization, Protect the Software, Produce Well-Secured Software, Respond to VulnerabilitiesUna spina dorsale indipendente dalla metodologia; richiesta per l autoattestazione federale statunitense
OWASP SAMMSoftware Assurance Maturity Model — misura la maturità su governance, progettazione, implementazione, verifica ed esercizioValutare dove sei e pianificare il miglioramento per stadi
BSIMMUn benchmark descrittivo di ciò che le aziende reali fanno davvero, aggiornato da dati osservatiConfrontare il tuo programma con i pari di settore
Microsoft SDLUn insieme prescrittivo di pratiche e strumenti di sviluppo sicuroTeam che vogliono passi concreti e pronti da adottare

Vale la pena capire prima il SSDF perché ancora gli altri e guida sempre più la conformità. I suoi quattro gruppi di pratiche — PO, PS, PW e RV — descrivono risultati, non strumenti, quindi si mappano in modo pulito sia sugli sprint Agile sia sulle pipeline DevOps. La versione 1.1 è quella corrente; NIST ha pubblicato una bozza della versione 1.2 (SP 800-218 Rev. 1) per consultazione pubblica nel dicembre 2025, e un profilo complementare, SP 800-218A, estende il framework ai modelli fondativi generativi e dual-use di IA. Considera i numeri di versione esatti come un bersaglio mobile e la struttura a quattro gruppi come il nucleo stabile.

Quali strumenti di sicurezza guidano ogni fase?

Gli strumenti SSDLC giusti sono quelli integrati nella tua pipeline così da girare a ogni modifica, non uno scaffale di scanner che nessuno guarda. Ogni tecnica di test intercetta una classe diversa di difetti, ed è per questo che i programmi maturi ne stratificano diversi anziché puntare su uno solo. La tabella mappa le categorie di strumenti comuni alla fase in cui fanno più bene.

Categoria di strumentoFaseCosa intercetta
SAST (analisi statica)SviluppoPattern di codice insicuri nel tuo sorgente, mentre viene scritto
SCA (software composition analysis)SviluppoDipendenze open-source con vulnerabilità note e rischio di licenza
DAST (analisi dinamica)TestDifetti a runtime nell applicazione in esecuzione, dall esterno verso l interno
IAST (analisi interattiva)TestVulnerabilità osservate dall interno dell app durante i test
Scansione di segreti & IaCRilascioCredenziali trapelate e infrastruttura mal configurata
Gestione delle vulnerabilitàManutenzioneNuovi CVE nel software rilasciato, tracciati a uno SLA di patch
Una dashboard di pipeline CI/CD che mostra i cancelli di test di sicurezza automatizzati superati, a illustrare il DevSecOps in un SDLC sicuro

Integrare questi strumenti in una pipeline è dove il DevSecOps incontra il SDLC sicuro: l automazione del DevOps trasporta i cancelli di sicurezza così che scansioni e controlli di policy girino a ogni commit anziché in una revisione trimestrale. Se la tua consegna è già automatizzata, aggiungere questi cancelli è un estensione della pipeline che hai — la nostra guida alle best practice di sicurezza delle web app copre i controlli a runtime che ci stanno accanto, e il nostro processo di sviluppo software su misura mostra dove atterrano i cancelli in un ingaggio reale.

Conformità: EO 14028, autoattestazione e audit

Un SDLC sicuro è ormai un requisito commerciale, non solo un ideale ingegneristico — acquirenti enterprise e regolatori ti chiedono sempre più di dimostrarlo. Negli Stati Uniti, l Executive Order 14028 e il Memorandum OMB M-22-18 richiedono ai fornitori di software del governo federale di autoattestare di seguire le pratiche NIST SSDF, usando un modulo standard di autoattestazione CISA. Anche al di fuori delle vendite federali, la stessa evidenza — un SDLC sicuro documentato e mappato a un framework — è ciò che abbrevia le revisioni di sicurezza enterprise e soddisfa gli auditor SOC 2 e ISO 27001.

L implicazione pratica è che il tuo SDLC sicuro deve essere messo per iscritto e tracciabile, non solo praticato. Auditor e team di procurement non accettano « facciamo modellazione delle minacce »; chiedono quale policy la richiede, su quale rilascio è girata e chi ha approvato. Ecco perché la conversazione sulla conformità e la policy nella prossima sezione sono la stessa conversazione. Per checklist normative adiacenti, vedi le nostre guide su SOC 2 Type II e, per i dati sanitari, la checklist di sviluppo software HIPAA.

Come scrivere una policy per il SDLC sicuro

Una policy del ciclo di vita dello sviluppo software sicuro è il documento che trasforma la pratica in processo — nomina, per ogni fase, l attività di sicurezza richiesta, il suo responsabile e il cancello che blocca il rilascio se viene saltata. Tienila abbastanza breve perché gli ingegneri la seguano davvero e abbastanza specifica perché un auditor possa verificarla. Una policy funzionante risponde a queste domande:

  • Quale attività gira in ogni fase? Modellazione delle minacce in progettazione, SAST e SCA in sviluppo, DAST prima del rilascio, patch in produzione — dichiarate come requisiti, non come aspirazioni.
  • Cosa blocca un rilascio? Le soglie di gravità (ad esempio, niente rilascio con un risultato critico o alto aperto) che trasformano l esito di una scansione in un cancello.
  • Chi possiede ogni controllo? Un ruolo nominato per ogni attività, così che nulla sia « compito di tutti » e quindi di nessuno.
  • Quali sono gli SLA di patch? Quanto rapidamente le vulnerabilità in produzione devono essere rimediate, per gravità.
  • A quale framework si mappa? Una colonna che collega ogni controllo a una pratica NIST SSDF, così che la policy funzioni anche da evidenza per la tua autoattestazione.

Scrivi la policy una volta, applicala nella pipeline e rivedila a cadenza fissa. Una policy che vive solo in un wiki e non blocca mai una build è decorazione; una policy codificata come cancelli di pipeline è un controllo.

Mettere in sicurezza il SSDLC per i sistemi di IA

Le funzionalità di IA estendono il SDLC sicuro anziché sostituirlo — le fasi restano le stesse, ma la superficie di minaccia cresce. I modelli aggiungono rischi che un applicazione tradizionale non ha: prompt injection, avvelenamento dei dati di addestramento, esfiltrazione di modelli e dati e output imprevedibile di cui il codice a valle non deve fidarsi ciecamente. NIST lo ha riconosciuto nel 2025 finalizzando SP 800-218A, un Community Profile che aggiunge pratiche e compiti specifici per l IA sopra il SSDF di base, così da estendere il framework esistente invece di ricominciare da capo.

In pratica, mettere in sicurezza un sistema abilitato all IA significa aggiungere alcune attività a fasi che già esegui: modellare le minacce del modello e della sua catena di fornitura dei dati in progettazione, trattare prompt e output del modello come input non fidati in sviluppo e monitorare l abuso specifico del modello in produzione. Se stai integrando l IA in un prodotto, abbina questo ai nostri servizi di integrazione dell IA generativa e alla checklist di conformità all EU AI Act, che copre il lato normativo del rilascio di funzionalità IA sul mercato UE.

Checklist di best practice per il SDLC sicuro

La maggior parte dei fallimenti del SDLC sicuro è ordinaria: un attività saltata sotto la pressione delle scadenze, o una policy che nessuno ha integrato nella pipeline. Questa checklist tiene visibili gli elementi essenziali:

  • Dai a ogni fase un responsabile di sicurezza. Se un attività non ha un responsabile nominato, non sarà compito di nessuno quando il calendario si stringe.
  • Modella le minacce in progettazione, non dopo il lancio. La correzione di sicurezza più economica è una decisione di progettazione; la più costosa è una riarchitettura dopo una violazione.
  • Automatizza le scansioni nella pipeline. SAST, SCA e DAST che girano a ogni modifica intercettano molto più di una revisione manuale trimestrale — e non saltano.
  • Imposta soglie che bloccano il rilascio. Decidi in anticipo quali gravità fermano una build, così che la sicurezza sia un cancello anziché un suggerimento.
  • Gestisci dipendenze e segreti con intenzione. Gran parte delle violazioni moderne passa attraverso una dipendenza vulnerabile o una credenziale trapelata, non attraverso codice inedito.
  • Applica le patch entro uno SLA in produzione. Un SDLC sicuro non finisce al rilascio; un ciclo attivo di gestione delle vulnerabilità ne fa parte.
  • Mettilo per iscritto e mappalo a un framework. Una policy documentata legata al NIST SSDF è ciò che supera gli audit e chiude le trattative enterprise.

FAQ

Che cos è un ciclo di vita dello sviluppo software sicuro?

Un ciclo di vita dello sviluppo software sicuro (SSDLC) integra la sicurezza in ogni fase della consegna del software — requisiti, progettazione, sviluppo, test, rilascio e manutenzione — invece di testarla una sola volta alla fine. Ogni fase acquisisce un attività di sicurezza: requisiti di sicurezza e modellazione delle minacce in anticipo, codifica sicura e scansione delle dipendenze durante la build, test di sicurezza automatizzati prima del rilascio e configurazione rafforzata più patch in produzione. L obiettivo è trovare le vulnerabilità quando la correzione è economica e rendere la sicurezza una proprietà del processo.

Quali sono le fasi di un SDLC sicuro?

Un SDLC sicuro usa le stesse fasi di qualsiasi SDLC, ciascuna con un attività di sicurezza associata: requisiti (requisiti di sicurezza), progettazione (modellazione delle minacce e architettura sicura), sviluppo (codifica sicura, revisione, software composition analysis), test (SAST, DAST, IAST e penetration testing), rilascio (configurazione rafforzata, gestione dei segreti, una pipeline sicura) e manutenzione (monitoraggio delle vulnerabilità, patch e incident response). La sicurezza non è una fase separata; è un compito dentro ognuna di quelle esistenti.

Qual è la differenza tra SDLC e SDLC sicuro?

Il SDLC è il processo per costruire software; il SDLC sicuro è lo stesso processo con il lavoro di sicurezza integrato in ogni fase. Un SDLC standard tratta la sicurezza come un attività di test verso la fine; un SDLC sicuro la sposta a sinistra — modellazione delle minacce in progettazione, codifica sicura durante la build, scansione automatizzata nella pipeline e risposta continua alle vulnerabilità in produzione. La differenza non sono fasi in più ma un responsabile e un attività di sicurezza dentro ogni fase, che trova i difetti quando costano una frazione di una correzione post-rilascio.

Che cos è il NIST SSDF (SP 800-218)?

Il NIST Secure Software Development Framework (SSDF), pubblicato come SP 800-218, è un insieme di pratiche di sviluppo sicuro di alto livello raggruppate in quattro famiglie: Prepare the Organization, Protect the Software, Produce Well-Secured Software e Respond to Vulnerabilities. È indipendente dalla metodologia, quindi le sue pratiche si mappano su Agile, DevOps e Waterfall allo stesso modo, e attinge a OWASP SAMM e BSIMM. La versione 1.1 è quella corrente; una bozza della versione 1.2 è stata sottoposta a consultazione pubblica nel dicembre 2025, e un profilo complementare, SP 800-218A, aggiunge pratiche per i sistemi di IA generativa.

Abbiamo bisogno di una policy per il SDLC sicuro?

Sì — una policy scritta per il SDLC sicuro trasforma le buone intenzioni in un processo ripetibile, ed è sempre più richiesta per le vendite enterprise, gli audit e l autoattestazione federale. Una policy utile nomina l attività di sicurezza e il responsabile per ogni fase, gli strumenti che devono girare nella pipeline, le soglie di gravità che bloccano un rilascio, gli SLA di patch per le vulnerabilità in produzione e come ogni controllo si mappa a un framework come il NIST SSDF. Deve essere abbastanza breve da seguire e abbastanza specifica da essere verificata in audit.

Come si collega il DevSecOps al SDLC sicuro?

Il DevSecOps è il modo in cui la maggior parte dei team implementa un SDLC sicuro nel 2026: prende l automazione del DevOps e aggiunge cancelli di sicurezza nella pipeline CI/CD così che scansioni, controlli delle dipendenze e applicazione delle policy girino automaticamente a ogni modifica. Il SDLC sicuro definisce quale lavoro di sicurezza serve a ogni fase; il DevSecOps è il modello operativo che rende quel lavoro continuo anziché una revisione manuale. Un SDLC sicuro senza automazione della pipeline tende a saltare sotto la pressione delle scadenze — che è esattamente il fallimento che il DevSecOps previene.

Ultimo aggiornamento 3 luglio 2026. I riferimenti ai framework riguardano NIST SP 800-218 (SSDF v1.1), la bozza SP 800-218 Rev. 1 (v1.2) pubblicata per consultazione nel dicembre 2025, SP 800-218A per l IA generativa, OWASP SAMM, BSIMM e l US Executive Order 14028 / OMB M-22-18, citati a titolo di guida generale. Le attività, gli strumenti e i cancelli giusti dipendono dal tuo profilo di rischio, dal tuo stack e dal tuo ambito normativo — considera questo un punto di partenza, non una prescrizione.