Che cos'è un test di penetrazione?

Che cos'è un test di penetrazione?

Un penetration test, o "pen test", è un test di sicurezza che lancia un attacco informatico simulato per individuare le vulnerabilità in un sistema.

I penetration tester sono professionisti della sicurezza esperti nell'arte dell'hacking etico, ovvero l'uso di strumenti e tecniche di hacking per correggere i punti deboli della sicurezza, anziché causare danni. Le aziende assumono dei pen tester per lanciare attacchi simulati contro app, reti e altri asset dell'organizzazione. Lanciando degli attacchi fasulli, i pen tester aiutano i team addetti alla sicurezza a scoprire le vulnerabilità critiche e a migliorare il livello di sicurezza complessivo di un'organizzazione.

I termini "hacking etico" e "test di penetrazione" sono talvolta usati in modo intercambiabile, ma c'è una differenza. L'hacking etico è un campo più ampio della cybersecurity che include qualsiasi uso delle competenze di hacking per migliorare la sicurezza della rete. I penetration test sono solo uno dei metodi utilizzati dagli hacker etici, che possono anche fornire analisi del malware, valutazione del rischio e altri servizi.

Le ultime notizie nel campo della tecnologia, supportate dalle analisi degli esperti

Resta al passo con le tendenze più importanti e interessanti del settore relative ad AI, automazione, dati e altro con la newsletter Think. Leggi l'Informativa sulla privacy IBM.

Grazie per aver effettuato l'iscrizione!

L'abbonamento sarà fornito in lingua inglese. Troverai un link per annullare l'iscrizione in tutte le newsletter. Puoi gestire i tuoi abbonamenti o annullarli qui. Per ulteriori informazioni, consulta l'Informativa sulla privacy IBM.

Perché le aziende vengono sottoposte ai pen test

Le aziende conducono i pen test per tre motivi principali.

I pen test sono più completi delle semplici valutazioni delle vulnerabilità. I penetration test e le valutazioni delle vulnerabilità aiutano i team addetti alla sicurezza a identificare i punti deboli nelle app, nei dispositivi e nelle reti. Tuttavia, questi metodi servono a scopi leggermente diversi, quindi molte organizzazioni li utilizzano entrambi invece di fare affidamento sull'uno o sull'altro.

Le valutazioni delle vulnerabilità sono in genere scansioni automatiche ricorrenti che cercano vulnerabilità note in un sistema e le contrassegnano per la revisione. I team di sicurezza utilizzano le valutazioni delle vulnerabilità per verificare rapidamente i difetti comuni.

I test di penetrazione fanno un ulteriore passo avanti. Quando i pen tester trovano delle vulnerabilità, le utilizzano in attacchi simulati che imitano i comportamenti degli hacker malintenzionati. In questo modo, il team di sicurezza acquisisce una comprensione approfondita di come degli hacker reali potrebbero utilizzare le vulnerabilità per accedere a dati sensibili o interrompere le operazioni. Invece di cercare di indovinare cosa potrebbero fare gli hacker, il team di sicurezza può utilizzare queste conoscenze per progettare controlli di sicurezza della rete per le minacce informatiche del mondo reale.

Poiché i pen tester utilizzano processi sia automatizzati che manuali, scoprono vulnerabilità note e sconosciute. Inoltre, poiché i pen tester utilizzano attivamente i punti deboli in cui si imbattono, è meno probabile che risultino dei falsi positivi. Se riescono a utilizzare una falla, possono farlo anche i criminali informatici. Infine, poiché i servizi di test di penetrazione sono forniti da esperti di sicurezza di terze parti, che si avvicinano ai sistemi dal punto di vista di un hacker, i pen test spesso scoprono difetti che i team addetti alla sicurezza interni potrebbero non notare.

Gli esperti di cybersecurity raccomandano i penetration test. Molti esperti e autorità di cybersecurity raccomandano i pen test quale misura di sicurezza proattiva. Ad esempio, nel 2021 il governo federale degli Stati Uniti ha esortato le aziende a utilizzare i penetration test per difendersi dai crescenti attacchi ransomware.

I pen test supportano la conformità normativa. Le normative sulla sicurezza dei dati quali l'Health Insurance Portability and Accountability Act (HIPAA) e il Regolamento generale sulla protezione dei dati (GDPR) impongono determinati controlli di sicurezza. I penetration test possono aiutare le aziende a dimostrare la conformità a queste normative garantendo che i controlli funzionino come previsto.

