Come prepararsi a un penetration test

Una checklist per il cliente: che cosa decidere, che cosa preparare e chi avvisare prima che i tester inizino, perché i giorni pagati siano dedicati ai test.

Pubblicato4 min di lettura

Un penetration test si paga a giornata. Ogni giorno che i tester passano ad aspettare un account, a indovinare come dovrebbe funzionare una funzionalità o bloccati dal tuo stesso firewall è un giorno non speso a cercare vulnerabilità. Gran parte di queste attese si può eliminare prima dell’inizio.

Decidi

Qual è la domanda? «Possiamo rilasciare in sicurezza il nuovo flusso di pagamento» e «che cosa può farci qualcuno da internet» portano a test diversi. Scrivi la domanda in una frase; il perimetro ne deriva.

Che cosa è nel perimetro e che cosa no? Elenca le applicazioni, gli indirizzi, gli ambienti. Elenca anche le esclusioni: il fornitore dei servizi di pagamento, i sistemi della capogruppo, il vecchio servizio che cade appena qualcuno lo guarda.

Quale ambiente? Un ambiente di staging che rispecchia la produzione è la scelta migliore: i tester possono lavorare a fondo e non si mette a rischio nulla di reale. Se esiste solo la produzione, concorda gli orari e le tecniche vietate.

Quanto sanno i tester? Un test con account e documentazione trova di più in una giornata di un test alla cieca. Un test alla cieca risponde a una sola domanda, circoscritta: che cosa ottiene un estraneo senza alcuna informazione. Decidi per quale dei due stai pagando.

Prepara

Account. Uno per ogni ruolo, e in due tenant separati se il prodotto prevede tenant: il controllo degli accessi tra clienti non si può testare con un solo cliente. Creali prima dell’inizio, accedi una volta con ciascuno e controlla che contengano dati realistici.

Documentazione. Le specifiche delle API, uno schema dell’architettura, una descrizione dei ruoli e dei principali flussi di lavoro. Documenti imperfetti sono meglio di nessun documento.

Accesso. Se l’ambiente di test è dietro una VPN o una lista di indirizzi consentiti, predisponi l’accesso in anticipo e provalo. Decidi se il web application firewall resta attivo. Se l’oggetto del test è l’applicazione, fai passare i tester attraverso il firewall; se l’oggetto è il firewall, lascialo attivo e dillo.

Dati. Popola l’ambiente di test con dati simili a quelli reali nella struttura, non nel contenuto. Dati personali reali in un ambiente di test sono un rilievo prima ancora che il test cominci.

Backup. Accertati che l’ambiente sottoposto a test si possa ripristinare. I tester sono prudenti; i backup servono per il caso in cui la prudenza non è bastata.

Avvisa

Il team operativo e il team di monitoraggio, a meno che il test non debba metterli alla prova. Comunica loro gli indirizzi di origine dei tester e le date. Altrimenti il primo giorno finisce con i tester bloccati e un incidente aperto.

Il fornitore di hosting o cloud, se la sua politica lo richiede. I grandi fornitori cloud non chiedono un preavviso per i test sulle tue risorse svolti entro le regole che pubblicano; le società di hosting più piccole spesso sì.

I fornitori i cui sistemi vengono toccati. Serve il loro consenso scritto.

Un referente, raggiungibile durante le ore di test, con l’autorità di prendere decisioni: prolungare un account, riavviare un servizio, fermare il test.

Firma

  • l’accordo di riservatezza (NDA), prima di consegnare qualsiasi cosa tra quelle elencate sopra;
  • il contratto;
  • la lettera di autorizzazione e le regole di ingaggio.

A che cosa serve ciascuno è spiegato in «Che cosa rende legale un penetration test».

Durante il test

  • Non rilasciare modifiche nell’ambiente sottoposto a test senza avvisare i tester. Un rilievo che sparisce durante la notte costa una giornata di confusione.
  • Non correggere i rilievi a test in corso, tranne quelli di gravità critica. Se ne correggi uno, dillo.
  • Rispondi subito alle domande. Un tester che chiede come dovrebbe funzionare una funzionalità di solito ha trovato qualcosa.
  • Aspettati subito i rilievi urgenti. Una vulnerabilità critica viene comunicata appena è confermata, non nel report finale.

