Che cos'è il test di sicurezza? Tipi con esempio

Sommario:

Anonim

Che cos'è il test di sicurezza?

TEST DI SICUREZZA è un tipo di test del software che scopre vulnerabilità, minacce e rischi in un'applicazione software e previene attacchi dannosi da parte di intrusi. Lo scopo dei test di sicurezza è identificare tutte le possibili scappatoie e debolezze del sistema software che potrebbero comportare una perdita di informazioni, entrate, reputazione da parte dei dipendenti o di estranei all'Organizzazione.

Perché i test di sicurezza sono importanti?

L'obiettivo principale del test di sicurezza è identificare le minacce nel sistema e misurare le sue potenziali vulnerabilità, in modo che le minacce possano essere incontrate e il sistema non smetta di funzionare o non possa essere sfruttato. Aiuta anche a rilevare tutti i possibili rischi per la sicurezza nel sistema e aiuta gli sviluppatori a risolvere i problemi attraverso la codifica.

In questo tutorial imparerai-

  • Che cos'è il test di sicurezza?
  • Tipi di test di sicurezza
  • Come eseguire i test di sicurezza
  • Scenari di test di esempio per i test di sicurezza
  • Metodologie / approccio / tecniche per i test di sicurezza
  • Ruoli di test di sicurezza
  • Strumento di test di sicurezza
  • Miti e fatti sui test di sicurezza

Tipi di test di sicurezza:

Esistono sette tipi principali di test di sicurezza secondo il manuale della metodologia di test di sicurezza Open Source. Sono spiegati come segue:

  • Scansione delle vulnerabilità : viene eseguita tramite software automatizzato per eseguire la scansione di un sistema contro firme di vulnerabilità note.
  • Scansione della sicurezza: implica l'identificazione dei punti deboli della rete e del sistema e in seguito fornisce soluzioni per ridurre questi rischi. Questa scansione può essere eseguita sia per la scansione manuale che per quella automatica.
  • Test di penetrazione : questo tipo di test simula un attacco da parte di un hacker dannoso. Questo test prevede l'analisi di un particolare sistema per verificare la presenza di potenziali vulnerabilità a un tentativo di hacking esterno.
  • Valutazione del rischio: questo test comprende l'analisi dei rischi per la sicurezza osservati nell'organizzazione. I rischi sono classificati in basso, medio e alto. Questo test raccomanda controlli e misure per ridurre il rischio.
  • Controllo della sicurezza: si tratta di un'ispezione interna delle applicazioni e dei sistemi operativi per rilevare eventuali falle di sicurezza. È possibile eseguire un audit anche tramite l'ispezione riga per riga del codice
  • Hacking etico: sta hackerando i sistemi software di un'organizzazione. A differenza degli hacker malintenzionati, che rubano per i propri guadagni, l'intento è quello di esporre i difetti di sicurezza nel sistema.
  • Valutazione della postura: combina la scansione della sicurezza, l'hacking etico e le valutazioni del rischio per mostrare una posizione di sicurezza complessiva di un'organizzazione.

Come eseguire i test di sicurezza

È sempre stato concordato che il costo sarà maggiore se posticipiamo i test di sicurezza dopo la fase di implementazione del software o dopo la distribuzione. Pertanto, è necessario coinvolgere i test di sicurezza nel ciclo di vita dell'SDLC nelle fasi precedenti.

Esaminiamo i processi di sicurezza corrispondenti da adottare per ogni fase in SDLC

Fasi SDLC Processi di sicurezza
Requisiti Analisi della sicurezza per i requisiti e controllo dei casi di abuso / uso improprio
Design Analisi dei rischi per la sicurezza per la progettazione. Sviluppo del piano di test comprensivo di test di sicurezza
Codifica e unit test Test statici e dinamici e test white box di sicurezza
Test d'integrazione Test della scatola nera
Test di sistema Test Black Box e scansione delle vulnerabilità
Implementazione Penetration test, scansione delle vulnerabilità
Supporto Analisi dell'impatto delle patch

Il piano di test dovrebbe includere

  • Scenari o casi di test relativi alla sicurezza
  • Dati di test relativi ai test di sicurezza
  • Strumenti di test richiesti per i test di sicurezza
  • Analisi di vari output di test da diversi strumenti di sicurezza

Scenari di test di esempio per i test di sicurezza:

Esempi di scenari di test per darti un'idea dei casi di test di sicurezza -

  • Una password dovrebbe essere in formato crittografato
  • L'applicazione o il sistema non devono consentire agli utenti non validi
  • Controlla i cookie e il tempo di sessione per l'applicazione
  • Per i siti finanziari, il pulsante Indietro del browser non dovrebbe funzionare.

Metodologie / approccio / tecniche per i test di sicurezza