Altre normative richiedono esplicitamente i pen test. Lo standard Payment Card Industry Data Security Standard (PCI-DSS), applicabile alle organizzazioni che elaborano carte di credito, richiede in particolare regolari "test di penetrazione esterni e interni".

I penetration test possono anche supportare la conformità agli standard volontari di sicurezza delle informazioni, come ISO/IEC 27001.

Mixture of Experts | 28 agosto, episodio 70

Decoding AI: Weekly News Roundup

Unisciti al nostro gruppo di livello mondiale di ingegneri, ricercatori, leader di prodotto e molti altri mentre si fanno strada nell'enorme quantità di informazioni sull'AI per darti le ultime notizie e gli ultimi insight sull'argomento.

Tipi di pen test

Tutti i test di penetrazione comportano un attacco simulato contro i sistemi informatici di un'azienda. Tuttavia, diversi tipi di pen test sono destinati a diversi tipi di asset aziendali.

Pen test delle applicazioni

I pen test delle applicazioni sono alla ricerca di vulnerabilità nelle app e nei sistemi correlati, tra cui applicazioni web e siti web, app mobili e IoT, app cloudapplication programming interface (API).

I pen tester spesso iniziano cercando le vulnerabilità elencate nella Open Web Application Security Project (OWASP) Top 10. La OWASP Top 10 è un elenco delle vulnerabilità più critiche nelle applicazioni web. L'elenco viene aggiornato periodicamente per riflettere il panorama mutevole della cybersecurity, ma le vulnerabilità comuni includono iniezioni di codice nocivo ed errori di configurazione e autenticazione. Oltre alla OWASP Top 10, i pen test delle applicazioni cercano anche difetti di sicurezza e vulnerabilità meno comuni che potrebbero essere specifici dell'app in questione.

Pen test della rete

I pen test di rete attaccano l'intera rete di computer dell'azienda. In generale, esistono due tipi di pen test: test esterni e test interni.

Nei test esterni, i pen tester imitano il comportamento degli hacker esterni per individuare problemi di sicurezza negli asset connessi a Internet come server, router, siti Web e computer dei dipendenti. Sono chiamati "test esterni" perché i pen tester cercano di entrare nella rete dall'esterno.

Nei test interni, i pen tester imitano il comportamento di insider malevoli o hacker con credenziali rubate. L'obiettivo è quello di rilevare le vulnerabilità che una persona potrebbe utilizzare dall'interno della rete, ad esempio l'abuso dei privilegi di accesso per rubare i dati sensibili.

Pen test dell'hardware

Questi test di sicurezza cercano le vulnerabilità nei dispositivi connessi alla rete, come laptop, dispositivi mobili e IoT e tecnologia operativa (OT).

I pen tester possono cercare difetti del software, come un exploit del sistema operativo che consente agli hacker di ottenere l'accesso remoto a un endpoint. Possono cercare vulnerabilità fisiche, come un data center protetto in modo improprio in cui potrebbero intrufolarsi malintenzionati. Il team di test può anche valutare in che modo gli hacker potrebbero passare da un dispositivo compromesso ad altre parti della rete.

Pen test del personale

Il pen test del personale cerca debolezze nelle pratiche di cybersecurity dei dipendenti. In altre parole, questi test di sicurezza valutano la vulnerabilità di un'azienda agli attacchi di social engineering.

I pen tester del personale utilizzano phishing, vishing (phishing vocale) e smishing (phishing tramite SMS) per indurre i dipendenti a divulgare informazioni sensibili. I pen test del personale possono anche valutare la sicurezza fisica dell'ufficio. Ad esempio, i pen tester potrebbero cercare di intrufolarsi in un edificio travestendosi da corrieri. Questo metodo, chiamato "tailgating", è comunemente usato dai criminali del mondo reale.

Il processo dei test di penetrazione

Prima che inizi un pen test, il team di test e l’azienda stabiliscono l’ambito del test. L'ambito delinea quali sistemi verranno testati, quando avverrà il test e i metodi che i pen tester possono utilizzare. L'ambito determina anche la quantità di informazioni che i pen tester avranno in anticipo:

  • In un test black box, i pen tester non hanno informazioni sul sistema target. Devono basarsi sulle proprie ricerche per sviluppare un piano di attacco, come farebbe un hacker del mondo reale.

  • In un test white-box, i pen tester hanno totale trasparenza nel sistema target. L'azienda condivide dettagli come diagrammi di rete, codici sorgente, credenziali e molto altro.

  • In un test gray-box, i pen tester ottengono alcune informazioni, ma non molte. Ad esempio, l'azienda potrebbe condividere gli intervalli IP per i dispositivi di rete, ma i pen tester devono sondare tali intervalli IP alla ricerca di vulnerabilità per conto proprio.

