Tecniche e Strumenti per rilevare vulnerabilità di rete e delle applicazioni

L’Ethical Hacking si è evoluto negli anni man mano che le Aziende e le Organizzazioni hanno iniziato a maturare una migliore comprensione e consapevolezza degli avversari che sono chiamati ad affrontare.

Non si tratta più di confrontarsi con attaccanti non professionali come i cosiddetti script kiddies: gli avversari di oggi sono organizzati, ben finanziati e determinati.

Ciò significa che i test di vulnerabilità richiedono l’adozione di tattiche diverse per essere adeguati alle minacce di sicurezza attuali.

Le competenze necessarie per identificare le vulnerabilità e consigliare soluzioni si stanno di conseguenza evolvendo, insieme alle tattiche e alle tecniche utilizzate dagli aggressori.

Corso Ethical Hacking

Lo scopo del Corso “Ethical Hacking” è di illustrare le tecniche e gli strumenti utilizzati dagli Ethical Hackers durante la predisposizione di Vulnerability Assessment e Penetration tests.

Tutor Online

Per i contenuti esaminati in questo modulo didattico è possibile usufruire del Servizio “Tutor Online”.

Introduzione all’Hacking Etico

In questa sezione introduciamo gli aspetti fondamentali dell’ethical hacking, esaminando le singole fasi caratteristiche e le attività preliminari richieste.

Saranno inoltre esaminati gli aspetti deontologici e legali dell’attività professionale degli hacker etici.

Riepilogo degli argomenti della sezione:

  • Chi sono gli hacker etici?
  • Vulnerabilità e minacce alla sicurezza 
    • Caratteristiche delle Vulnerabilità
    • Attacchi alla sicurezza 
    • Tipi di attacchi alla sicurezza 
  • Le diverse fasi di attacco
  • Competenze e compiti degli hacker etici
    • Attività di Vulnerability Assessment
    • Attività di Penetration Testing
  • Il codice etico dell’Ethical Hacking

Chi sono gli hacker etici?

Gli hacker etici sono professionisti della sicurezza che cercano di individuare le vulnerabilità di sicurezza emulando i metodi degli attaccanti.

Gli hacker etici sono anche conosciuti come security tester o penetration tester.

Gli hacker etici vengono anche detti “white hats” per distinguerli dai “black hats” ovvero dai criminali informatici.

Nei fatti, le metodologie adottate dagli hacker etici sono del tutto simili a quelle dei criminali informatici, sono le finalità ad essere differenti.

Nel caso degli hacker etici, lo scopo è quello di proteggere i sistemi individuandone le vulnerabilità prima che lo facciano gli attaccanti.

Vulnerabilità e minacce alla sicurezza

Le vulnerabilità sono difetti o lacune di sicurezza che possono essere sfruttati dagli attaccanti, mentre le minacce sono azioni ed eventi volte a minare la sicurezza di un sistema.

Le vulnerabilità possono riguardare i singoli apparati, ma possono anche consistere in lacune o carenze organizzative che interessano le procedure di sistema, errori di progettazione e implementazione, che si aggiungono a quelle software, hardware e di rete.

Attacchi alla sicurezza

Gli attacchi alla sicurezza sono attività illecite rivolte contro i sistemi vittima.

Gli attacchi mirano a compromettere il patrimonio informativo del sistema nella sua riservatezza, integrità, disponibilità, autenticità.

Gli attacchi alla sicurezza possono essere classificati come segue.

  • attacchi attivi: sono volti ad alterare un sistema vittima;
  • attacchi passivi: sono finalizzati a compromettere la confidenzialità del sistema vittima, senza alterarne lo stato;
  • attacchi interni: sono posti in essere da utenti autorizzati ad accedere alle risorse del sistema;
  • attacchi esterni: sono realizzati da attaccanti esterni non autorizzati ad accedere al sistema.

Le diverse fasi di attacco

