Guida · Test di penetrazione · Pentest

Test di penetrazione: cos'è, quando serve e come leggere il report

Un test di penetrazione, o penetration test, simula un attacco autorizzato contro un sistema per capire se una debolezza è davvero sfruttabile e quale danno potrebbe causare. Questa guida spiega come funziona, che tipi esistono, quando serve, cosa deve contenere un buon report e come scegliere un fornitore.

Cos'è un test di penetrazione, in una frase

È un test di sicurezza autorizzato e controllato, in cui un tester prova a sfruttare le debolezze di un sistema, entro limiti concordati, per dimostrarne l'impatto reale e indicare come correggerle.

La parola chiave è "sfruttabile". Un elenco di possibili problemi dice che qualcosa potrebbe andare male. Un penetration test dice che cosa può andare male, come, e con quale conseguenza.

Penetration test e vulnerability assessment: le differenze

Sono attività complementari, spesso confuse. La differenza sta nell'obiettivo, nel metodo e nel tipo di risultato.

Aspetto Vulnerability assessment Penetration test
Obiettivo Individuare e classificare le vulnerabilità Verificare cosa è sfruttabile e quale impatto ha
Metodo Prevalentemente automatico, ampio Prevalentemente manuale, mirato
Falsi positivi Possibili, da verificare Ridotti dalla verifica di sfruttabilità
Frequenza tipica Periodica o a ogni cambiamento Annuale o dopo cambiamenti significativi
Risultato Elenco prioritizzato Prova di sfruttamento e piano di correzione

I tipi di test: black box, grey box, white box

Il tipo di test dipende da quante informazioni e accessi il tester riceve. Non esiste un tipo migliore in assoluto: dipende dalla domanda a cui serve rispondere.

Black box

Il tester parte senza informazioni interne, come un attaccante esterno. Mostra cosa è raggiungibile da fuori, ma può richiedere più tempo per arrivare alle aree più profonde.

Grey box

Il tester riceve informazioni parziali, ad esempio un account di prova o una mappa delle funzioni. È il tipo più usato per le applicazioni web, perché copre bene il controllo tra utenti.

White box

Il tester conosce il codice, l'architettura e la configurazione. Trova più problemi in meno tempo, ed è utile prima di un rilascio importante o per una revisione approfondita.

Il tipo va concordato

Il tipo di test va scritto nello scope. Se non è definito, è difficile capire cosa il report copra davvero.

Quando serve un test di penetrazione

Non esiste una frequenza unica. Ci sono però situazioni in cui il test è quasi sempre opportuno, e altre in cui è già richiesto.

Prima del lancio

Una nuova applicazione o un sito che tratta dati sensibili dovrebbe essere testato prima di andare online, quando correggere costa ancora poco.

Gare e capitolati

Molte richieste di offerta chiedono una verifica di sicurezza documentata come requisito di partecipazione o di esecuzione.

Questionari e requisiti normativi

Per PCI DSS, NIS2, GDPR art. 32 o ISO/IEC 27001 il test è una delle evidenze tecniche richieste, insieme ai processi.

Dopo modifiche importanti

Un cambio di infrastruttura, un nuovo sistema di login o un'integrazione di pagamento sono buoni motivi per ripetere il test.

Le fasi di un penetration test

Un test ben condotto segue un percorso riconoscibile. Ogni fase deve produrre un output, altrimenti il lavoro non è verificabile.

1. Pianificazione e scope

Si definiscono obiettivi, perimetro, tipo di test, finestre temporali, contatti e regole di ingaggio, con autorizzazione firmata.

2. Ricognizione

Si mappano host, servizi, tecnologie, endpoint e flussi applicativi. Più accurata è questa fase, più completo sarà il test.

3. Analisi e sfruttamento

Si cercano debolezze e si verifica se possono essere sfruttate, in modo controllato, senza azioni distruttive e senza uscire dal perimetro.

4. Documentazione e retest

