Quali sono le fasi dei test di penetrazione?

Non esiste un sistema completamente sicuro. Il test di penetrazione, abbreviato in pentesting, è una procedura di test specializzata che prevede la scansione, la valutazione e il rafforzamento di tutti gli elementi costitutivi di un sistema informativo contro potenziali attacchi informatici. Le aziende utilizzano siti di bug bounty per scoprire falle di sicurezza nei loro sistemi. Gli specialisti della sicurezza informatica che sono esperti nei test di penetrazione scoprono e divulgano le falle organizzative legalmente con i sistemi di bug bounty. Allora come funziona questo processo?

1. Raccolta e monitoraggio passivi delle informazioni

Nella prima fase di un bug bounty e penetration test, il tester deve raccogliere informazioni sul sistema bersaglio. Poiché esistono numerosi metodi di attacco e test, il penetration tester deve stabilire le priorità in base alle informazioni raccolte per determinare il metodo di test più appropriato.

Questo passaggio comporta l’estrazione di dettagli preziosi sull’infrastruttura del sistema di destinazione, come nomi di dominio, blocchi di rete, router e indirizzi IP all’interno del suo ambito. Inoltre, dovrebbero essere raccolte tutte le informazioni rilevanti che potrebbero migliorare il successo dell’attacco, come i dati dei dipendenti e i numeri di telefono.

I dati ottenuti da fonti aperte durante questa fase possono sorprendentemente fornire dettagli critici. Per raggiungere questo obiettivo, l’hacker etico deve sfruttare varie fonti, con particolare enfasi sul sito Web dell’istituzione bersaglio e sulle piattaforme dei social media. Raccogliendo meticolosamente queste informazioni, il tester pone le basi per un tentativo di bug bounty di successo.

Tuttavia, la maggior parte delle organizzazioni impone varie regole al penetration tester durante il bug bounty. È essenziale da un punto di vista legale non deviare da queste regole.

2. Raccolta e scansione attiva delle informazioni

Il penetration tester rileva quali dispositivi attivi e passivi operano all’interno dell’intervallo IP, in genere tramite raccolta passiva durante il bug bounty. Con l’aiuto delle informazioni ottenute durante questa raccolta passiva, il pentester deve determinare un percorso: deve stabilire le priorità e determinare esattamente quali test sono necessari.

Durante questa fase, è inevitabile che l’hacker ottenga informazioni sul sistema operativo (OS), porte aperte e servizi e le relative informazioni sulla versione sui sistemi live.

Inoltre, se l’organizzazione che richiede il bug bounty consente legalmente al penetration tester di monitorare il traffico di rete, le informazioni critiche sull’infrastruttura del sistema possono essere raccolte, almeno il più possibile. Tuttavia, la maggior parte delle organizzazioni non desidera concedere questa autorizzazione. In una situazione del genere, il penetration tester non deve andare oltre le regole.

3. Fase di analisi e test

In questa fase, il penetration tester, dopo aver capito come l’applicazione target risponderà ai vari tentativi di intrusione, cerca di stabilire connessioni attive con i sistemi che rileva essere attivi e cerca di effettuare richieste dirette. In altre parole, questa è la fase in cui l’hacker etico interagisce con il sistema bersaglio utilizzando efficacemente servizi come FTP, Netcat e Telnet.

Sebbene fallisca in questa fase, lo scopo principale qui è testare i dati ottenuti nelle fasi di raccolta delle informazioni e prendere appunti su di essi.

4. Tentativo di manipolazione e sfruttamento

Il penetration tester raccoglie tutti i dati raccolti nei processi precedenti per un unico obiettivo: tentare di ottenere l’accesso al sistema di destinazione nello stesso modo in cui lo farebbe un vero hacker malintenzionato. Questo è il motivo per cui questo passaggio è così critico. Perché durante la progettazione di una taglia di bug, i penetration tester dovrebbero pensare come hacker ostili.

In questa fase, il pentester cerca di infiltrarsi nel sistema, utilizzando il sistema operativo in esecuzione sul sistema di destinazione, le porte aperte e i servizi che servono su queste porte e i metodi di sfruttamento che possono essere applicati alla luce delle loro versioni. Poiché i portali e le applicazioni basati sul Web sono costituiti da così tanto codice e così tante librerie, c’è una superficie maggiore che un hacker malintenzionato può attaccare. A questo proposito, un buon penetration tester dovrebbe considerare tutte le possibilità e implementare tutti i possibili vettori di attacco consentiti dalle regole.

Richiede una seria competenza ed esperienza per poter utilizzare i metodi di sfruttamento esistenti con successo e flessibilità, senza danneggiare il sistema e senza lasciare tracce durante il processo di acquisizione del sistema. Questa fase del test di penetrazione è, quindi, la fase più critica. Affinché i team di calcolo forense intervengano durante un possibile attacco, il cyberattaccante deve seguire le tracce lasciate.

5. Tentativo di elevazione dei privilegi

Un sistema è forte quanto il suo anello più debole. Se un hacker etico riesce ad accedere a un sistema, di solito accede al sistema come utente con bassa autorità. In questa fase, il penetration tester dovrebbe aver bisogno di autorità a livello di amministratore, sfruttando le vulnerabilità nel sistema operativo o nell’ambiente.

Quindi, dovrebbero mirare a sequestrare altri dispositivi nell’ambiente di rete con questi privilegi aggiuntivi che hanno acquisito e, in definitiva, i privilegi utente di livello più alto come amministratore di dominio o amministratore di database.

6. Segnalazione e presentazione

Una volta completate le fasi del penetration test e del bug bounty, il penetration tester o il cacciatore di bug deve presentare all’organizzazione le vulnerabilità di sicurezza che ha rilevato nel sistema di destinazione, i passaggi seguiti e il modo in cui è stato in grado di sfruttare queste vulnerabilità con un rapporto dettagliato . Ciò dovrebbe includere informazioni come schermate, codici di esempio, fasi di attacco e cosa può causare questa vulnerabilità.

Il rapporto finale dovrebbe includere anche una proposta di soluzione su come colmare ogni lacuna di sicurezza. La sensibilità e l’indipendenza dei test di penetrazione dovrebbero rimanere un mistero. L’hacker etico non dovrebbe mai condividere informazioni riservate ottenute in questa fase e non dovrebbe mai abusare di queste informazioni fornendo informazioni errate, poiché generalmente è illegale.

Perché è importante il Penetration Test?

L’obiettivo finale dei test di penetrazione è rivelare quanto sia sicura l’infrastruttura di sistema dal punto di vista di un utente malintenzionato e chiudere eventuali vulnerabilità. Oltre a identificare i punti deboli nella posizione di sicurezza di un’organizzazione, misura anche la pertinenza della sua politica di sicurezza, testando la consapevolezza del personale sui problemi di sicurezza e determinando la misura in cui l’azienda ha implementato i principi di sicurezza informatica.

I penetration test stanno diventando sempre più importanti. Per analizzare la sicurezza nell’infrastruttura delle strutture aziendali e delle applicazioni personali, è fondamentale ottenere il supporto di penetration tester etici certificati.