Test di vulnerabilità
Il Vulnerability Testing, chiamato anche Vulnerability Assessment, è un processo di valutazione dei rischi per la sicurezza nei sistemi software per ridurre la probabilità di minacce. Lo scopo del test di vulnerabilità è ridurre la possibilità per intrusi / hacker di ottenere l'accesso non autorizzato ai sistemi. Dipende dal meccanismo denominato Vulnerability Assessment and Penetration Testing (VAPT) o VAPT testing.
Una vulnerabilità è un errore o una debolezza nelle procedure di sicurezza del sistema, nella progettazione, nell'implementazione o in qualsiasi controllo interno che possa comportare la violazione della politica di sicurezza del sistema.
In questo tutorial imparerai-
- Cos'è la valutazione delle vulnerabilità
- Perché la valutazione delle vulnerabilità
- Processo di valutazione delle vulnerabilità e test di penetrazione (VAPT)
- Come eseguire il test di vulnerabilità
- Tipi di scanner di vulnerabilità
- Strumenti per la scansione delle vulnerabilità
- Vantaggi della valutazione delle vulnerabilità
- Svantaggi della valutazione delle vulnerabilità
- Confronto tra Vulnerability Assessment e Penetration Testing
- Metodi di test delle vulnerabilità
Perché la valutazione delle vulnerabilità
- È importante per la sicurezza dell'organizzazione.
- Il processo di individuazione e segnalazione delle vulnerabilità, che fornisce un modo per rilevare e risolvere i problemi di sicurezza classificando le vulnerabilità prima che qualcuno o qualcosa possa sfruttarle.
- In questo processo i sistemi operativi, il software applicativo e la rete vengono scansionati per identificare il verificarsi di vulnerabilità, che includono progettazione di software inappropriata, autenticazione non sicura, ecc.
Processo di valutazione delle vulnerabilità
Ecco il processo di valutazione delle vulnerabilità passo passo per identificare le vulnerabilità del sistema.
Passaggio 1) Obiettivi e obiettivi : - Definire gli obiettivi e gli obiettivi dell'analisi delle vulnerabilità.
Passaggio 2) Ambito : - Durante l'esecuzione della valutazione e del test, l'ambito dell'incarico deve essere chiaramente definito.
Di seguito sono riportati i tre possibili ambiti esistenti:
- Test Black Box: - Test da una rete esterna senza alcuna conoscenza preliminare della rete e dei sistemi interni.
- Gray Box Testing: - Test da reti esterne o interne con la conoscenza della rete interna e del sistema. È la combinazione di Black Box Testing e White Box Testing.
- White Box Testing: - Test all'interno della rete interna con la conoscenza della rete e del sistema interno. Noto anche come test interno.
Fase 3) Raccolta delle informazioni : - Ottenere il maggior numero di informazioni sull'ambiente IT come reti, indirizzo IP, versione del sistema operativo, ecc. È applicabile a tutti e tre i tipi di Scopes come Black Box Testing, Gray Box Testing e White Box Testing.
Passaggio 4) Rilevamento delle vulnerabilità : - In questo processo, gli scanner delle vulnerabilità vengono utilizzati per eseguire la scansione dell'ambiente IT e identificare le vulnerabilità.
Fase 5) Analisi e pianificazione delle informazioni : - Analizzerà le vulnerabilità identificate per elaborare un piano per la penetrazione nella rete e nei sistemi.
Come eseguire la valutazione delle vulnerabilità
Di seguito è riportato il processo passo passo su Come eseguire la valutazione delle vulnerabilità :
Passaggio 1) Configurazione:
- Inizia la documentazione
- Autorizzazioni sicure
- Strumenti di aggiornamento
- Configura strumenti
Passaggio 2) Esecuzione del test:
- Esegui gli strumenti
- Esegui il pacchetto di dati acquisito (un pacchetto è l'unità di dati instradati tra un'origine e la destinazione. Quando viene inviato un file, ad esempio, un messaggio di posta elettronica, un file HTML, una richiesta URL (Uniform Resource Locator), ecc. da un luogo all'altro su Internet, il livello TCP di TCP / IP divide il file in una serie di "blocchi" per un instradamento efficiente, e ciascuno di questi blocchi sarà numerato in modo univoco e includerà l'indirizzo Internet della destinazione. i blocchi sono chiamati pacchetti. Quando tutti i pacchetti sono arrivati, verranno riassemblati nel file originale dal livello TCP all'estremità ricevente durante l'esecuzione degli strumenti di valutazione
Passaggio 3) Analisi delle vulnerabilità:
- Definizione e classificazione delle risorse di rete o di sistema.
- Assegnare priorità alle risorse (Es: - Alta, Media, Bassa)
- Identificazione di potenziali minacce a ciascuna risorsa.
- Sviluppare una strategia per affrontare prima i problemi prioritari.
- Definizione e implementazione di modi per ridurre al minimo le conseguenze in caso di attacco.
Passaggio 4) Segnalazione
Passaggio 5) Riparazione:
- Il processo di correzione delle vulnerabilità.
- Eseguito per ogni vulnerabilità
Tipi di scanner di vulnerabilità
- Basato su host
- Identifica i problemi nell'host o nel sistema.
- Il processo viene eseguito utilizzando scanner basati su host e diagnosticano le vulnerabilità.
- Gli strumenti basati su host caricheranno un software mediatore sul sistema di destinazione; traccerà l'evento e lo riferirà all'analista della sicurezza.
- Basato sulla rete
- Rileverà la porta aperta e identificherà i servizi sconosciuti in esecuzione su queste porte. Quindi rivelerà le possibili vulnerabilità associate a questi servizi.
- Questo processo viene eseguito utilizzando scanner basati sulla rete.
- Basato su database
- Identificherà l'esposizione alla sicurezza nei sistemi di database utilizzando strumenti e tecniche per prevenire le SQL injection. (Iniezioni SQL: - Inserimento di istruzioni SQL nel database da parte di utenti malintenzionati, che possono leggere i dati sensibili da un database e possono aggiornare i dati nel database.)
Strumenti per la scansione delle vulnerabilità
Intruso
Intruder è un potente scanner di vulnerabilità online che rileva i punti deboli della sicurezza nell'ambiente IT. Offrendo controlli di sicurezza leader del settore, monitoraggio continuo e una piattaforma di facile utilizzo, Intruder protegge le aziende di tutte le dimensioni dagli hacker.
Caratteristiche:
- La migliore copertura contro le minacce della categoria con oltre 10.000 controlli di sicurezza
- Verifica la presenza di debolezze di configurazione, patch mancanti, debolezze dell'applicazione (come SQL injection e cross-site scripting) e altro
- Analisi automatica e prioritizzazione dei risultati della scansione
- Interfaccia intuitiva, veloce da configurare ed eseguire le prime scansioni
- Monitoraggio proattivo della sicurezza per le vulnerabilità più recenti
- Connettori AWS, Azure e Google Cloud
- Integrazione API con la tua pipeline CI / CD
Categoria | Attrezzo | Descrizione |
---|---|---|
Basato su host | STATISTICA | Scansiona più sistemi nella rete. |
TARA | Tiger Analytical Research Assistant. | |
Caino e Abele | Recupera la password annusando la rete, crackando la password HTTP. | |
Metasploit | Piattaforma open source per lo sviluppo, il test e l'exploit del codice. | |
Basato sulla rete | Cisco Secure Scanner | Diagnostica e ripara i problemi di sicurezza. |
Wireshark | Analizzatore di protocollo di rete open source per Linux e Windows. | |
Nmap | Utilità Open Source gratuita per il controllo della sicurezza. | |
Nessus | Auditing senza agenti, reportistica e integrazione della gestione delle patch. | |
Basato su database | Dieta SQL | Porta dello strumento di attacco del dizionario per il server SQL. |
Auditor sicuro | Consentire all'utente di eseguire enumerazione, scansione, controllo e test di penetrazione e analisi forense sul sistema operativo. | |
DB-scan | Rilevamento di Trojan di un database, rilevamento di Trojan nascosti mediante scansione di base. |
Vantaggi della valutazione delle vulnerabilità
- Sono disponibili strumenti Open Source.
- Identifica quasi tutte le vulnerabilità
- Automatizzato per la scansione.
- Facile da eseguire regolarmente.
Svantaggi della valutazione delle vulnerabilità
- Alto tasso di falsi positivi
- Può facilmente rilevare tramite il firewall del sistema di rilevamento delle intrusioni.
- Spesso non riescono a notare le ultime vulnerabilità.
Confronto tra Vulnerability Assessment e Penetration Testing
Valutazione di vulnerabilità | Test di penetrazione | |
---|---|---|
Lavorando | Scopri le vulnerabilità | Identifica e sfrutta le vulnerabilità |
Meccanismo | Scoperta e scansione | Simulazione |
Messa a fuoco | Larghezza su profondità | Profondità su larghezza |
Copertura della completezza | Alto | Basso |
Costo | Basso-moderato | Alto |
Eseguito da | Personale interno | Un utente malintenzionato o un Pen Tester |
Conoscenza del tester | Alto | Basso |
Quanto spesso correre | Dopo che ogni attrezzatura è stata caricata | Una volta all'anno |
Risultato | Fornire dettagli parziali sulle vulnerabilità | Fornire dettagli completi sulle vulnerabilità |
Metodi di test delle vulnerabilità
Test attivo
- Test inattivo, un tester introduce nuovi dati di test e analizza i risultati.
- Durante il processo di test, i tester creano un modello mentale del processo, che crescerà ulteriormente durante l'interazione con il software sotto test.
- Durante il test, il tester si coinvolgerà attivamente nel processo di scoperta dei nuovi casi di test e delle nuove idee. Ecco perché si chiama Active Testing.
Test passivi
- Test passivi, monitoraggio del risultato dell'esecuzione del software sottoposto a test senza introdurre nuovi casi di test o dati
Test di rete
- Il test di rete è il processo di misurazione e registrazione dello stato corrente del funzionamento della rete in un periodo di tempo.
- Il test viene effettuato principalmente per prevedere la rete che opera sotto carico o per scoprire i problemi creati da nuovi servizi.
- Dobbiamo testare le seguenti caratteristiche di rete: -
- Livelli di utilizzo
- Numero di utenti
- Utilizzo dell'applicazione
Test distribuiti
- I test distribuiti vengono applicati per testare le applicazioni distribuite, ovvero le applicazioni che lavorano con più client contemporaneamente. Fondamentalmente, testare un'applicazione distribuita significa testare separatamente le sue parti client e server, ma utilizzando un metodo di test distribuito, possiamo testarle tutte insieme.
- Le parti di prova interagiranno tra loro durante la prova di funzionamento. Questo li rende sincronizzati in modo appropriato. La sincronizzazione è uno dei punti più cruciali nei test distribuiti.
Conclusione
Nell'ingegneria del software, il test di vulnerabilità dipende da due meccanismi, vale a dire la valutazione della vulnerabilità e il test di penetrazione. Entrambi questi test differiscono l'uno dall'altro per forza e compiti che svolgono. Tuttavia, per ottenere un rapporto completo sui test di vulnerabilità, si consiglia la combinazione di entrambe le procedure.
Questo articolo è fornito da Syamini Sreedharan