Cos'è il test di sicurezza? Esempio
⚡ Riepilogo intelligente
Il test di sicurezza è una disciplina di test del software che individua vulnerabilità, minacce e rischi in un'applicazione prima che lo facciano gli aggressori. Questo articolo illustra le sette tipologie principali, il modello di integrazione SDLC, le metodologie comuni, i ruoli chiave e gli strumenti principali.
Che cos'è il test di sicurezza?
Test di sicurezza è un tipo di test del software che individua vulnerabilità, minacce e rischi in un'applicazione e previene attacchi dannosi da parte di intrusi. Lo scopo dei test di sicurezza è identificare ogni falla e debolezza nel sistema che potrebbe portare a una perdita di informazioni, ricavi o reputazione per mano di persone interne o esterne.
Perché i test di sicurezza sono importanti?
L'obiettivo principale dei test di sicurezza è identificare le minacce presenti nel sistema e misurarne il potenziale impatto, in modo da poterle mitigare e garantire il funzionamento sicuro del sistema. I test di sicurezza rilevano ogni possibile rischio e forniscono agli sviluppatori informazioni utili per correggere i problemi nel codice prima del rilascio.
Tipi di test di sicurezza nei test del software
Secondo l'Open Source Security Testing Methodology Manual (OSTMM), esistono sette tipologie principali di test di sicurezza.
- Scansione delle vulnerabilità: Un software automatizzato esegue la scansione di un sistema confrontandolo con firme di vulnerabilità note.
- Scansione di sicurezza: Identifica le debolezze della rete e del sistema e raccomanda soluzioni. Può essere manuale, automatizzato o entrambi.
- Test di penetrazione: Simula un attacco informatico per individuare le vulnerabilità che un malintenzionato esterno potrebbe sfruttare.
- Valutazione del rischio: Analizza i rischi per la sicurezza riscontrati nell'organizzazione e li classifica come bassi, medi o alti, raccomandando le relative misure di controllo.
- Controllo della sicurezza: Un controllo interno delle applicazioni e sistemi operativi per individuare falle di sicurezza. Può includere una revisione del codice riga per riga.
- Hacking etico: L'accesso non autorizzato al software di un'organizzazione per individuare falle di sicurezza: l'intento opposto a quello degli hacker malintenzionati.
- Valutazione della postura: Combina la scansione di sicurezza, hacking eticoe una valutazione del rischio per mostrare il livello generale di sicurezza di un'organizzazione.
Come eseguire i test di sicurezza
È opinione diffusa che il costo della correzione di un difetto di sicurezza aumenti drasticamente quanto più tardi viene scoperto. Rimandare test di sicurezza L'implementazione fino a dopo la distribuzione è molto più costosa rispetto all'integrazione nel ciclo di vita dello sviluppo del software fin dall'inizio.
La tabella seguente associa le attività di sicurezza a ciascuna fase del ciclo di vita dello sviluppo del software (SDLC).
| Fase SDLC | Processi di sicurezza |
|---|---|
| Requisiti | Analisi della sicurezza dei requisiti e revisione dei casi di abuso/uso improprio. |
| Design | Analisi del rischio per la sicurezza per la progettazione. Sviluppo di un piano di prova che include test di sicurezza. |
| Codifica e test unitari | Test statici e dinamici più sicurezza test in scatola bianca. |
| Test d'integrazione | Test della scatola nera. |
| Test di sistema | Test black-box e scansione delle vulnerabilità. |
| Implementazione/Attuazione | Test di penetrazione e scansione delle vulnerabilità. |
| Assistenza | Analisi dell'impatto delle patch. |
Il piano di test di sicurezza dovrebbe includere:
- Casi di test e scenari relativi alla sicurezza.
- Dati di test progettati per i test di sicurezza.
- Strumenti di test necessari per ciascuna attività di sicurezza.
- Analisi dei risultati ottenuti dai vari strumenti di sicurezza.
Scenari di test di esempio per i test di sicurezza
L'elenco seguente offre una panoramica dei tipici casi di test di sicurezza.
- Le password vengono memorizzate in forma crittografata, mai in chiaro.
- L'applicazione o il sistema blocca gli utenti non validi.
- I cookie e i timeout di sessione vengono convalidati per ogni flusso di lavoro.
- Per i siti finanziari, il pulsante "Indietro" del browser non deve esporre pagine protette dopo il logout.
Metodologie e tecniche per i test di sicurezza
I test di sicurezza seguono diverse metodologie consolidate.
- Tigre Box: Test eseguiti da un laptop dotato di più sistemi operativi e strumenti di hacking. Utilizzato dai penetration tester per valutare le vulnerabilità ed eseguire attacchi.
- Nero Box: Il tester non possiede alcuna conoscenza interna della topologia di rete o dello stack tecnologico e analizza il sistema come farebbe un esterno.
- Grigio Box: Il tester riceve informazioni parziali sul sistema. Questa combinazione di tecniche white-box e black-box rispecchia un modello di minaccia realistico in cui alcuni dettagli sono trapelati.
Ruoli nei test di sicurezza
- Pirata: Termine generico per indicare chi accede a un sistema o a una rete informatica; oggi si usa comunemente per riferirsi agli hacker "black hat" che lo fanno senza autorizzazione.
- Cracker: Introducendosi nei sistemi, si impossessa di dati per rubarli o distruggerli.
- Hacker etico: Esegue le stesse attività di un hacker ma con l'esplicito permesso del proprietario, aiutaping per rafforzare il sistema.
- Script Kiddies / Packet Monkeys: Attaccanti inesperti con conoscenze di programmazione limitate che si affidano a script e strumenti preconfigurati.
Strumenti di test di sicurezza
1) Teramind
Teramind Offre una suite completa per la prevenzione delle minacce interne e il monitoraggio dei dipendenti. Migliora la sicurezza attraverso l'analisi comportamentale e la prevenzione della perdita di dati, garantendo la conformità e ottimizzando i processi aziendali. La sua piattaforma personalizzabile si adatta alle diverse esigenze organizzative, fornendo informazioni utili incentrate sull'aumento della produttività e sulla salvaguardia dell'integrità dei dati.
Caratteristiche:
- Prevenzione delle minacce interne: Rileva e previene le azioni dell'utente che potrebbero indicare minacce interne ai dati.
- Ottimizzazione dei processi aziendali: Utilizza l'analisi comportamentale basata sui dati per perfezionare i processi operativi.
- Produttività della forza lavoro: Monitora la produttività, la sicurezza e i comportamenti relativi alla conformità.
- Gestione della conformità: Gestisce la conformità normativa con un'unica soluzione scalabile, adatta a piccole imprese, grandi aziende e agenzie governative.
- Analisi forense degli incidenti: Fornisce elementi utili per arricchire la risposta agli incidenti, le indagini e l'intelligence sulle minacce.
- Prevenzione della perdita dei dati: Monitora e protegge dalla perdita di dati sensibili.
- Monitoraggio dei dipendenti: TracPrestazioni e attività dei dipendenti ks.
- Analisi comportamentale: Analizza dati dettagliati sul comportamento degli utenti all'interno delle app per ricavarne informazioni utili.
- Impostazioni di monitoraggio personalizzabili: Consente di adattare le regole di monitoraggio a casi d'uso specifici.
- Approfondimenti sulla dashboard: Offre visibilità e informazioni utili attraverso una dashboard completa.
2) OWASP
Migliori Apri Web Application Security Project (OWASP) è un'organizzazione no-profit mondiale dedicata al miglioramento della sicurezza del software. Il progetto rilascia diversi strumenti per il penetration testing di vari ambienti e protocolli software. Gli strumenti principali includono:
- Proxy attacco Zed (ZAP) — uno strumento integrato per i test di penetrazione.
- Controllo delle dipendenze OWASP — analizza le dipendenze del progetto rispetto alle vulnerabilità note.
- Progetto di ambiente di test Web OWASP — una raccolta curata di strumenti e documentazione sulla sicurezza.
3) Wireshark
Wireshark è uno strumento di analisi di rete precedentemente noto come Ethereal. Cattura i pacchetti in tempo reale e li visualizza in un formato leggibile dall'uomo. Wireshark è open source e funziona su Linux, Windows, macOS, Solaris, NetBSD, FreeBSD e molti altri sistemi. I dati possono essere visualizzati tramite un'interfaccia grafica o attraverso l'utilità da riga di comando TShark.
4) w3af
w3af è un framework per l'analisi e l'individuazione di attacchi alle applicazioni web. Ha tre categorie di plug-in: discovery, audit e attack, che comunicano tra loro. Un plug-in discovery cerca URLIl plug-in di audit li invia al tester, che esegue la scansione alla ricerca di vulnerabilità, e il plug-in di attacco tenta quindi di sfruttarle.
Miti e fatti sui test di sicurezza
Diversi miti persistenti rallentano i programmi di sicurezza. L'elenco seguente associa a ciascun mito il fatto che ne è alla base.
Mito #1: Una piccola impresa non ha bisogno di una politica di sicurezza.
Fatto: Ogni persona e ogni azienda necessitano di una politica di sicurezza.
Mito #2: I test di sicurezza non offrono alcun ritorno sull'investimento.
Fatto: I test di sicurezza mettono in luce aree di miglioramento che aumentano l'efficienza, riducono i tempi di inattività e consentono la massima produttività.
Mito #3: L'unico modo per essere al sicuro è scollegare il sistema.
Fatto: La sicurezza effettiva deriva da una valutazione della postura di sicurezza allineata ai requisiti aziendali, legali e di settore, non dalla disconnessione della rete.
Mito #4: L'acquisto di ulteriori software o hardware tutelerà l'attività.
Fatto: Gli strumenti non sostituiscono la strategia. Prima di tutto, è fondamentale comprendere il panorama delle minacce, poi scegliere le misure di controllo più adatte.





