L'idea di automatizzare la verifica della sicurezza delle applicazioni si è sviluppata con l'aumento delle minacce informatiche. Inizialmente, la security testing era quasi completamente manuale, ma lo sviluppo del DevOps e dell'automazione ha consentito di integrare i controlli di sicurezza nei pipeline CI/CD.
Nei primi anni, il penetration testing (pentest) manuale e gli scanner erano gli unici strumenti di verifica delle vulnerabilità. Successivamente, sono iniziati a comparire scanner automatizzati e poi intere piattaforme che si integrano nei processi.
Caratteristiche chiave:
È possibile trovare tutte le vulnerabilità esclusivamente con test automatici?
No, le verifiche automatiche coprono solo una parte dei rischi di sicurezza (ad esempio, XSS, iniezioni SQL). Per completezza è necessario anche un audit manuale.
È sufficiente un solo tipo di scanner - SAST o DAST - per una protezione adeguata?
No, SAST analizza il codice in modo statico prima dell'esecuzione dell'applicazione, DAST analizza il comportamento dell'applicazione durante l'esecuzione. Bisogna utilizzare entrambi e considerare ulteriori metodi.
È opportuno disattivare i test di sicurezza nel CI/CD per accelerare il deploy?
No, questo approccio è pericoloso - mette a repentaglio la sicurezza del prodotto.
La sicurezza viene verificata solo tramite analisi manuale nella fase di rilascio e talvolta attraverso uno scanner, i rapporti non sono integrati nel CI/CD.
Vantaggi:
Svantaggi:
I test di sicurezza sono stati implementati in modo automatizzato nel CI/CD, le vulnerabilità critiche bloccano il rilascio, regole di filtraggio sono state impostate per i falsi positivi, sessioni di pentest aggiuntive ogni trimestre.
Vantaggi:
Svantaggi: