Quali tipi di Penetration Test esistono?

Quali tipi di Penetration Test esistono?

Conoscere quali tipi di penetration test esistono è il primo passo per trovare una soluzione adatta alle proprie esigenze, soprattutto in un mondo dove la sicurezza informatica diventa sempre più importante.

Per sapere di più su cos’è un penetration testing, leggi il nostro articolo.

In questo editoriale approfondiremo i vari tipi di Penetration Test esistenti:

I penetration test si differenziano tra di loro per diversi fattori, il tipo di infrastruttura che si andrà ad attaccare, la tipologia di informazioni fornite a priori ai tester ecc..

Inoltre i differenti test possono seguire metodologie e framework di penetration testing differenti, ognuna delle quali porterà a metodi, tempistiche e risultati differenti.

Quali sono i target di un Penetration Test?

Come anticipato, lo scopo di un penetration test è quello di scovare le vulnerabilità di un sistema e di valutare la severità dei rischi a cui si è esposti.

Il processo di pentest tuttavia può variare sostanzialmente nella modalità, nella durata e negli approcci utilizzati; questi fattori dipendono soprattutto da cosa si sta attaccando.

Essendo le modalità e le aree di interesse così differenti, i penetration test si sono diversificati e specializzati per ottenere i risultati migliori in un determinato ambito.

Ad oggi esistono dunque differenti tipi di penetration test che si focalizzano su target differenti:

Network pentest

Test il cui scopo è quello di verificare la sicurezza di una rete.

Questo pentest è particolarmente importante per due fattori: il primo è che interessa la vasta maggioranza degli aspetti di sicurezza all’interno dell’azienda, il secondo è che attacchi alle reti si stanno sviluppando e sofisticando sempre di più.

Il penetration test di una rete interessa la sicurezza di reti, host e dispositivi.

I penetration test alle reti possono essere di tipo:

Esterno, se passano attraverso server (siti web, serve mail, ecc…) o dispositivi di rete raggiungibili da internet - Questo tipo di test è utile a valutare l’impatto che possono avere gli attaccanti che non hanno accesso, fisico o remoto, alla rete aziendale.

Interno, se il test è svolto all’interno della rete aziendale, fisicamente o attraverso connessioni remote. L’attacco è orientato a scoprire che rischi si corrono se un malintenzionato riesce ad avere accesso alla rete. Questo genere di testing è particolarmente utile se si permette ai dipendenti di introdurre dispositivi elettronici personali in azienda (politica BYOD).

Un malware su dispositivi personali può espandersi nella rete e comprometterla.

Web application pentest

Si tratta di un penetration test per scoprire vulnerabilità e valutare la sicurezza in applicazioni web classiche o in single page app.

Questo tipo di test è specifico ma estremamente vasto, soprattutto per quanto riguarda i vettori d’attacco. Le falle di sicurezza in un sito web possono nascondersi nella logica del software stesso, nell’utilizzo di input da parte dell’utente che non vengono controllati accuratamente, dall’impiego di componenti non aggiornate o da configurazioni non sicure.

È possibile trovare dettagli specifici sul penetration test di applicazioni web nel manuale offerto da OWASP, consultabile gratuitamente online al link: https://www.owasp.org/images/1/19/OTGv4.pdf

Mobile app pentest

È un testing atto a trovare falle nella sicurezza di applicazioni mobile. Il penetration testing di applicazioni mobile è una modalità relativamente nuova e si concentra su alcuni punti focali ben definiti:

  • la bontà dell’architettura client-server implementata;

  • la sicurezza dei dati salvati sul dispositivo;

  • la verifica delle comunicazioni sicure;

  • la sicurezza dell’autenticazione;

  • la sicurezza della piattaforma server;

  • la presenza di vulnerabilità nel codice delle API e dei servizi di backend utilizzati dall’applicazione.

Un’applicazione può essere attaccata da diversi fronti e renderla sicura è un lavoro complesso. OWASP sta sviluppando la Mobile Security Testing Guide, un manuale per la programmazione sicura di applicazioni mobile e per il relativo penetration testing.

La prima versione è disponibile al link: https://mobile-security.gitbook.io/mobile-security-testing-guide/

API Penetration Test

Le API (Application programming interface) sono il modo in cui è possibile interfacciare un software con un server.

Le API sono estremamente comuni ed utilizzate, per questo motivo la sicurezza di questo strumento è fondamentale.

Un hacker potrebbe essere in grado di abusare delle API messe a disposizione dal server e compiere azioni malevole, accedere a dati sensibili o compromettere il servizio.

Per questo motivo, se si implementano delle API, pubbliche o ad utilizzo privato, è fondamentale rendere sicura questa interfaccia raggiungibile da chiunque sul web.

Durante il processo di penetration test delle API si verifica che le logiche dell’applicativo funzionino correttamente, soprattutto per quanto riguarda le meccaniche di autenticazione e autorizzazione. Inoltre si verifica accuratamente se e come il codice sanitizza l’input, questo passo è fondamentale per valutare la presenza di attacchi di tipo “injection”.

