Un test di penetrazione è un tipo di valutazione della sicurezza eseguita su un sistema informatico in cui la persona che esegue la valutazione tenta di violare il sistema. L’obiettivo del test è determinare se qualcuno con intenti dannosi può o meno entrare nel sistema e a cosa può accedere una volta che il sistema è stato violato. I test di penetrazione sono offerti da un certo numero di aziende specializzate nella sicurezza dei sistemi informatici e sono spesso fortemente raccomandati per sistemi e aziende di tutte le dimensioni, poiché i danni a un sistema informatico causati da un attacco ostile possono essere costosi e imbarazzanti.
Esistono diversi approcci al test di penetrazione. In un approccio scatola nera, nessuna informazione sul sistema viene fornita alla persona che esegue il test. Lui o lei inizia da zero per cercare potenziali exploit e irrompere nel sistema. In un test della scatola bianca, vengono fornite tutte le informazioni, consentendo al tester di simulare un lavoro interno o una fuga di informazioni. Alcune aziende scelgono un approccio ibrido, in cui vengono fornite alcune informazioni e altre devono essere ricercate.
Nel corso di un test di penetrazione, l’esperto di sicurezza può simulare la cancellazione o l’alterazione di dati, il furto di file, l’inserimento di codice dannoso e una serie di altre attività. Il test di penetrazione può rallentare il sistema, il che rende importante la tempistica del test; le aziende vogliono evitare di interferire con le proprie operazioni durante l’esecuzione di valutazioni di sicurezza.
Le persone che eseguono i test di penetrazione hanno un’ampia libreria di competenze informatiche e alcuni hanno una storia come hacker che li ha familiarizzati con i numerosi modi in cui i sistemi informatici possono essere sfruttati. Assumere hacker esperti come consulenti di sicurezza può effettivamente essere una mossa commerciale molto saggia per un’azienda specializzata in sicurezza informatica e di rete, poiché gli hacker spesso hanno le conoscenze e le informazioni più aggiornate e sono abituati ad avvicinarsi ai sistemi informatici dal ruolo di qualcuno con malizia, piuttosto che il ruolo di un esperto di sicurezza preoccupato.
Per semplici test, è possibile utilizzare un sistema automatizzato per eseguire un test di penetrazione. Ciò riduce le spese e consente alle aziende di eseguire facilmente test casuali quando ritengono che potrebbe essere necessario. Il test manuale è più approfondito e richiede tempo, ma può produrre risultati più completi. Un essere umano creativo e determinato può rilevare potenziali exploit che un programma automatizzato potrebbe non rilevare.
Una volta concluso un test di penetrazione, i risultati vengono scritti e presentati al cliente. Insieme ai risultati, viene generato un elenco di raccomandazioni, con l’azienda di sicurezza che indica le aree in cui la sicurezza potrebbe essere migliorata e fornisce suggerimenti per il miglioramento.