Gli attacchi alla sicurezza prevedono fasi sequenziali come ad esempio:

  • ricognizione: in questa fase l’attaccante raccoglie quante più informazioni possibile;
  • scansione delle vulnerabilità: l’attaccante cerca di individuare specifiche vulnerabilità facendo uso anche di tools;
  • ottenere l’accesso al sistema: solitamente ottenere l’accesso al sistema è lo scopo principale perseguito dall’attaccante; in casi particolari, come il denial of service, lo scopo può anche essere quello di rendere indisponibile un sistema e le sue risorse;
  • mantenere l’accesso al sistema: una volta ottenuto l’accesso al sistema l’attaccante cerca di mantenerlo installando backdoors. In questo modo può continuare ad agire indisturbato;
  • coprire le tracce dell’attacco: l’attaccante occulta le evidenze dell’intrusione ad esempio alterando i file di log. In questo modo si assicura di non essere scoperto.

Competenze e compiti degli hacker etici

Nelle loro attività di valutazione della sicurezza, gli hacker etici utilizzano lo stesso approccio e gli stessi strumenti sfruttati dagli attaccanti.

Pertanto, agli hacker etici è richiesto di possedere capacità di attacco e conoscenze tecniche simili a quelle degli attaccanti quali ad esempio:

  • conoscenze software e hardware;
  • protocolli di rete e di comunicazione;
  • linguaggi di programmazione;
  • configurazione e amministrazione dei sistemi operativi

Attività di Vulnerability Assessment

Le attività di Vulnerability Assessment sono propedeutiche

Esse consistono nella raccolta di informazioni sensibili, ottenute anche sfruttando fonti aperte di pubblico dominio interrogate tramite tools di Open Source Intelligence (OSINT).

Tra le fonti aperte vi rientrano le informazioni disponibili sul web e sui social media.

La raccolta e l’organizzazione delle informazioni reperite tramite Osint può integrare la profilazione e il dossieraggio, e come tali devono essere debitamente autorizzate

Il vulnerability assessment (VA) prevede delle fasi specifiche quali:

  • ottenere il pieno consenso del cliente;
  • firma dell’accordo di non divulgazione;
  • programmazione delle attività di collaudo;
  • esecuzione dei test di sicurezza;
  • analisi dei risultati ottenuti;
  • predisposizione del report finale per il cliente.
Di particolare importanza la necessità di ottenere una adeguata autorizzazione da parte del Cliente, al fine di prevenire il rischio di imputazione per Accesso Abusivo a Sistema Informatico.

Attività di Penetration Testing

Le attività di penetration testing sono quelle più rappresentative degli ethical hacker, al punto che il termine stesso di ethical hacking viene spesso considerato sinonimo di tali attività.

L’idea sottostante ai penetration test è quella di tentare di penetrare le difese di un’organizzazione sfruttando le vulnerabilità rilevate nella fase del Vulnerability Assesment.

Nel realizzare i penetration test gli hacker etici sono tenuti ad osservare uno specifico codice deontologico, al fine di prevenire possibili danni al sistema e al patrimonio informativo del Cliente.

Il rispetto di tale codice deontologico è ciò che distingue gli hacker etici dai “black hats”

Il codice etico dell’Ethical Hacking

La caratteristica che distingue i “white hats” dai “black hats” sta proprio nelle diverse finalità perseguite dalle due tipologie di soggetti.

Nel caso dei white hats, essi sono interessati a prevenire possibili intrusioni e danneggiamenti ai sistemi da parte degli attaccanti.

Nell’attività di penetration testing, essi sono quindi chiamati a rispettare delle precise norme di comportamento, che costituiscono il codice etico professionale che li caratterizza.

Gli hacker etici hanno accesso alle informazioni sensibili del cliente, e nell’attività di penetration testing possono interfacciarsi con sistemi di rilevanza critica.

È pertanto necessario che mantengano un comportamento rispettoso delle regole e dei principi del codice etico per guadagnarsi la fiducia del cliente.

Necessità di un Codice Etico

Nell’attività di penetration testing, gli hacker etici sono chiamati a rispettare delle precise norme di comportamento, che ne costituiscono il codice etico.