Dopo il test

  • Leggi la sintesi con la direzione e i rilievi con i team tecnici. Sono scritti per lettori diversi.
  • Partecipa al debriefing. È l’ora meno costosa dell’incarico.
  • Pianifica le correzioni per priorità e avvisa i tester quando sono state rilasciate.
  • Usa il retest. Una correzione non verificata è un’ipotesi.
  • Tieni riservato il report. Finché le correzioni non sono applicate, è un manuale per attaccarti. Per clienti e auditor c’è la lettera di attestazione.

La checklist

Prima dell’inizio Fatto
Domanda e perimetro messi per iscritto, esclusioni comprese
Ambiente scelto, finestre di test concordate
Account creati per ogni ruolo, in due tenant se il prodotto prevede tenant
Documentazione consegnata
Accesso di rete predisposto e provato
Dati di test pronti, nessun dato personale reale
Backup verificati
Team operativo, monitoraggio e fornitori avvisati
Referente indicato
NDA, contratto, lettera di autorizzazione, regole di ingaggio firmati

La pagina di ogni servizio elenca che cosa serve da te per quel test specifico.

Richiesta

Dicci che cosa va testato

  • Verifica del sito gratuita
  • Risposta entro 1 giorno lavorativo
  • NDA prima di qualsiasi dettaglio tecnico
  • Prezzo fisso per gli incarichi a pagamento
  • Senza impegno

Richiedi una valutazione

Descrivi i sistemi e l’obiettivo. Un responsabile risponde entro 1 giorno lavorativo con domande di chiarimento e il passo successivo.

A chi rispondere

Rispondiamo a questo indirizzo, se non scegli un altro canale.

Un imprenditore individuale scrive il proprio nome.

Canale preferito
Che cosa valutare
Servizi di interesse

Scegli tutte le opzioni pertinenti.

Verifica gratuita

Verifichiamo gratuitamente il tuo sito

Se non troviamo problemi, ricevi gratuitamente anche il report. Paghi il report solo se troviamo problemi, e il suo prezzo dipende dal loro numero e dalla loro gravità.

Condizioni della verifica gratuita della sicurezza del sito

Sicurezza delle applicazioni

Infrastruttura e cloud

Simulazione di attacco

AI, Web3 e crittografia

Programmi e verifiche

Sicurezza delle applicazioni

Verifica gratuita della sicurezza del sito

Guardiamo il tuo sito dall’esterno, come fa un attaccante, e verifichiamo se può essere violato: impostazioni deboli, software non aggiornato, file esposti, moduli non sicuri. La verifica è gratuita.

Sicurezza delle applicazioni

Penetration test di applicazioni web

Proviamo a violare la tua applicazione web come farebbe un vero attaccante: accedere agli account di altre persone, leggere i dati di altri clienti, modificare prezzi o ordini. Scopri che cosa è possibile prima dei criminali.

Sicurezza delle applicazioni

Test di sicurezza delle API

Un’API è il canale attraverso cui la tua app, il tuo sito e i tuoi partner scambiano dati con i tuoi server. Verifichiamo che nessuno possa usarla per leggere o modificare dati non suoi.

Sicurezza delle applicazioni

Penetration test di applicazioni mobili

Esaminiamo la tua app iOS o Android e i server che la supportano: che cosa l’app conserva sul telefono, che cosa se ne può estrarre e se le sue richieste possono essere manomesse.

Sicurezza delle applicazioni

Revisione di sicurezza del codice

I nostri specialisti leggono il codice sorgente del tuo prodotto e trovano gli errori che portano a una violazione, compresi quelli che non si vedono dall’esterno.

Infrastruttura e cloud

Valutazione della sicurezza di cloud e Kubernetes

Verifichiamo come è configurato il tuo cloud (AWS, Azure, Google Cloud, Kubernetes): chi ha accesso a che cosa, quali dati sono aperti a internet e fin dove arriva un attaccante dopo il primo errore.

Infrastruttura e cloud

Penetration test dell’infrastruttura

