Se stai cercando informazioni generali sulla sicurezza del software, ti suggerisco di consultare il Dipartimento nazionale di sicurezza nazionale per la sicurezza nazionale Sicurezza della divisione sicurezza nel sito Web . Tra le altre cose, forniscono un numero di articoli suddivisi in varie migliori pratiche per diverse fasi o attività, aree di conoscenza e strumenti. Forniscono inoltre un numero di link a risorse esterne pertinenti .
MITER Corporation fornisce l' enumerazione delle debolezze comuni . Questo è uno strumento per identificare e discutere le potenzialità e gli strumenti potenziali per identificare e correggere questi problemi nel software. Ne esce una lista degli Top 25 errori di software più pericolosi . Non tutti si applicano a tutti i software, ma possono essere utilizzati per analizzare i sistemi software e determinare quelli più rischiosi per te.
CERT presso il Software Engineering Institute della Carnegie-Mellon University fornisce risorse per la sicurezza codifica in Java, C e C ++ . È possibile acquistare libri o visualizzare alcune informazioni online ( Java , C , < a href="https://www.securecoding.cert.org/confluence/pages/viewpage.action?pageId=637"> C ++ ). CERT enumera inoltre 10, standard di codifica abbastanza semplici e sicuri .
Raccomando anche di leggere il lavoro di Gary McGraw. Era (è?) L'editore di una serie di articoli in IEEE Security & Privacy, che sono fornite tramite il sito Sicurezza di sicurezza nel sito . McGraw ha anche scritto o co-scritto tre libri che sono molto rilevanti - Creazione di software sicuro: come evitare problemi di sicurezza nel modo giusto (il White Hat Book), Software per lo sfruttamento: come rompere il codice (il Black Hat Book), e Sicurezza del software: sicurezza degli edifici in (il libro Ying-Yang).
Per quanto riguarda le cose che puoi fare ora, renditi conto che la sicurezza è qualcosa che deve essere presa in considerazione in tutto l'SDLC, dai requisiti alle attività di manutenzione. È necessario tenere a mente la sicurezza durante l'intero processo. Sebbene alcune delle risorse che ho collegato per discutere di problemi di sicurezza generale, è importante identificare i problemi di sicurezza più probabili e più importanti per un progetto e concentrarsi su quelli. Una volta identificato, l'uso delle liste di controllo durante le recensioni, l'enfasi su queste caratteristiche durante lo sviluppo e l'uso di strumenti che si integrano bene nel processo sono essenziali. Non esiste una tecnica valida per tutti: è necessario bilanciare tempi, costi e sforzi per ridurre i rischi.