Puoi iniziare selezionando la OWASP ASVS lista di controllo per verificare che stai coprendo tutte le tue basi quando si tratta di sforzi di sicurezza. Per soddisfare i requisiti di ASVS è necessario un qualche tipo di controllo attivo del codice per cercare problemi di sicurezza.
Ci sono diversi approcci che puoi adottare:
- recensioni di codice dedicate per la sicurezza (tutto il codice è revisionato)
- Analisi statica tramite strumenti automatici, personalizzati o standard
- Analisi dinamica dell'applicazione in esecuzione.
Esempi di strumenti di analisi statici includono HP Fortify, Coverity, IBM AppScan. Sappiate che qui c'è un sacco di vendite di olio di serpente, perché questi strumenti sono strongmente ipervenduti (sia in termini di prezzo che di capacità). Nel codice su cui ho lavorato, abbiamo finito per sviluppare il nostro tool con una serie di regex per verificare la base di codice durante ogni build per cose come variabili erroneamente citate inserite in istruzioni SQL, perché era più economico e più efficace. Gli strumenti più generici, come Sonar , possono essere riutilizzati nell'attività, quindi considera quelli come bene.
Esistono anche strumenti di analisi dinamica che eseguono la scansione di un'applicazione in esecuzione, come Zed Attack Proxy e sqlmap . Questi strumenti sono ciò che un hacker reale userebbe per scansionare la tua applicazione alla ricerca di vulnerabilità, in modo che possa ripagare per usarlo per controllare il tuo lavoro.