Gli hacker etici hanno infatti accesso a:

  • informazioni sensibili del cliente;
  • sistemi di rilevanza critica;
Pertanto, gli hacker etici sono tenuti a mantenere un comportamento etico, rispettoso della fiducia accordata dal cliente, e finalizzato a scongiurare l’insorgenza di danni e comportamenti fraudolenti

Rispetto della riservatezza

Una delle principali regole etiche, anche a valenza legale, stabilisce l’obbligo di preservare la riservatezza delle informazioni sensibili e riservate acquisite nel corso delle attività di penetration testing.

Il mancato rispetto dell’obbligo di riservatezza può comportare responsabilità per i danni causati, oltre ad essere motivo di recesso dell’incarico conferito.

Tra le informazioni sensibili soggette ad obbligo di riservatezza possiamo includere:

  • informazioni relative ai dipendenti;
  • informazioni relative ai clienti e fornitori;
  • proprietà intellettuale e know how;
  • informazioni sulla configurazione dei sistemi;
  • credenziali di accesso riservate;
  • informazioni sulle configurazioni di rete;

L’elenco non puó considerarsi esaustivo, in quanto ogni settore specifico di operatività del cliente può prevedere diversi livelli di riservatezza.

In generale, tutte le informazioni la cui diffusione non autorizzata può recare danno al cliente e ai suoi partners, devono essere protette con il massimo impegno.

Trasparenza e responsabilità nelle comunicazioni

Gli hacker etici devono assumere un atteggiamento responsabile nella comunicazione delle informazioni di cui vengono a conoscenza nello svolgimento delle attività di pentesting.

Nel caso in cui gli hacker etici scoprissero delle vulnerabilità o falle di sicurezza, essi devono comunicarlo esclusivamente ai soggetti autorizzati dal cliente, senza renderle di dominio pubblico.

Eventuali conflitti di interesse devono essere comunicati in forma trasparente al cliente già in sede di assunzione dell’incarico.

Prevenire danni ad apparati e sistemi

Nell’espletamento dell’incarico di penetration testing, è necessario fare tutto il possibile per prevenire danni ad apparati e sistemi, oltre che ai dati da essi gestiti.

Nel caso di danni accidentali, è necessario comunicare tempestivamente l’evento a chi di dovere, al fine di consentirne il ripristino.

Ethical Hacking Methodologies

Ci occupiamo ora delle metodologie di analisi che ispirano le tecniche utilizzate dagli hacker etici nel corso delle attività di penetration testing.

Tratteremo in dettaglio i seguenti argomenti:

  • La Cyber Kill-Chain
  • Ciclo di vita dei cyber attacks
  • Reconnaissance e Footprinting
  • Scanning e Enumeration
  • Guadagnare l’accesso
  • Mantenere l’accesso
  • Coprire le tracce

L’importanza delle metodologie per l’Ethical Hacking

Adottare e seguire delle metodologie idonee è di particolare importanza per condurre i test di sicurezza

Le metodologie consentono infatti di conseguire:

  • la consistenza: vengono eseguiti gli stessi test, a prescindere dal bersaglio finale;
  • la ripetibilità: questo consente a ogni membro del team di penetration testers di ottenere gli stessi risultati a seguito dei tests condotti;
  • il miglioramento continuo: le metodologie consentono di verificare e migliorare l’efficacia dei test di sicurezza eseguiti.

Tra le metodologie più diffuse nel settore dell’Ethical Hacking vi sono:

  • la cyber kill-chain;
  • il ciclo di vita dell’attacco;

La Cyber Kill-Chain

Uno dei modelli tra i più comunemente utilizzati in ambito Cybersecurity è quello della Cyber Kill Chain.

Il concetto di kill chain è derivato dalla pratica militare di identificare una struttura per ogni attacco.

Lo scopo della kill chain è quello di individuare in quale fase dell’attacco si trova attualmente l’attaccante, al fine di adattare al meglio le misure di contrasto.

La Cyber Kill-Chain pertanto non è altro che l’adattamento alla Cybersecurity del concetto di kill-chain adottato in ambito militare.