Nei test di sicurezza, vengono seguite diverse metodologie e sono le seguenti:

  • Tiger Box : questo hacking viene solitamente eseguito su un laptop che dispone di una raccolta di sistemi operativi e strumenti di hacking. Questo test aiuta i penetration tester e i security tester a condurre valutazioni e attacchi delle vulnerabilità.
  • Black Box : Tester è autorizzato a eseguire test su tutto ciò che riguarda la topologia di rete e la tecnologia.
  • Scatola grigia : al tester vengono fornite informazioni parziali sul sistema, che è un ibrido di modelli a scatola bianca e nera.

Ruoli di test di sicurezza

  • Hacker: accedono al sistema informatico o alla rete senza autorizzazione
  • Cracker - Entra nei sistemi per rubare o distruggere i dati
  • Ethical Hacker - Esegue la maggior parte delle attività di rottura ma con il permesso del proprietario
  • Script Kiddies o packet monkeys - Hacker inesperti con abilità nel linguaggio di programmazione

Strumento di test di sicurezza

1) Intruso

Intruder è uno scanner di vulnerabilità di livello aziendale facile da usare. Esegue oltre 10.000 controlli di sicurezza di alta qualità sull'infrastruttura IT, che includono, ma non sono limitati a: punti deboli della configurazione, punti deboli dell'applicazione (come SQL injection e cross-site scripting) e patch mancanti. Fornendo risultati con priorità intelligente e scansioni proattive per le minacce più recenti, Intruder aiuta a risparmiare tempo e protegge le aziende di tutte le dimensioni dagli hacker.

Caratteristiche:

  • Connettori AWS, Azure e Google Cloud
  • Risultati specifici perimetrale per ridurre la superficie di attacco esterna
  • Reportistica di alta qualità
  • Integrazioni di Slack, Microsoft Teams, Jira, Zapier
  • Integrazione API con la tua pipeline CI / CD

2) Owasp

L'Open Web Application Security Project (OWASP) è un'organizzazione mondiale senza scopo di lucro focalizzata sul miglioramento della sicurezza del software. Il progetto dispone di più strumenti per testare tramite penna vari ambienti e protocolli software. Gli strumenti di punta del progetto includono

  1. Zed Attack Proxy (ZAP - uno strumento di penetration test integrato)
  2. OWASP Dependency Check (esegue la scansione delle dipendenze del progetto e controlla le vulnerabilità note)
  3. OWASP Web Testing Environment Project (raccolta di strumenti di sicurezza e documentazione)

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. Fondamentalmente, è un analizzatore di pacchetti di rete che fornisce i dettagli minuti sui protocolli di rete, la decrittazione, le informazioni sui pacchetti, ecc. È un open source e può essere utilizzato su Linux, Windows, OS X, Solaris, NetBSD, FreeBSD e molti altri altri sistemi. Le informazioni recuperate tramite questo strumento possono essere visualizzate tramite una GUI o l'utilità TShark in modalità TTY.

4) W3af

w3af è un attacco alle applicazioni web e un framework di audit. Ha tre tipi di plugin; discovery, audit e attack che comunicano tra loro per qualsiasi vulnerabilità nel sito, ad esempio un plug-in di discovery in w3af cerca URL diversi per testare le vulnerabilità e lo inoltra al plug-in di audit che quindi utilizza questi URL per cercare vulnerabilità.

Miti e fatti sui test di sicurezza:

Parliamo di un argomento interessante sui miti e sui fatti dei test di sicurezza:

Mito n. 1 Non abbiamo bisogno di una politica di sicurezza poiché abbiamo una piccola impresa

Fatto: tutti e ogni azienda hanno bisogno di una politica di sicurezza

Mito # 2 Non vi è alcun ritorno sull'investimento nei test di sicurezza

Fatto: i test di sicurezza possono indicare aree di miglioramento che possono migliorare l'efficienza e ridurre i tempi di inattività, consentendo il massimo rendimento.

Mito n. 3 : l'unico modo per proteggerlo è scollegarlo.

Fatto: l'unico e il modo migliore per proteggere un'organizzazione è trovare "Perfect Security". È possibile ottenere una sicurezza perfetta eseguendo una valutazione della postura e confrontandola con giustificazioni aziendali, legali e di settore.

Mito # 4 : Internet non è sicuro. Acquisterò software o hardware per salvaguardare il sistema e salvare l'attività.

Fatto: uno dei problemi maggiori è l'acquisto di software e hardware per la sicurezza. Invece, l'organizzazione dovrebbe prima comprendere la sicurezza e poi applicarla.

Conclusione:

Il test di sicurezza è il test più importante per un'applicazione e controlla se i dati riservati rimangono riservati. In questo tipo di test, il tester interpreta il ruolo dell'aggressore e gioca intorno al sistema per trovare bug relativi alla sicurezza. I test di sicurezza sono molto importanti nell'ingegneria del software per proteggere i dati con tutti i mezzi.