Una volta definito l'ambito, inizia il test. I pen tester possono seguire diverse metodologie. Le più comuni includono le linee guida per i test di sicurezza delle applicazioni OWASP, il il Penetration Testing Execution Standard (PTES) e il National Institute of Standards and Technology (NIST) Standard SP 800-115.

Indipendentemente dalla metodologia utilizzata da un team di test, il processo solitamente segue gli stessi passaggi generali.

1. Ricognizione

Il team di test raccoglie informazioni sul sistema target. I pen tester utilizzano metodi di ricognizione diversi a seconda dell'obiettivo. Ad esempio, se l'obiettivo è un'app, i pen tester potrebbero studiarne il codice sorgente. Se il target è un'intera rete, i pen tester potrebbero utilizzare un packet analyzer per ispezionare i flussi di traffico di rete.

I pen tester spesso attingono anche all'open source intelligence (OSINT). Leggendo la documentazione pubblica, le notizie e persino i social media e gli account GitHub dei dipendenti, i pen tester possono raccogliere informazioni preziose sui loro obiettivi.

2. Individuazione e sviluppo del target

I pen tester utilizzano le conoscenze acquisite nella fase di ricognizione per identificare le vulnerabilità del sistema. Ad esempio, i pen tester possono utilizzare un port scanner come Nmap per cercare porte aperte a cui inviare malware. Per un pen test di ingegneria sociale, il team di test potrebbe sviluppare una storia falsa, o il "pretesto ", da usare in un'e-mail di phishing per rubare le credenziali dei dipendenti.

Nell'ambito di questo passaggio, i pen tester possono verificare come le funzioni di sicurezza reagiscono alle intrusioni. Ad esempio, potrebbero inviare traffico sospetto al firewall dell'azienda per vedere cosa accade. I pen tester utilizzeranno ciò che apprendono per evitare il rilevamento durante il resto del test.

3. Exploit

Il team di test inizia l'attacco vero e proprio. I pen tester possono provare diversi attacchi a seconda del sistema target, delle vulnerabilità rilevate e dell'ambito del test. Alcuni degli attacchi più comunemente testati includono:

  • Iniezioni SQL: i pen tester cercano di far sì che una pagina web o un'applicazione riveli dati sensibili inserendo codice dannoso nei campi di input.

  • Cross-site scripting: i pen tester provano a inserire codice dannoso nel sito web di un'azienda.

  • Attacchi denial-of-service: i pen tester tentano di mettere offline server, app e altre risorse di rete inondandoli di traffico.

  • Ingegneria sociale: i pen tester usano il phishing, il baiting, il pretesto o altre tattiche per ingannare i dipendenti a compromettere la sicurezza della rete.

  • Attacchi di forza bruta: i pen tester tentano di entrare in un sistema eseguendo script che generano e testano potenziali password fino a quando una non funziona.

  • Attacchi man-in-the-middle: i pen tester intercettano il traffico tra due dispositivi o utenti per rubare informazioni sensibili o installare malware.

4. Escalation

Quando i pen tester hanno utilizzato una vulnerabilità per ottenere un punto d'appoggio nel sistema, cercano di guardarsi intorno per accedere a ulteriori aree di quest'ultimo. Questa fase è talvolta chiamata "concatenamento delle vulnerabilità" perché i pen tester si spostano da una vulnerabilità all'altra per entrare più in profondità nella rete. Ad esempio, potrebbero iniziare installando un keylogger sul computer di un dipendente. Usando quel keylogger, possono acquisire le credenziali del dipendente. Usando queste credenziali, possono accedere a un database sensibile.

In questa fase, l'obiettivo del pen tester è quello di mantenere l'accesso e aumentare i privilegi eludendo le misure di sicurezza. I pen tester fanno tutto questo per imitare le  minacce persistenti avanzate (APT) che possono nascondersi in un sistema per settimane, mesi o anni prima di essere scoperte.

5. Pulizia e reportistica