Si scrive il report, si discute con il team e, dopo le correzioni, si verifica che le vulnerabilità siano chiuse.

Cosa deve contenere un buon report

Se manca una di queste voci, il report non è utile né per il team né per il committente. Si può controllare un report ricevuto da un fornitore proprio con questa lista.

Perimetro e metodologia

Sistemi testati, date, tipo di test e metodo dichiarato, per esempio OWASP WSTG o PTES.

Prova riproducibile

Per ogni vulnerabilità: passi di riproduzione, evidenza e impatto. Chi legge deve poter rifare il test.

Rischio e priorità

Gravità, sfruttabilità ed esposizione reale, con una priorità di correzione chiara e motivata.

Piano di remediation e retest

Azioni correttive con responsabili suggeriti, e una verifica finale che chiude il ciclo con lo stato delle vulnerabilità.

Un esempio di voce ben scritta: "Endpoint di dettaglio ordine, parametro identificatore. Un utente autenticato con ruolo cliente può leggere l'ordine di un altro cliente cambiando l'identificatore. Prova: richiesta e risposta allegate. Impatto: dati personali e di pagamento di altri clienti. Correzione: verificare che l'ordine appartenga all'utente nella richiesta. Riverifica: confermata chiusa."

Come scegliere un fornitore

Alcune domande da fare prima di firmare, valide per qualsiasi fornitore.

Autorizzazione scritta

Il fornitore deve chiederti un'autorizzazione firmata prima di iniziare il test. Se non lo fa, è un segnale di allarme.

Scope e regole di ingaggio

Perimetro, limiti e finestre devono essere scritti, non lasciati a un accordo verbale.

Metodologia e personale

Chiedi quale metodologia usano e chi esegue il lavoro, con referenze verificabili e, se previste, certificazioni del personale.

Copertura assicurativa

Chiedi per iscritto se è attiva una polizza di responsabilità civile professionale che copra il lavoro svolto.

Penetration test e aspetti legali

L'accesso a un sistema informatico senza autorizzazione può configurare reati, come l'accesso abusivo previsto dall'art. 615-ter del codice penale. Per questo l'autorizzazione del proprietario del sistema è il primo documento da firmare, e il perimetro deve coincidere con quello autorizzato.

Anche il trattamento dei dati eventualmente incontrati durante il test deve essere concordato: il tester accede ai dati solo nella misura necessaria a dimostrare un'esposizione.

Quanto costa

Il costo dipende da perimetro e profondità, e confrontare preventivi è utile solo se lo scope è lo stesso. Per un dominio web esterno, il nostro piano Perimetro singolo costa €490 una tantum, IVA esclusa. Il listino completo è nella home.

Domande frequenti sui test di penetrazione

Un test di penetrazione è legale?

Solo con l'autorizzazione scritta del proprietario del sistema. Senza autorizzazione, l'accesso a un sistema può configurare il reato di accesso abusivo (art. 615-ter c.p.).

Un test di penetrazione rallenta il sito?

Lavoriamo con limiti concordati e finestre definite prima di iniziare, per ridurre al minimo l'impatto sul servizio.

Qual è la differenza con un red team?

Il red team simula un attaccante con obiettivi e tempi più ampi, spesso senza avvisare il personale. Un penetration test ha un perimetro e regole definiti in anticipo.

Quanto tempo serve per il report?

Per un dominio web esterno consegniamo il report in 5 giorni lavorativi dalla firma dell'autorizzazione.

Un penetration test trova tutte le vulnerabilità?

No. Un test dimostra cosa è sfruttabile nel perimetro, con il tipo di accesso e il tempo concordati. Non garantisce l'assenza di altre vulnerabilità, per questo serve ripeterlo e affiancarlo ad altri controlli.

Non sai se il tuo sistema ha bisogno di un test di penetrazione?

Mandaci un dominio: in 24 ore ti diciamo per iscritto se serve, su quale perimetro e cosa guarderemmo.

Leggi il perimetro gratis