BasiSicurezza Informatica

Penetration testing (pen-testing) : La via migliore per proteggersi.

White Hat Attacks – penetration testing 

Il Penetration testing, chiamato anche pen-testing 12o hacking etico, è la pratica di testare un sistema informatico, una rete o un’applicazione web per trovare le vulnerabilità di sicurezza che un aggressore potrebbe sfruttare. I test di penetrazione possono essere automatizzati con applicazioni software o eseguiti manualmente. In entrambi i casi, il processo comporta la raccolta di informazioni sul bersaglio prima del test, l’identificazione di possibili punti di ingresso, il tentativo di penetrare – virtualmente o per davvero – e la segnalazione dei risultati.

L’obiettivo principale del penetration test è quello di identificare i punti deboli della sicurezza. I test di penetrazione possono anche essere utilizzati per testare la politica di sicurezza di un’organizzazione, la sua aderenza ai requisiti di conformità, la consapevolezza della sicurezza dei suoi dipendenti e la capacità dell’organizzazione di identificare e di valutare la risposta ad un problema di sicurezza o attacco palese.

In genere, le informazioni sulle debolezze della sicurezza che vengono identificate o sfruttate attraverso il pen testing vengono aggregate e fornite ai responsabili IT e dei sistemi di rete dell’organizzazione, consentendo loro di prendere decisioni strategiche.

Un elemento chiave di questo processo è l’etica. I White Hat Attacks devono rispettare rigorose linee guida etiche, ottenere il consenso del proprietario del sistema e garantire che l’attività di test non causi danni o interruzioni non autorizzate.

 

Penetration testing
Penetration testing

Strategie di penetration testing

Un aspetto importante di ogni programma di test di penetrazione è la definizione dello scopo entro il quale i pen testers devono operare. Di solito, il campo di applicazione definisce quali sistemi, luoghi, tecniche e strumenti possono essere utilizzati in un penetration test. Limitare la portata del penetration test aiuta a focalizzare i membri del team – e i difensori – sui sistemi sui quali l’organizzazione ha il controllo.

Di solito, inizia tutto con il raccogliere tutte le informazioni disponibili sul sistema o sulla rete da testare. Questo include informazioni sulle applicazioni, i servizi, i protocolli di comunicazione e le configurazioni. Si passa poi all’utilizzo di strumenti di scansione e analisi e vengono individuate potenziali vulnerabilità, come porte aperte, servizi non aggiornati o configurazioni non sicure.

Una volta individuate, le vulnerabilità vengono analizzate per determinare il loro grado di criticità e il potenziale impatto su sistema o rete e in questa fase, i penetration tester cercano di sfruttare le vulnerabilità identificate per dimostrare la loro reale pericolosità. Questo viene fatto in modo controllato per evitare danni.

Test Test Test

Alla fine del test, viene redatto un rapporto dettagliato che include tutte le vulnerabilità trovate, insieme alle raccomandazioni per correggerle. Questo aiuta i proprietari del sistema a migliorare la loro sicurezza.

Inoltre dopo che le vulnerabilità sono state corrette, è importante eseguire un retesting per verificare che i problemi siano stati risolti in modo efficace.

Ma non dimentichiamo che sono possibili test avanzati come il social engineering, che coinvolge l’ingegneria sociale per ottenere informazioni sensibili.

 

Vediamo le tipologie

Ecco alcune delle principali strategie di pen-test utilizzate dai professionisti della sicurezza:

I test mirati vengono eseguiti dal team IT dell’organizzazione e dal team di penetration testing che lavorano insieme. A volte viene chiamato approccio “lights turned on” perché tutti possono vedere il test in corso.

I test esterni si rivolgono a server o dispositivi visibili esternamente di un’azienda, inclusi server di nomi di dominio, server di posta elettronica, server web o firewall. L’obiettivo è quello di scoprire se un aggressore esterno può entrare e fino a che punto può arrivare una volta ottenuto l’accesso.

