Che cosa rende legale un penetration test

Le stesse azioni sono un servizio con l’autorizzazione e un reato senza. Quali documenti creano l’autorizzazione, chi può firmarli e dove si trovano le lacune abituali.

Pubblicato5 min di lettura

Un penetration tester fa ciò che fa un intruso: cerca una via d’accesso e la usa. Nella maggior parte dei paesi le leggi sui reati informatici non chiedono quali fossero le intenzioni. Chiedono se l’accesso era autorizzato. Tutta la differenza tra un servizio e un reato sta in un insieme di documenti, firmati dalla persona giusta prima che il lavoro cominci.

Questo articolo descrive quei documenti. Non è una consulenza legale: la legge cambia da paese a paese, e sono i tuoi legali a decidere che cosa si applica a te.

I documenti

Contratto

L’accordo commerciale: che cosa si fa, entro quando, a quale prezzo, con quale responsabilità e quale riservatezza. Il contratto da solo non è l’autorizzazione. Obbliga le parti l’una verso l’altra; non stabilisce di per sé che cosa si può attaccare.

Lettera di autorizzazione

La dichiarazione con cui il proprietario dei sistemi autorizza il test. Dovrebbe indicare:

  • i sistemi, per indirizzo, dominio o altro identificativo univoco;
  • il periodo in cui i test sono consentiti;
  • le persone o la società autorizzate a testare;
  • chi firma, e in quale veste firma.

I tester la portano con sé, alla lettera o in senso figurato, per tutto l’incarico. Quando un fornitore di hosting o le forze dell’ordine chiedono che cosa sta succedendo, è questo il documento che risponde.

Regole di ingaggio

I limiti tecnici: quali tecniche sono consentite e quali escluse, gli orari dei test, la frequenza delle richieste, che cosa succede quando un sistema diventa instabile, chi chiamare di notte. NIST SP 800-115 considera le regole di ingaggio una parte obbligatoria della pianificazione, e PTES le colloca nella fase degli accordi preliminari per lo stesso motivo: le questioni non risolte prima del test si risolvono durante un incidente.

Descrizione del perimetro

L’elenco di ciò che è dentro e di ciò che è fuori. Le esclusioni contano quanto le inclusioni: il fornitore dei servizi di pagamento dietro il checkout, la piattaforma condivisa della società di hosting, il servizio di single sign-on che appartiene alla capogruppo.

Riservatezza e protezione dei dati

Un accordo di riservatezza (NDA), firmato prima di scambiarsi dettagli tecnici. Se si possono incontrare dati personali, un accordo sul trattamento dei dati. Nell’Unione europea ciò discende dall’articolo 28 del GDPR quando il tester tratta dati personali per conto del cliente.

Chi può firmare

L’autorizzazione vale quanto il potere di chi la firma.

  • Il proprietario del sistema, non chi lo usa. Un’azienda non può autorizzare il test di un prodotto SaaS a cui è abbonata.
  • Una persona con il potere di impegnare l’azienda. Uno sviluppatore che commissiona un test del sistema di produzione del datore di lavoro all’insaputa della direzione non ha autorizzato nulla.
  • Ogni proprietario, se sono più di uno. Un sistema gestito da un’azienda sull’infrastruttura di un’altra può richiedere l’autorizzazione di entrambe.

Un fornitore scrupoloso lo verifica: controlla il registro commerciale e la proprietà dei domini, e conferma l’ordine attraverso un canale ufficiale dell’azienda. Un fornitore che non chiede nulla dovrebbe preoccuparti.

Terzi

La tua autorizzazione copre ciò che è tuo. Intorno di solito ci sono sistemi che non lo sono.

Fornitori cloud. I grandi fornitori pubblicano politiche per i test delle risorse che i clienti gestiscono sulle loro piattaforme. Nel momento in cui scriviamo, AWS, Microsoft Azure e Google Cloud consentono ai clienti di testare le proprie risorse senza approvazione preventiva, nel rispetto delle regole che ciascuno di essi pubblica; AWS elenca inoltre i servizi che si possono testare. Tutti e tre limitano i test di denial of service (DoS). Le politiche cambiano, quindi vanno controllate prima di ogni incarico e non ricordate dall’incarico precedente.

Hosting e servizi gestiti. L’hosting condiviso, i database gestiti e le content delivery network hanno condizioni proprie. Alcuni richiedono un preavviso, altri vietano del tutto i test.

Fornitori e partner. Un’integrazione con un partner non estende la tua autorizzazione al lato del partner. Senza il consenso scritto del partner, i test si fermano al tuo confine.

Le lacune abituali

  • Il test è iniziato, la lettera è ancora «in firma».
  • Il perimetro indica un dominio, e l’applicazione dietro di esso si è spostata a un altro indirizzo il mese scorso.
  • La lettera è firmata da qualcuno che non aveva il potere di firmarla.
  • La produzione è nel perimetro, e nessuno ha avvisato il team operativo.
  • Una controllata in un altro paese viene testata con l’autorizzazione della capogruppo.

Ognuna trasforma un test autorizzato in uno non autorizzato per una parte del lavoro, e nessuna è visibile dal lato tecnico.

Anche il bug bounty è un’autorizzazione

Un programma di bug bounty è un’autorizzazione data pubblicamente: la politica del programma dice che cosa si può testare e come, e chi la rispetta agisce con l’autorizzazione del proprietario. Una clausola di safe harbor aggiunge l’impegno del proprietario a non perseguire i ricercatori che restano entro la politica. Vincola solo il proprietario. Non cambia la legge penale e non vincola i terzi: per questo la politica va seguita alla lettera, e per questo un sistema senza programma non è un bersaglio.

In breve

Prima che parta il primo pacchetto dovrebbero esserci un contratto, una lettera di autorizzazione firmata da chi ha il potere di firmarla, le regole di ingaggio, un perimetro con le sue esclusioni e il consenso di ogni terzo i cui sistemi vengono toccati. I dettagli su come lo gestiamo sono nella pagina Come lavoriamo.

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