Un penetration test, noto anche come pen test, è un cyber attacco simulato su un sistema informatico, una rete o un'applicazione Web per identificare le vulnerabilità che un utente malintenzionato potrebbe sfruttare.

Lo scopo di un pen test è valutare la sicurezza di un sistema e fornire consigli per migliorarlo. Si tratta quindi di un approccio proattivo per valutare l'efficacia delle misure di sicurezza esistenti di un'organizzazione e identificare eventuali punti deboli prima che possano essere sfruttati da un utente malintenzionato.

Le fasi di un penetration test

Un penetration test viene tipicamente eseguito in 4 fasi (più la creazione del report), che si sono consolidate nel tempo come framework condiviso dai professionisti, che, sebbene sequenziali, di fatto vengono anche ripetute a seconda dello sviluppo delle operazioni:

Reconnaissance: questa è la fase iniziale in cui il tester raccoglie informazioni sul sistema di destinazione, come i suoi indirizzi IP, l'architettura di rete e le porte aperte.

Scanning: il tester utilizza vari strumenti per scansionare il sistema di destinazione alla ricerca di vulnerabilità e identificare potenziali vettori di attacco.

Exploitation: il tester tenta di sfruttare le vulnerabilità identificate durante la fase di scansione per ottenere l'accesso non autorizzato al sistema di destinazione.

Post-Exploitation: il tester valuta l'impatto dello sfruttamento e determina il livello di accesso e controllo che ha sul sistema di destinazione.

Reporting: il tester prepara un report che documenta i risultati del penetration test e fornisce raccomandazioni per mitigare le vulnerabilità identificate.

Ovviamente il tester deve eseguire solo azioni che sono state autorizzate dal proprietario del sistema di destinazione e che il test non deve causare alcun danno o interruzione al sistema o ai suoi utenti. A seconda del grado di conoscenza del target, e quindi della quantità di informazioni a disposizione del tester, si parla di test black-box, gray-box e white-box. Nel primo caso (black-box) il tester non ha alcuna conoscenza o informazione preliminare sul sistema bersaglio e opera allo stesso modo di un cyber criminale esterno che dispone di informazioni limitate sul bersaglio. Nel caso di un gray-box invece il tester ha una conoscenza limitata del sistema di destinazione e della sua infrastruttura, utile per simulare un attacco da parte di un insider che ha accesso solo ad alcune informazioni sul target. Infine nel caso di un penetration test white box il tester ha piena conoscenza del sistema di destinazione, inclusa la sua architettura, il codice e l'infrastruttura interna. Questo tipo di test è utile per trovare vulnerabilità che potrebbero essere difficili da rilevare con informazioni limitate.

E' evidente che ogni tipo di test ha i suoi vantaggi e svantaggi e la scelta del tipo di test dipende dagli specifici obiettivi di sicurezza di un'organizzazione e dall'ambito del test. In generale, il test black-box è il più realistico e utile per simulare gli attacchi del mondo reale.

Tipologie di penetration test

Esistono diversi tipi di penetration test:

External penetration testi: si concentra sulla superficie di attacco rivolta a Internet, come applicazioni Web, firewall e altri sistemi accessibili al pubblico.

Internal penetration test: si concentra sulla rete interna, simulando un attacco da parte di un insider o di qualcuno che ha già ottenuto l'accesso alla rete.

Blind penetration test: questo tipo di test viene eseguito con informazioni limitate sul sistema bersaglio, simulando uno scenario di attacco del mondo reale in cui un utente malintenzionato ha poche o nessuna informazione sul bersaglio.

Double-Blind penetration test: è simile al precedente, ma il tester e l'organizzazione target sono completamente separati e non hanno comunicazione diretta durante il test.

Targeted penetration testing: si focalizza su un aspetto specifico del sistema di destinazione, ad esempio un'applicazione specifica o un componente di rete.

Web application penetration test: è rivolto alla sicurezza delle applicazioni Web e dell'infrastruttura associata.

Mobile application penetration test: questo tipo di test si concentra in particolare sulla sicurezza delle applicazioni mobili e dei relativi sistemi di back-end.

La scelta del tipo di pen test dipende dagli obiettivi di sicurezza specifici di un'organizzazione e dall'ambito del test.

Utilità del penetration test

Il Penetration test per un'organizzazione è vantaggioso non solamente per permettere di adottare o implementare le necessarie misure di sicurezza in conseguenza alle vulnerabilità emerse in fase di test, ma anche, e soprattutto per la conformità alle normative sulla sicurezza informatica. Le norme europee, ad esempio, in particolare il Regolamento GDPR, prevedono che il titolare del trattamento si doti di specifiche procedure volte a verificare l'efficacia delle misure di sicurezza adottate. Non è espresso specificatamente e non è previsto un obbligo, ma certamente il Penetration Test è uno strumento efficace per provare la compliance al GDPR.

Left B - Web Idea

newsletter image