Il penetration test è tra le più importanti tematiche per la sicurezza delle aziende.
La sicurezza informatica non è un elemento da trattare con leggerezza: se ben implementata, rende più sicuri i processi e, in generale, l’azienda.
Si tratta di una sfida che si rinnova ogni giorno: le minacce sono sempre più presenti e sempre più raffinate.
In questo contesto, il penetration test diventa uno strumento necessario per salvaguardare la sicurezza informatica di un’azienda e analizzare le sue capacità di difesa.
In questo articolo vedremo proprio come implementare il penetration test.
Indice dei contenuti
Fasi del penetration test
Per un’analisi completa ed efficace bisogna procedere in modo schematico, seguendo una serie di procedure manuali e automatiche ben definite.
Vediamo nel dettaglio quali sono le fasi per eseguire il penetration test:
Fase preliminare
In questa fase l’azienda sceglie il consulente che eseguirà il test, decide la modalità d’azione e definisce le tempistiche e gli obiettivi del test. Inoltre, vengono analizzate le caratteristiche della rete che verrà sottoposta al test.
Information gathering
In questa fase vengono raccolte tutte le informazioni indispensabili per l’esecuzione delle fasi successive. Viene individuata la superficie di attacco mediante la raccolta delle informazioni su asset in-scope, l’enumerazione di servizi, utenti e applicazioni, e mediante la scansione delle porte. Lo scopo dell’information gathering è quello di raccogliere dati sul bersaglio.
Vulnerability scan and analysis
In questa fase vengono eseguite scansioni automatizzate e semi-automatizzate non invasive, con l’obiettivo di rilevare le vulnerabilità note all’interno della rete informatica. Si prosegue con l’esecuzione di verifiche manuali tese a eliminare gli eventuali falsi positivi.
Vulnerability assessment e vulnerability spotting
Una fase critica, durante la quale vengono individuati i punti deboli e quali siano le aree maggiormente soggette a un attacco. Successivamente, mantenendo le linee guida stabilite in fase preliminare, vengono impiegate le informazioni per preparare l’attacco effettivo.
Exploitation
È qui che avviene l’attacco vero e proprio. Il penetration tester tenta di accedere al sistema, aggirando i controlli di sicurezza e comportandosi come un vero e proprio criminale. Durante questa fase è possibile identificare vulnerabilità non note, codificandone gli exploit.
Post exploitation
Le attività si concentrano sulla valutazione del valore dell’asset compromesso, sulla base di due fattori: valore dei dati contenuti nell’asset e capacità della macchina di compromettere altri dispositivi.
Ripristino
Il penetration tester cancella le tracce del proprio passaggio, riportando l’ordine e ristabilendo la situazione iniziale.
Reporting
Vengono esaminati i risultati e stilato il rapporto completo, comprendente le informazioni utili (modalità di attacco, pericoli/effetti delle azioni compiute, dati sulla vulnerabilità). Vengono ricostruiti i percorsi intrapresi dal tester per forzare la rete, accedere ad essa sfruttando le vulnerabilità.
È importante ricordare che ogni test ha una validità limitata nel tempo. Inoltre, l’analisi avrà un esito molto diverso in base alla modalità con la quale si decide di procedere al test.
Progettazione e pianificazione del penetration test
Nessun lavoro può essere svolto in modo corretto senza un’adeguata preparazione.
Possiamo immaginare il penetration test come a un gioco di ruolo, o a un esercizio di immedesimazione: è necessario pensare come un hacker.
Infatti, la figura che si occupa di questo lavoro si chiama hacker white hat, o hacker etico, che agisce solo dopo un’analisi accurata e dopo aver ottenuto il permesso dal proprietario della rete.
Per questo è necessaria una pianificazione, e quindi è importante partire da tre elementi:
- una comprensione della struttura della rete, per capire a fondo le potenziali minacce e trovare un punto d’incontro tra le aspettative del cliente e le possibilità tecniche del penetration test
- una definizione degli obiettivi il più precisi possibili, concordata con l’azienda.
Alcuni di loro possono essere la scelta dei sistemi da testare, oppure la selezione delle modalità (white, gray o black box, a seconda di quanto sia approfondita la conoscenza pregressa del sistema) - un’attenta identificazione e analisi delle risorse aziendali che saranno necessarie per il processo. Infatti, è cruciale per una riuscita ottimale del test che tutti gli asset siano chiari, per non rischiare di sottovalutare o dimenticare qualche nodo del sistema.
Uno degli elementi più importanti quando si inizia a pianificare e implementare un penetration test è una definizione dettagliata di tutti i passaggi.
Questo è fondamentale per due ragioni: la prima è l’evitamento, ove possibile, di interruzioni del servizio, e la seconda è la necessità di rendere le operazioni potenzialmente reversibili.
Non ultima, è da considerare l’importanza anche di una tutela legale. La gestione sicura dei dati e della privacy sono più importanti che mai in questo contesto, e vanno protetti attraverso protocolli stringenti e GDPR.
Come eseguire efficacemente un penetration test?
Abbiamo parlato del bisogno di rendere reversibili le operazioni di implementation test, per ragioni di sicurezza: questo è anche il motivo per cui ogni singolo passaggio è accuratamente documentato.
L’importante è che, durante la procedura, non vengano mai danneggiati i sistemi mentre viene testata la loro vulnerabilità.
Proprio per la delicatezza dell’intero processo, i test vengono spesso eseguiti in una replica dell’ambiente, clonato per l’occasione. Solo così è possibile svolgere la simulazione d’attacco in un contesto sicuro, che permette di prendere nota delle eventuali debolezze del sistema in modo realistico e attendibile, ma senza metterne a rischio l’integrità e la sicurezza.
Le procedure essenziali per il corretto svolgimento del test sono molte, e solo tenere una traccia di quello che succede in ogni secondo permette di migliorare e capire dove agire per salvaguardare la sicurezza aziendale.
Ed è in questa fase che l’esperienza dell’hacker etico si fa più preziosa.
L’accordo prevede un’aderenza rigorosa a quanto concordato in precedenza: ogni tecnica utilizzata deve essere prevista nell’accordo tra il professionista e l’azienda stessa, altrimenti è da considerarsi illegale.
Le prime reconnaissance e scanning, sono essenziali per la raccolta di tutti i dati e per scoprire tutti i potenziali punti deboli e le falle del sistema.
L’exploitation è la fase più delicata e rivelatrice quando si implementa un penetration test: si tratta del momento in cui le debolezze del sistema vengono fisicamente attaccate, cercando di vincerle e di penetrare nella rete prescelta, attraverso l’utilizzo delle già citate tecniche da hacker e con l’uso di tool specifici.
Software e tool utili
I tool migliori per eseguire i test sono:
- SQL map. Considerato il tool più efficace, è in grado di identificare le vulnerabilità di tipo SQL Injection e vanta un ottimo motore interno;
- Metasploit. Trattasi di un framework open source che rileva informazioni sulle vulnerabilità e semplifica le operazioni di testing;
- Nessus. Un software impiegato per la scansione di ogni tipo di vulnerabilità. Suggerisce soluzioni e fornisce report dettagliati;
- Nmap. Un software open source capace di identificare il sistema operativo in uso;
- Burp Suite. Particolarmente adatto ai test sulle web application, è l’ideale in ogni fase di analisi.
L’importanza della reportistica di un penetration test
L’ultima fase, ma non per importanza, è quella della reportistica.
Nel documento vengono raccolte tutte le vulnerabilità e le falle scoperte durante il test, passaggio essenziale per offrire una visione dettagliata dello stato del sistema.
Questo file è cruciale per migliorare il sistema di sicurezza, capire nel dettaglio quali problematicità sono emerse senza trascurare nessuna di esse – da quella microscopica a quelle più gravi – per poter agire con tempestive contromisure preventive.
Per questo è cruciale rivolgersi a personale esperto e ad ethical hacker competenti, per una progettazione efficace e utile all’azienda.
Cosa deve contenere il Report Pen Test
Una volta terminato il penetration test, il team incaricato ha la responsabilità di fornire un report altamente dettagliato riguardo i risultati dell’analisi. In particolare, il report pentest deve contenere:
- un executive summary, che fornisce una panoramica ad alto livello del risultato del test. Questo sommario è destinato a utenti non tecnici e personalità impegnate nel decision making aziendale;
- il report completo, contenente una descrizione dettagliata dei risultati dell’analisi. Trattasi di un documento rivolto a professionisti della sicurezza IT;
- un action plan report, un documento utile per la presentazione di un piano strategico dettagliato e di una guida alla mitigazione delle vulnerabilità;
- l’information gathering report, il quale documenta il processo di raccolta iniziale delle informazioni effettuato in fase di intelligence gathering;
- l’automated vulnerability scan and assessment. Presenta i risultati delle scansioni automatiche di vulnerabilità;
- i report tecnici come l’exploiting report e il post-expoiting report;
- altri allegati contenenti dettagli, dati grezzi, materiale di supporto o informazioni aggiuntive e rilevanti.
Frequenza consigliata
Un singolo pentest può dare utili feedback, ma non è sufficiente per garantire la sicurezza.
Le analisi dovrebbero, infatti, essere eseguite con regolarità per offrire una panoramica affidabile dello stato della rete.
I dati rilevati perdono di validità nel momento in cui si verifica un qualsiasi cambiamento o si attua una modifica. Per questo si consiglia di eseguire un test ogni volta che si aggiungono o modificano infrastrutture o applicazioni di rete, quando si aggiornano le politiche di sicurezza aziendale, nel caso in cui si installino nuove sedi fisiche e qualora si applichi una patch di sicurezza.
Desideri parlare con un nostro esperto? Contattaci
Ultime News Cybersecurity
-
NIS2, cos’è e come inserire la direttiva in azienda
7 Giugno 2024 -
Come prevenire gli attacchi ransomware
25 Maggio 2024 -
Ransomware: gestione avanzata, tendenze e futuro
16 Maggio 2024 -
Black Hat Hacker: Storia, Strategie, Esempi e Confronti
29 Gennaio 2024 -
Pharming: Cos’è, Tipologie e Come prevenirlo
21 Dicembre 2023 -
Cyber Warfare: cos’è, tipologie, esempi e come combatterla
18 Dicembre 2023 -
Dark web: cos’è, come accedere e cosa si trova
1 Dicembre 2023
Sicurezza informatica e cybersecurity
-
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 -
Cos’è un Ransomware, come si prende e come proteggersi
28 Aprile 2023 -
Che cos’è un malware e come affrontarlo?
24 Aprile 2023