OWASP ha dedicato un progetto alla sicurezza delle API dove evidenzia le 10 vulnerabilità più comuni e spiega come testare se queste vulnerabilità sono presenti, ma anche come riparare eventuali problematiche. Il progetto è raggiungibile al link: https://owasp.org/www-project-api-security/

IoT Penetration Test

Il penetration testing di infrastrutture IoT (o Internet of Things) sta diventando una pratica sempre più richiesta. I dispositivi IoT sono ormai ovunque, dal settore automotive, a quello della sanità, passando per la persona e per le aziende.

Il penetration test IoT focalizza l’attenzione sul trovare falle di sicurezza nel funzionamento di queste infrastrutture allo scopo di estrarre informazioni o comprometterne il funzionamento.

I dispositivi IoT vengono testati per trovare vulnerabilità come:

  • Password deboli, “hard - coded” o facilmente intuibili

    Vulnerabilità comune su dispositivi IoT, spesso vengono mantenute le password di default o vengono lasciati attivi account di manutenzione con password specificate nel codice e dunque non modificabili;

  • Servizi insicuri messi a disposizione pubblicamente come dashboard o strumenti di diagnostica;

  • Problematiche all’ecosistema IoT come autorizzazioni ed autenticazioni insufficienti o logiche insicure tra back-end e dispositivi.

Vengono inoltre controllati meccanismi di aggiornamento dei dispositivi per verificare che siano sicuri, configurazioni insicure o sicurezza fisica dei dispositivi.

Sebbene esistano target differenti, questi non sono auto esclusivi. Di fatto un penetration test completo richiede che siano valutati tutti gli aspetti di sicurezza di un’infrastruttura, includendo, ovviamente, tutti i target interessati.

Penetration testing White Box, Grey Box o Black Box?

I penetration test non sono classificati esclusivamente in base ai target che testano, ma anche sul livello di conoscenza del sistema che i tester riceveranno prima di mettersi all’opera.

Sebbene la conoscenza di un’infrastruttura sia meglio rappresentata su uno spettro piuttosto che in classi distinte, il testing si divide in tre differenti tipi: Penetration testing White box, Penetration testing Black box e Penetration testing Grey box.

Penetration testing White box

Il penetration tester ha ricevuto informazioni approfondite sul target e sull’infrastruttura come una mappa della rete e credenziali di accesso utili ad effettuare i test.

Il penetration testing di tipo white box è una modalità assistita di simulazione di scenari. Grazie alle informazioni che vengono fornite al tester, come ad esempio la documentazione, il disegno dell’architettura, il codice sorgente, permette una copertura maggiore e fornisce una panoramica estensiva di ogni possibile vettore di attacco.

Sebbene il penetration testing white box permetta di risparmiare tempo inizialmente (perchè non sarà necessario effettuare una fase di reconnaissance), potrebbe comunque essere molto dispendioso in termini di tempo a causa dei numerosissimi vettori d’attacco che i penetration tester dovranno valutare e testare.

Penetration testing Black box

Scenario diametralmente opposto rispetto al penetration testing white box. Ai tester non viene fornita nessuna informazione riguardo l’infrastruttura da attaccare.

Il penetration tester vestirà il ruolo di un attaccante che tenta di compromettere la sicurezza dell’infrastruttura dall’esterno. Questo genere di testing è utile a modellare un attacco esterno e quindi il più plausibile e comune.

Il penetration testing black box richiederà la valutazione dei vettori di attacco raggiungibili dall’esterno. È da tenere a mente che sebbene questo attacco possa modellare situazioni specifiche, non offre una panoramica completa della sicurezza perché il tester non avrà la possibilità di esaminare tutti i vettori di attacco possibili.

Penetration testing Grey box

In questo scenario ai penetration tester vengono fornite solamente informazioni parziali, solitamente si tratta di credenziali per il login. Il penetration testing grey box permette di modellare situazioni in cui un hacker, dall’esterno ha ottenuto accesso alla rete interna, oppure per simulare una insider threat.

Il penetration testing grey box è una via di mezzo tra il white box ed il black box, di conseguenza è utile a testare in maniera realistica la sicurezza, senza però entrare nel merito di test troppo approfonditi.

Solitamente il grey box testing è la scelta preferibile se non si hanno particolari esigenze e se si desidera avere una panoramica sufficientemente completa della sicurezza.

Conclusioni

Prima di iniziare il processo di penetration testing è importante capire al meglio quale tipo di testing si adatta meglio alle proprie esigenze, in termini di valutazione della sicurezza, di tempistiche e di costi.

Di seguito è visibile una tabella che riassume brevemente i tipi di testing tra cui è possibile scegliere.

Tipologie di Penetration Testing

Richiedi maggiori informazioni a riguardo

Oppure chiamaci al
(+39) 045 4853232


Post Recenti

Visita il blog


Tags Popolari


🎉 Vogliamo parlarti! Fissa un appuntamento!