Il test interno imita un attacco interno dietro il firewall da parte di un utente autorizzato con privilegi di accesso standard. Questo genere di prova è utile per valutare quanti danni potrebbe causare un dipendente scontento.

La prova cieca – blind testing

Il blind testing si basa sull’idea che il tester, o il team di tester, inizi l’attività di penetration test senza informazioni preliminari riguardo l’infrastruttura IT del target, ad eccezione, forse, del nome dell’azienda o del dominio web. Questo approccio costringe il tester a fare affidamento su tecniche di ricognizione e raccolta informazioni da fonti pubbliche per iniziare a delineare l’ambiente di rete e identificare potenziali vettori di attacco.

Fasi del Blind Testing

Ricognizione: La fase iniziale prevede la raccolta di informazioni sul target attraverso metodi di OSINT (Open Source Intelligence), come la ricerca di registrazioni DNS, la scansione di social media e l’analisi di database pubblici. L’obiettivo è raccogliere quanto più possibile circa la struttura IT del target senza interagire direttamente con i suoi sistemi.

Mappatura della Rete: Utilizzando le informazioni raccolte, il tester inizia a mappare la rete del target, identificando server, servizi attivi e possibili punti di ingresso. Questa fase può includere scanning di porte e servizi, nonché tentativi di enumerazione.

Identificazione delle Vulnerabilità: Con una mappa della rete in mano, il passo successivo è identificare le vulnerabilità sfruttabili. Ciò può comportare l’uso di strumenti automatizzati di scansione delle vulnerabilità, così come test manuali per verificare la presenza di debolezze note e meno note.

Sfruttamento: In questa fase, il tester cerca di sfruttare le vulnerabilità identificate per guadagnare accesso non autorizzato ai sistemi o ai dati. L’obiettivo è dimostrare concretamente il rischio associato a ciascuna vulnerabilità.

Post-Exploitation e Reporting: Una volta ottenuto l’accesso, il tester può cercare di espandere la propria presenza all’interno della rete per valutare cosa sia possibile ottenere o compromettere. Tutti i risultati, inclusi i metodi di attacco riusciti, le vulnerabilità sfruttate e le raccomandazioni per la mitigazione, sono poi documentati in un report dettagliato per l’organizzazione target.

Il test in doppio cieco – double-blind testing 

Prende il test in cieco e lo porta ad un ulteriore passo avanti. In questo tipo di test, solo una o due persone all’interno dell’organizzazione potrebbero essere a conoscenza dell’esecuzione di un test. I test in doppio cieco possono essere utili per testare il monitoraggio della sicurezza di un’organizzazione, l’identificazione degli incidenti e le sue procedure di risposta. I passaggi sono identici al Blind.

Black box testing 

I tester del  pen test devono trovare la loro strada nel sistema. I passaggi sono identici al Blind.

White box testing

Si fornisce ai penetration tester informazioni sulla rete di destinazione prima di iniziare il loro lavoro. Queste informazioni possono includere dettagli come gli indirizzi IP, gli schemi dell’infrastruttura di rete, i protocolli utilizzati e il codice sorgente. I passaggi sono identici al Blind.

L’utilizzo di diverse strategie di pen testing aiuta i team di test a focalizzarsi sui sistemi desiderati e ad avere un’idea dei tipi di attacchi più minacciosi.

Per gli Hacker Etici alle prime armi.

Prima di iniziare un Pen-Testing, mi raccomando firmate un regolare contratto con l’azienda che vuole essere testata. Non dimenticate di inserire gli indirizzi ip pubblici che utilizzerete e qualora in corso del test dovessero cambiare, comunicate i nuovi ip a chi vi ha commissionato il test. Inoltre il DDOS non è un test da fare, mai!

Ricordo che potete contattarmi tramite Facebook per correggere qualche mio errore o chiedere qualcosa di specifico.