Al termine dell'attacco simulato, i pen tester eliminano ogni traccia lasciata, ad esempio i trojan backdoor che hanno installato o le configurazioni modificate. In questo modo, gli hacker del mondo reale non possono utilizzare gli exploit dei pen tester per violare la rete.

Quindi, i pen tester preparano un report sull'attacco. Il report in genere delinea le vulnerabilità che hanno trovato, gli exploit che hanno utilizzato, i dettagli su come hanno evitato le funzionalità di sicurezza e le descrizioni di ciò che hanno fatto mentre si trovavano all'interno del sistema. Il report può anche includere raccomandazioni specifiche sulla correzione delle vulnerabilità. Il team di sicurezza interno può utilizzare queste informazioni per rafforzare le difese contro gli attacchi nel mondo reale.

Strumenti per i test di penetrazione

I pen tester utilizzano vari strumenti per condurre ricognizioni, rilevare vulnerabilità e automatizzare le componenti chiave del processo di pen test. Alcuni degli strumenti più comuni includono:

Sistemi operativi specializzati: la maggior parte dei pen tester utilizza sistemi operativi progettati per i test di penetrazione e l'hacking etico. Il più popolare è Kali Linux, una distribuzione Linux open source preinstallata con strumenti di pen test come Nmap, Wireshark e Metasploit.

Strumenti di cracking delle credenziali: questi programmi possono scoprire le password rompendo le crittografie o lanciando attacchi di forza bruta, che utilizzano bot o script per generare e testare automaticamente potenziali password finché non trovano quella giusta. Tra gli esempi vi sono Medusa, Hyrda, Hashcat e John the Ripper.

Strumenti di scansione delle porte: consentono ai pen tester di testare in remoto i dispositivi per individuare porte aperte e disponibili, utilizzabili per violare una rete. Nmap è lo strumento più utilizzato, ma sono comuni anche masscan e ZMap.

Strumenti di scansione delle vulnerabilità: cercano nei sistemi le vulnerabilità note, consentendo ai pen tester di trovare rapidamente potenziali ingressi in un bersaglio. Gli esempi includono Nessus, Core Impact e Netsparker.

Gli strumenti di scansione delle vulnerabilità Web sono un sottoinsieme della stessa famiglia di strumenti che valutano applicazioni e siti Web. Gli esempi comprendono Burp Suite e Zed Attack Proxy (ZAP) di OWASP.

Analizzatori di pacchetti: chiamati anche sniffer di pacchetti, consentono ai pen tester di analizzare il traffico di rete acquisendo e ispezionando pacchetti. I pen tester possono capire da dove proviene il traffico, dove sta andando e, in alcuni casi, quali dati contiene. Wireshark e tcpdump sono tra gli analizzatori di pacchetti più utilizzati.

Metasploit: è un framework di test di penetrazione con una serie di funzioni. Soprattutto, Metasploit consente ai pen tester di automatizzare gli attacchi informatici. Metasploit dispone di una libreria integrata di codici di exploit e payload prescritti. I pen tester possono selezionare un exploit, assegnargli un payload da consegnare al sistema di destinazione e lasciare che Metasploit gestisca il resto.

Soluzioni correlate
Soluzioni di sicurezza aziendale

Trasforma il tuo programma di sicurezza con le soluzioni offerte dal più grande provider di sicurezza aziendale.

Esplora le soluzioni di cybersecurity
Servizi di cybersecurity

Trasforma il tuo business e gestisci i rischi con la consulenza sulla cybersecurity, il cloud e i servizi di sicurezza gestiti.

    Scopri i servizi di sicurezza informatica
    Cybersecurity dell'intelligenza artificiale (AI)

    Migliora la velocità, l'accuratezza e la produttività dei team di sicurezza con soluzioni di cybersecurity basate sull'AI.

    Esplora la cybersecurity dell'AI
    Fai il passo successivo

    Che tu abbia bisogno di soluzioni di sicurezza dei dati, di gestione degli endpoint, o di gestione delle identità e degli accessi (IAM), i nostri esperti sono pronti a collaborare con te per farti raggiungere un solido livello di sicurezza.Trasforma il tuo business e gestisci i rischi con un leader a livello globale nel campo della consulenza per la cybersecurity, del cloud e dei servizi di sicurezza gestiti.

    Esplora le soluzioni di cybersecurity Scopri i servizi di cybersecurity