Lavorare con la rete significa, inevitabilmente, essere esposti a potenziali attacchi e intrusioni indesiderate, che potrebbero causare la perdita di dati sensibili o la compromissione del sistema.
Come prevenire i possibili attacchi e garantire maggiore sicurezza all’infrastruttura? Uno strumento essenziale è il penetration test: una risorsa che consente alle organizzazioni di testare i sistemi di difesa adottati e capire quanto l’infrastruttura IT è realmente protetta.
Indice dei contenuti
Cos’è il Penetration Test?
Il penetration test, conosciuto anche come pentest, è la simulazione realistica di uno dei tipi attacchi informatici. Questo test ha l’obiettivo di testare le vulnerabilità della rete o del sistema operativo.
Il team incaricato di attuare un penetration test si cala completamente nei panni di un vero hacker. Il pentest coinvolge la rete ma non solo: è infatti uno strumento utile anche per sistemi operativi, dispositivi mobili, server, web application, siti web e molto altro. Interessa qualsiasi sistema esposto a Internet e qualsiasi piattaforma legata a una rete.
Il penetration test è una pratica di sicurezza informatica svolta da un esperto hacker white hat, non scevra di problematiche e rischi: innanzitutto, infatti, il pentest deve essere effettuato solo se il proprietario del sistema ha dato il suo consenso esplicito. Prima di condurre un penetration test è fondamentale ottenere l’autorizzazione all’azione, per evitare che questa pratica possa violare normative e leggi.
È essenziale svolgere tale analisi poiché le vulnerabilità possono avere un impatto catastrofico per la sicurezza della rete, comportando:
- una perdita dei dati e la compromissione dell’integrità e della riservatezza delle informazioni;
- accessi non autorizzati;
- interruzione dei servizi e quindi un grave danno a livello operativo;
- la violazione delle normative e delle politiche di sicurezza, con conseguenti danni reputazionali e possibili sanzioni legali;
- l’esecuzione di un codice malevolo e l’apertura di scenari di attacco più pericolosi.
Differenza tra penetration test e vulnerability assessment
Sulla base di quanto detto, la migliore soluzione è quella di inserire all’interno delle politiche di cyber security aziendale, sia il penetration test che il vulnerability assessment. Il campo d’azione, così come gli obiettivi dei due strumenti di analisi, presentano importanti differenze. Scopriamo quali sono i 5 tratti che distinguono penetration test e vulnerability assessment.
Quantità e profondità dell’analisi
La prima differenza tra pen test e VA, che è anche la più importante, è di tipo quantitativo. Il VA esegue un check-up completo del sistema, analizzando ogni criticità individuata e assegnando a ciascuna di esse un livello di pericolosità, sulla base del quale viene formulata una soluzione in grado di risolvere la falla. Il pen test, invece, si concentra su un unico punto debole del sistema, la falla più pericolosa ed evidente. Questo ethical hack attack non prende in considerazione tutte le altre criticità, ma solo la vulnerabilità considerata più pericolosa in caso di attacco hacker, con l’obiettivo di individuarne le cause e prevenirne le conseguenze.
Modalità di esecuzione
La seconda delle differenze tra penetration test e vulnerability assessment riguarda le modalità di esecuzione. Il VA è una procedura non invasiva, generalmente automatizzata e che non richiede un intervento manuale. La durata di un VA è pari circa a una settimana. Questo test può essere svolto durante qualsiasi ora della giornata ed è utile sia per piccole aziende che per studi professionali o imprese dalla struttura più articolata. Il pen test, invece, ha un impatto particolarmente aggressivo sul sistema informatico. Trattandosi di un attacco hacker, danneggia la stabilità della rete violando la cyber security, pur essendo un test di simulazione.
Frequenza del test
La terza differenza tra penetration test e vulnerability assessment riguarda la frequenza delle analisi. Mentre il VA può essere eseguito regolarmente, almeno una volta al mese, il pen test richiede particolari condizioni e non è possibile svolgere questo test frequentemente. La rete informatica, infatti, perderebbe continuamente stabilità provocando un danno economico piuttosto elevato.
Grado di automazione
La quarta differenza tra penetration test e vulnerability assessment riguarda il livello di automazione dei test. Mentre il VA è essenzialmente una procedura automatica (viene utilizzato uno scanner elettronico per eseguire una scansione globale dell’infrastruttura IT), il pen test prevede innanzitutto una fase di pianificazione e di raccolta informazioni. Solo successivamente si procede con il test, svolto manualmente in modo da simulare un vero attacco hacker.
Livello di rischio
L’ultima delle differenze tra penetration test e vulnerability assessment è il rispettivo livello di rischio. Il VA, essendo una scansione globale delle problematiche del sistema, non prevede alcuna controindicazione. Il pen test è invece molto più invasivo: potrebbe provocare il blocco, un fermo operativo o anche una violazione dei dati aziendali, con conseguente danno alle tecnologie. Un altro fattore da considerare, per quanto riguarda il pen test, è la tempistica: le attività risultano molto più lunghe a livello temporale. L’investimento economico, inoltre, è piuttosto alto.
Tabella riepilogativa:
DIFFERENZE | PENETRATION TEST | VULNERABILITY ASSESSMENT |
Quantità e profondità analisi | Analisi di una sola vulnerabilità. | Scansione globale delle vulnerabilità. |
Modalità di esecuzione | Impatto aggressivo sul sistema informatico. Danneggia la stabilità della rete violando la cyber security. | Procedura non invasiva, generalmente automatizzata e che non richiede un intervento manuale. |
Frequenza dei test | Richiede particolari condizioni e non è possibile svolgere questo test frequentemente. | Può essere eseguito regolarmente, almeno una volta al mese. |
Grado di automazione | Deve essere svolto manualmente. | Procedura automatica. |
Livello di rischio | Rischio alto (blocco, fermo operativo o violazione dei dati aziendali, con conseguente danno alle tecnologie). | Nessuna controindicazione. |
Come si esegue?
Il primo, fondamentale step per eseguire il penetration test prevede l’individuazione del professionista che dovrà occuparsi dell’analisi. A volte si sceglie il personale IT interno all’azienda, ma più comunemente ci si affida a consulenti esterni, gli ethical hacker. Ogni attività deve essere regolata da un preciso contratto e tutto ciò che non rientra nell’accordo è considerato illegale.
Successivamente si decide quanti e quali informazioni fornire e si concorda la modalità con la quale verrà svolto il test.
Esistono 3 diversi approcci:
- black box testing: come un reale hacker, il tester non conosce i sistemi di difesa adottati o il codice sorgente e, quindi, procede alla cieca. I risultati del test sono strettamente connessi all’abilità del penetration tester;
- gray box testing: il penetration tester ha una conoscenza parziale della situazione. Si focalizzerà sulle aree di cui si hanno maggiori informazioni;
- white box testing: chi simula l’attacco ha una conoscenza approfondita della struttura da esaminare (dagli schemi di rete ai codici sorgente delle web application) e può così testare nel dettaglio ogni dispositivo senza limitarsi a un’analisi superficiale.
Tipologie ed esempi
Non esiste un solo tipo di penetration test: i fattori che entrano in gioco durante un attacco sono molteplici e per ogni situazione è stato delineato un determinato tipo di test con caratteristiche precise.
Le differenze più importanti riguardano il target e lo scenario analizzato. Per quanto riguarda il target, questa suddivisione tiene conto di cosa effettivamente si sta attaccando. Per ogni bersaglio specifico esiste infatti un diverso tipo di test:
- network pentest: analizza sicurezza di rete, host e dispositivi. Questo test può essere esterno (e quindi passare attraverso i server o i dispositivi di rete raggiungibili tramite Internet) o interno (accedendo fisicamente o grazie a connessioni remote);
- web application pentest: Esamina la sicurezza delle web application. Identifica i punti deboli dall’interno, il possibile errore umano o componenti non protette;
- mobile app pentest: Valuta la sicurezza di applicazioni mobile. Focalizzato su comunicazioni, dati salvati e sicurezza server;
- API pentest: Verifica la sicurezza delle API e permette di garantire il corretto funzionamento dei meccanismi di autenticazione e autorizzazione;
- IoT Pentest: Esamina la sicurezza delle infrastrutture IoT. Analizza le vulnerabilità di password, servizi e aggiornamenti.
Quando si simula un attacco, inoltre, è importante capire qual è lo scenario da prendere in considerazione. Il grado di realismo e difficoltà del test può essere più o meno alto e influenzare profondamente il procedimento. Esistono 5 tipologie di scenario, ognuno con caratteristiche differenti:
- external testing. Simula un attacco esterno privo di conoscenza dell’infrastruttura. Utilizza l’approccio black box;
- internal testing. Viene eseguito internamente per valutare l’impatto di un attacco proveniente dall’interno dell’azienda, ricreando scenari in cui sono i dipendenti a forzare il sistema;
- targeted testing. Viene svolto da consulenti esterni ed ethical hacker. Un’analisi che ha puramente uno scopo formativo in quanto mostra il classico modus operandi di un malintenzionato;
- blind testing. Utilizza un approccio black box, vengono eseguiti avendo come informazione solo il nome dell’azienda. Sono molto realistici ma anche molto dispendiosi;
- double blind testing. Simile al blind testing, ma in questo caso il reparto IT non è a conoscenza della simulazione. Pertanto, il test viene impiegato per valutare la preparazione e le reazioni del personale tecnico.
Alcuni esempi di penetration test includono pentest di:
- rete, in grado di simulare un attacco esterno, identificare le vulnerabilità e i punti di ingresso non autorizzati nella rete;
- applicazioni web, che individua le vulnerabilità e corregge iniezioni SQL, XSS e la gestione delle sessioni;
- sistemi operativi, che simula un attacco interno individuando configurazioni errate e difese non adeguate;
- applicazioni mobile, il quale identifica le vulnerabilità e le minacce specifiche delle app mobile;
- reti wireless, che analizza la sicurezza delle reti wi-fi per poter individuare eventuali punti di accesso non autorizzati, rilevando configurazioni errate o password deboli;
- infrastrutture cloud, che individua vulnerabilità specifiche e configurazioni errate;
- social engineering, utile per testare la conoscenza e consapevolezza di utenti/dipendenti riguardo le tecniche di phishing e di ingegneria sociale.
Rischi tecnici per la sicurezza informatica
Nonostante il penetration test rappresenti un’attività essenziale per la mitigazione delle vulnerabilità, questo test comporta diversi rischi tecnici. Scopriamo i più importanti:
- interruzione dei servizi. Le attività di scansione possono provocare un sovraccarico di risorse e una conseguente interruzione temporanea;
- risposta inefficace alle emergenze. Durante l’esecuzione del penetration test potrebbero sorgere imprevisti ed eventi di sicurezza, contro i quali un’organizzazione può non essere adeguatamente preparata;
- produzione di falsi positivi o falsi negativi, come rapporti di vulnerabilità erronei o il non rilevamento di vulnerabilità reali;
- conseguenze sui dispositivi e sugli utenti, che potrebbero subire danni o problemi a seguito del test;
- rischio di esposizione delle informazioni sensibili qualora le attività del pentest non vengano adeguatamente controllate;
- condivisione involontaria di informazioni riservate con terze parti;
- violazione delle normative e della compliance aziendale.
Desideri parlare con un nostro esperto? Contattaci
Ultime News Cybersecurity
-
Cos’è un Ransomware? Ecco come attacca e come puoi proteggerti
14 Ottobre 2024 -
Come prevenire gli attacchi ransomware
25 Maggio 2024 -
Ransomware: gestione avanzata, tendenze e futuro
16 Maggio 2024 -
Come implementare il penetration test?
6 Aprile 2024 -
Black Hat Hacker: Storia, Strategie, Esempi e Confronti
29 Gennaio 2024
Sicurezza informatica e cybersecurity
-
Cosa sapere per affrontare gli attacchi da SQL Injection
2 Dicembre 2024 -
Strategie avanzate contro il malware
2 Maggio 2024 -
Come prevenire, rilevare e analizzare il malware
29 Aprile 2024 -
Crittografia simmetrica e asimmetrica: significato e differenze
7 Settembre 2023 -
Che cos’è un malware e come affrontarlo?
24 Aprile 2023