Un penetration test è un tentativo autorizzato di entrare in un'applicazione o in un sistema, condotto da una persona con il permesso scritto di chi lo possiede, per trovare i punti deboli prima che li trovi qualcun altro. Si distingue da una scansione automatica perché non si limita a elencare i difetti noti: li sfrutta, li concatena e mette alla prova la logica del vostro business. È la stessa azione di un'intrusione, resa legittima dall'autorizzazione.
Cosa lo distingue da una scansione
La confusione più comune è fra penetration test e scansione automatica. La scansione confronta il sistema con un catalogo di difetti noti e li elenca: utile, veloce, economica. Il penetration test parte da lì ma va oltre: una persona prova davvero a entrare, mette insieme più difetti piccoli in un varco grande, e soprattutto mette alla prova la logica specifica della vostra applicazione — cose che nessun catalogo conosce, perché dipendono da cosa fa il vostro software.
| Scansione automatica | Penetration test | |
|---|---|---|
| Chi lo fa | Un programma | Una persona, con strumenti a supporto |
| Cosa trova | Difetti già catalogati | Anche i difetti di logica e le combinazioni |
| Risultato | Un elenco | Una dimostrazione di cosa è sfruttabile |
| Costo | Basso | Maggiore |
Quando serve e quando è prematuro
- Serve quando l'applicazione gestisce dati dei clienti, pagamenti o processi su cui gira il fatturato.
- Serve quando un cliente, una gara o un obbligo (anche il GDPR, art. 32) chiede la prova di aver testato le difese.
- Serve dopo un cambiamento importante dell'applicazione, e comunque periodicamente.
- È prematuro se non avete ancora fatto l'igiene di base: aggiornamenti, accessi in ordine, una scansione dei difetti noti. In quel caso conviene partire da lì, e il test dopo.
Domande frequenti
- Ogni quanto si fa un penetration test?
- Di norma una volta l'anno e dopo ogni cambiamento importante dell'applicazione, perché il software cambia e le difese vanno riverificate. Fra un test e l'altro, controlli più economici e frequenti (scansioni dei difetti noti) coprono la continuità.
- Quanto costa?
- Dipende dal perimetro — quante funzioni, quanti ruoli, quanta logica — non da un listino. Un sito vetrina e un gestionale complesso sono lavori di ordine diverso. Un preventivo serio parte da qualche domanda sul vostro sistema, non da un prezzo fisso.
- È rischioso per la mia applicazione?
- Un test condotto bene è pensato per trovare, non per rompere: si concorda perimetro, finestra e un contatto per fermare tutto. Il carico è controllato. Il rischio vero è farlo senza queste attenzioni, o affidarlo a chi non le mette.