Le fasi del Penetration Testing

L

NOVITA’ 2019!

Parliamoci chiaro: non puoi pensare di diventare un ETHICAL HACKER senza conoscere almeno un LINGUAGGIO DI PROGRAMMAZIONE!

Accedi adesso al corso “PYTHON PER HACKER – 2019”

Oltre 10 ORE di VIDEO LEZIONI e oltre 100 CODICI PRONTI DA ESEGUIRE!




In questo articolo ti presenterò quella che è la metodologia, generalmente accettata, del penetration testing.

Prima di tutto un elenco, poi esamineremo ogni voce nel dettaglio:

1-RACCOLTA DELLE INFORMAZIONI – INFORMATION GATHERING

2-SCANSIONE DELLA RETE – NETWORK SCANNING

3-ENUMERAZIONE – ENUMERATION

4-RICERCA VULNERABILITA’ – VULNERABILITY ASSESSMENT

5-ACCESSO AL SISTEMA – EXPLOITATION

6-MANTENERE ACCESSO AL SISTEMA – POST EXPLOITATION

7-REPORT FINALE – FINAL REPORT

Ognuna di queste fasi è necessaria per la buona riuscita della nostra attività. Seppur non obbligatorio è consigliabile effettuare l’attività seguendo l’ordine numerico delle varie fasi per come le abbiamo concepite.

Detto questo, non perdiamo altro tempo e cominciamo la nostra analisi.

La raccolta delle informazioni

Lo so che stai pensando: “ma quali informazioni ho bisogno di raccogliere? E per cosa?” La risposta è semplice e immediata: tutto! E’ necessario, possibilmente con un certo anticipo, iniziare ad indagare su molteplici aspetti del nostro bersaglio: quale business tratta, di cosa si occupa, quali sono le persone che ci lavorano e magari che strumenti vengono utilizzati. In poche parole, ogni informazione che riusciamo ad individuare tornerà utile in un secondo momento, senza ignorarne o sottovalutarne nessuna.

Poi, sempre in questa fase, si inizia ad analizzare l’infrastruttura di rete, utilizzando informazioni di pubblico dominio. E’ importante sottolineare e non dimenticare che, durante la raccolta delle informazioni, si evita di interagire direttamente con il nostro bersaglio; ci affidiamo ad alcuni servizi, a volte direttamente disponibili sul web, tra cui:

Google;

Ricerca Whois;

DNS;

Social media;

Metadati;

Siti di annunci di lavoro;

Tool come Maltego e Recon-ng;

Motori di ricerca specifici come Shodan.

La scansione della rete

Le informazioni ottenute nella fase precedente, ci permettono di entrare a fondo, nel cuore del nostro bersaglio e di cominciare quella che è la fase di scansione della rete. Attenzione: in questa fase cominciamo ad interagire, in modo diretto, con il bersaglio e quindi, c’è il rischio di essere identificati, sopratutto se non vengono prese le relative precauzioni!

Giusto per farti un paragone, effettuare una scansione di rete è un po’ come trovarsi in un ampio viale di una grande città, pieno di negozi e di vetrine e ad un tratto, iniziare a forzare la serratura di ognuno di questi, nella speranza che qualcuno risulti aperto e incustodito.

Considera che, per il momento, non effettueremo alcun accesso all’interno, ma prenderemo semplicemente atto che la porta è aperta. Questo è ciò che viene fatto durante la scansione della rete e non è detto che la nostra attività passi del tutto inosservata.

Enumerazione

Enumerare la rete significa scoprirne ed elencarne le risorse disponibili. Supponiamo che, durante la fase precedente, abbiamo trovato una probabile porta aperta: ora è necessario scoprire quali informazioni possono essere enumerate relativamente ad un certo servizio, associato a quella porta. So che questa definizione può non essere del tutto assimilata, ma gli esempi che vedremo successivamente renderanno le cose più semplici.

Questa fase viene spesso sottovalutata anche se fornisce informazioni utili e preziose.

Ricerca delle vulnerabilità

Adesso che abbiamo scoperto quali porte e servizi sono aperti, si procede con l’individuare tutte le possibili vulnerabilità relativamente al nostro bersaglio. Per farlo possiamo appoggiarci a tool automatici che ci semplificano il lavoro ma generano una miriade di falsi positivi oppure, se abbiamo più esperienza, si procede con un’analisi di tipo manuale.

Aggiungo che la strada migliore è utilizzare entrambi i metodi: alternare l’analisi manuale ai tool automatici.

Accesso al sistema

Non basta trovare le vulnerabilità, quello che dobbiamo fare dopo è provare a sfruttarle così da guadagnare e ottenere l’accesso al sistema, ed è proprio quello che faremo in questa fase: per ogni vulnerabilità trovata cercheremo la relativa via d’accesso al sistema. Non sarà sempre possibile, ma dobbiamo prendere in considerazione ogni strada: effettuare un penetration test non significa solo accedere ad un sistema ma è qualcosa di più ampio: dobbiamo cercare di identificare ogni punto di accesso non sicuro nella rete, così da informare il cliente ed aiutarlo a porre rimedio rapidamente.

Mantenere l’accesso

Cosa succede se capita un evento che ci fa perdere questo accesso che ci siamo così faticosamente guadagnati? Saremo nuovamente in grado di accedere al sistema? Ecco, in questa fase ci preoccupiamo proprio di questo: lo scopo è quello di crearci un accesso sempre disponibile, cosi da rientrare sul nostro bersaglio in un secondo momento.

Il report finale

A questo punto, se tutto è andato bene, il nostro ingaggio è terminato. Consegneremo al cliente il report finale con il riepilogo di tutta l’attività svolta e con i suggerimenti per poter migliorare la propria rete.

Aggiungi un commento

Articoli recenti

Categorie