Testiamo i tuoi server e la rete del tuo ufficio dall’esterno e dall’interno: se un attaccante può entrare e, una volta dentro, raggiungere il sistema di contabilità, la posta o i backup.

Infrastruttura e cloud

Valutazione della superficie di attacco esterna

Troviamo tutto ciò che la tua azienda espone su internet, compreso ciò che è stato dimenticato: vecchi siti, server di test, password trapelate. Poi mostriamo che cosa di tutto questo può essere attaccato.

Infrastruttura e cloud

Sicurezza di CI/CD e supply chain

Verifichiamo il percorso che il tuo codice compie dallo sviluppatore al cliente: server di build, librerie di terzi, chiavi di accesso. Chi controlla questo percorso controlla il tuo prodotto.

Simulazione di attacco

Operazioni di Red Team

Un’esercitazione su scala reale. Il nostro team interpreta un vero attaccante con un obiettivo, ad esempio arrivare ai dati dei clienti, e tu vedi se la tua difesa se ne accorge e lo ferma.

Simulazione di attacco

Esercitazioni di Purple Team

I nostri attaccanti e i tuoi difensori lavorano fianco a fianco: noi mostriamo una tecnica di attacco, il tuo team controlla se la vede, e le lacune nel monitoraggio vengono chiuse sul momento.

Simulazione di attacco

Test di ingegneria sociale

Testiamo le persone, non le macchine: le email di phishing, le telefonate e i messaggi che gli attaccanti usano per ottenere le password. Scopri quanti dipendenti verrebbero ingannati e su che cosa formarli.

AI, Web3 e crittografia

Test di sicurezza di AI e LLM

Se il tuo prodotto ha un chatbot o un altro modello di AI, verifichiamo se lo si può convincere a rivelare dati riservati, a infrangere le proprie regole o ad agire per conto di qualcun altro.

AI, Web3 e crittografia

Audit di smart contract

Prima che uno smart contract custodisca denaro, cerchiamo nel suo codice gli errori che permetterebbero a qualcuno di prelevare o bloccare i fondi. Una volta pubblicato il contratto, questi errori non si possono più correggere.

AI, Web3 e crittografia

Revisione della crittografia

Verifichiamo come il tuo prodotto cifra i dati e protegge le chiavi: se sono stati scelti gli algoritmi giusti e se vengono applicati correttamente. Un errore qui rende inutile la cifratura.

Programmi e verifiche

Gestione di programmi di bug bounty

Un bug bounty è un programma in cui ricercatori indipendenti cercano vulnerabilità nel tuo prodotto e vengono pagati per ognuna che trovano. Avviamo e gestiamo un programma di questo tipo per te.

Programmi e verifiche

Programma di divulgazione delle vulnerabilità (VDP)

Una pagina pubblica e una procedura che spiegano ai ricercatori come segnalarti una vulnerabilità in modo sicuro. Senza di esse le segnalazioni vanno perse o arrivano sotto forma di minacce. Impostiamo il processo e gestiamo le segnalazioni in arrivo.

Programmi e verifiche

Penetration test continuo

Invece di un test all’anno, testiamo ogni modifica significativa del tuo prodotto durante tutto l’anno, così una nuova vulnerabilità non aspetta mesi per essere trovata.

Programmi e verifiche

Penetration test per la conformità

Un penetration test organizzato in modo che un auditor, un’autorità di vigilanza o un grande cliente ne accetti il report: PCI DSS, DORA, NIS2, ISO/IEC 27001, SOC 2.

Servizi di interesse

Non so ancora

Scegli questa opzione se non sai quale servizio ti serve. Descrivi l’esigenza con parole tue e uno specialista suggerirà il servizio nella risposta.

Dominio o URL del sito o del sistema principale da testare, ad esempio app.example.com.

Che cosa va testato, perché ora, eventuali scadenze o requisiti di conformità. Niente password, chiavi o dettagli di vulnerabilità.

Conferme

Non inviare credenziali, chiavi o dettagli di una vulnerabilità tramite questo modulo. Un canale sicuro viene concordato dopo la prima risposta.

Controllo antiabuso automatico