honeypot in informatica

Come in biologia si studia l’agente patogeno per potersene difendere, così nella cybersecurity l’analisi del comportamento malevolo ha un ruolo cruciale nel migliorare la qualità della protezione.

L’honeypot è l’applicativo che in informatica viene utilizzato per analizzare gli attacchi hacker al fine di:

  1. Individuare le falle nel sistema aziendale, con un particolare focus sulle vulnerabilità 0-day, ossia quelle mai emerse in precedenza;
  2. La natura e provenienza degli attacchi;
  3. Il livello di aggressività della minaccia.

In sostanza, l’honeypot in informatica è un ambiente controllato che funge da esca per potenziali attacchi malware.

Rientra, dunque, a pieno titolo nell’ambito della Cyber Deception Technology. Si tratta dell’insieme di tecniche di difesa attiva nei quali incanalare il traffico criminale distogliendolo dal compiere azioni malevole sulla rete aziendale vera e propria, e permettendo così a quest’ultima di rimanere performante.

Sommario degli argomenti

La sicurezza informatica: non solo pura difesa

Quello della sicurezza informatica è un campo in cui si scontrano costantemente due forze opposte:

da una parte chi attacca, dall’altra chi difende.

Contrariamente a quanto si potrebbe pensare, difendere una rete da potenziali attacchi informatici non equivale soltanto a costruire sistemi-scudo (attraverso i firewall ad esempio) ma si declina anche come costante confronto tra le due forze antagoniste.

In altre parole, così come gli hacker dal cappello nero sono alla continua ricerca di meccanismi sempre più sofisticati per eludere i controlli, allo stesso modo, i white hat cercano di studiarne le tecniche d’attacco, così da irrobustire la rete di protezione.

In questo articolo si analizzerà cos’è un honeypot e quali siano i suoi principali ambiti di applicazione nelle attuali pratiche di sicurezza informatica.

Caratteristiche di un honeypot

La traduzione letterale dall’inglese sta a indicare un “barattolo di miele”.
Questa immagine plastica ne rende ben evidente l’idea alla base: far ingolosire i potenziali predatori del web, così da attirarli nella trappola.

La caratteristica saliente è che la natura di un honeypot in informatica non è affatto predeterminata.
Esso può essere costituito da una qualsiasi risorsa informatica, sia essa fisica o software, ed assumere le più svariate configurazioni: da un vecchio computer inutilizzato a un database-esca.

La premessa per l’implementazione di un honeypot è proprio la presenza di un’infrastruttura fittizia capace di emulare quanto più possibile la rete produttiva aziendale, ma sia dotata di tutta una serie di debolezze tali da facilitarne l’attacco.

Un honeypot software, dunque, viene creato senza alcuna utilità operativa e con l’esplicito intento che venga facilmente identificato come macchina vulnerabile (ma non smascherato come honeypot tout court), e quindi attaccato.

Come con uno specchietto per le allodole, viene implementato in modo tale da fingere che al suo interno siano contenuti dati sensibili.

Spesse volte poi si fa in modo che possa essere violato a tutti gli effetti: ossia che l’hacker possa prenderne il controllo e comportarsi come amministratore del sistema.

La sua configurazione di un honeypot si gioca tutta sull’equilibrio tra
• credibilità
• facilità di compromissione

Se infatti la vulnerabilità è accentuata a tal punto da renderla ingenua o se, al contrario, le porte di sicurezza presentano evidenti difficoltà di compromissione, il potenziale exploit verrà meno, facendo venir meno di conseguenza l’utilità stessa dell’honeypot.

Inoltre, non si tratta di un servizio messo a punto per fronteggiare un problema specifico.
Lo scopo ultimo è quello di intrappolare l’aggressore, mentre il punto cruciale è far sì che questi non si renda conto di trovarsi all’interno di un sistema-civetta: se ciò si verificasse, infatti, potrebbe interrompere l’attacco o, peggio, tentare di irrompere nella rete operativa vera e propria.

Come funziona un honeypot in informatica

Il funzionamento dell’applicativo honeypot (o honeypot software) , seppur con gradi di efficienza differenti, si esplica in tutte e tre le fasi di cui si declina la sicurezza informatica.

Nella fase della prevenzione può essere utilizzato come fonte a un tempo di inganno e di deterrenza

Come riportato in precedenza, il fatto di essere progettato in maniera tale da esser confuso con un normale sistema di produzione trae in fallo i potenziali attaccanti, facendo sprecar loro tempo e risorse. In aggiunta, qualora l’attaccante si rendesse conto della sua presenza nel sistema, potrebbe essere indotto a desistere dall’effettuare l’attacco per timore di essere scoperto o proprio per non sprecare sforzi inutili nell’impresa

Sul piano del rilevamento, permette di risolvere problematiche legate all’ individuazione di falsi positivi (o falsi negativi)

L’honeypot infatti consente di migliorare il processo di aggregazione dei dati.
Per sua stessa natura, infatti, l’honeypot convoglia su di sé essenzialmente dati di origine sospetta, facendo in modo che la loro mole risulti già filtrata in partenza e quindi di più facile analisi.

Durante la reazione, infine, grazie ad essi viene risolta anche la problematica legata alla temporanea disattivazione dei sistemi.

Se non fosse presente, infatti, ad essere attaccato sarebbe il sistema produttivo, il quale dovrebbe esser messo off-line per un periodo di tempo più o meno prolungato, compromettendo l’operatività stessa dell’azienda.
Quando invece è l’honeypot ad essere attaccato, la sua disconnessione temporanea non pregiudica in alcun modo l’attività produttiva, essendo esso per natura indipendente dal resto della rete.

A questo proposito, è doveroso specificare che l’entità di una minaccia non è da intendersi come mossa da un agente esclusivamente umano, ma che potrebbe trattarsi spesso di un attacco a propagazione automatizzata (ad esempio, le botnet). Anche in quest’ultimo caso l’honeypot si dimostrerebbe funzionale perché permetterebbe di fungere da vero e proprio incubatore di codice malevolo.

Certo è che quanto più alto è il livello di automatizzazione dell’attacco tanto più “semplice” sarà l’implementazione del “barattolo di miele informatico”.

Qualora dietro l’aggressione ci fosse un agente umano, il grado di raffinatezza nella strutturazione della cyber-esca dovrebbe esser tale da prevenirne qualsiasi fattore di imprevedibilità: fattore che viene sostanzialmente meno in caso di attacco da parte di software malevoli meccanizzati.

Fin quanto detto finora potrebbe far pensare che sia la presenza dell’honeypot ad attirare verso di sé l’attacco informatico, quasi a significare che senza di esso le aggressioni rilevati non si sarebbero verifica.

In realtà ciò che accade, soprattutto qualora ci si trovi di fonte a un attacco informatico automatizzato, è una scansione del tutto randomica di indirizzi IP al fine di individuare quelli più vulnerabili.
Ciò che avviene in sintesi è che l’honeypot non richiama esplicitamente, ma dirotta verso di sé l’exploit malevolo, facendo sì che questo non si diriga direttamente verso il sistema di produzione.

Classificazione degli honeypot in informatica

Come si può evincere, quindi, la chiave del successo di questa infrastruttura difensiva sta tutta nella sua adattabilità allo scopo, nel suo connaturato ibridismo.

La mutevolezza degli intenti, e la possibilità di poterlo applicare in funzione di essi, fa sì che la sua versatilità si riscontri nella sua stessa natura, che può essere sia hardware che software, così come nei diversi livelli di complessità a cui viene implementato.

In base all’ambito applicativo entro cui viene utilizzato l’honeypot, si può distinguere tra:

  • honeypot di produzione

  • honeypot di ricerca

La discriminante in questo contesto è legata all’entità delle informazioni ottenute: se nel primo caso i dati raccolti vengono utilizzati per incrementare il livello di sicurezza globale della rete aziendale, nel secondo li si utilizza per monitorare la costante evoluzione delle minacce messe in atto.

Un ulteriore criterio di classificazione li distingue in base al livello di interazione che l’infrastruttura riesce a costruire con l’aggressore.
In altri termini, con questo concetto si intende quanto fedelmente la configurazione dell’honeypot rispecchia la reale rete produttiva e quanto le risposte messe in atto da esso siano conformi a quanto ci si aspetterebbe da quest’ultima.

A tal riguardo, si possono individuare tre livelli di interazione, bassa, media e alta, che corrispondono ad altrettante tipologie di infrastruttura:

Honeypot a bassa interazione (low interaction honeypot)

Questi non offrono all’attaccante un reale sistema in cui interagire, ma costruiscono con l’hacker un’interazione monodirezionale, volta alla sola individuazione di traffico non autorizzato;

Honeypot a media interazione (medium interaction honeypot)

Non si limita a offrire dei servizi, ma cerca di emulare un sistema produttivo vero e proprio;

Honeypot ad alta interazione (high interaction honeypot)

L’interazione con l’hacker è quella di un vero e proprio sistema operativo, e l’analisi del suo comportamento scandaglia ogni singola azione messa in atto dall’attaccante.

Honeyd e Honeyc: esempi di honeypot a bassa interazione

Tra i low intraction honeypot è possibile distinguere due tipologie:

  1. honeypot lato client

  2. honeypot lato server

I primi, come dice il nome stesso, simulano il comportamento di un client, inoltrando richieste a server e host per rintracciare quelli infetti.
I secondi, di conseguenza, emulano un server per attirare cyber-attacchi.

Esempio rappresentativo di un low interaction honeypot lato server, Honeyd è un software open source in grado di simulare un’intera rete di host, tale da offrire i servizi più svariati (http, RDP, ecc.…). Attraverso esso è possibile simulare diversi sistemi operativi, tra cui Linux a Windows, collegati alla rete attraverso un router Cisco.

Una delle sue applicazioni più utilizzate è la possibilità di fungere come strumento di virtualizzazione di una Honeynet.
HoneyC, la sua controparte lato client, consente agli utenti di individuare i server pericolosi presenti in rete: in sostanza questo software mette in gioco un client simulato e analizza le risposte del server alla ricerca di componenti dannose.

Honeynet: esempio di honeypot ad alta interazione

Quando si parla di Honeynet è fondamentale sottolineare il fatto che non si tratta di un software da installare su una macchina, bensì un’architettura composta da honeypot ad alta interazione tali da simulare una rete di produzione.

L’Honeynet è configurata in modo tale da monitorare non soltanto il traffico in entrata e uscita, ma anche le attività svolte dagli attaccanti qualora riuscissero a penetrare uno degli honeypot che la costituiscono.

Fulcro dell’intera architettura è l’Honeywall Gateway: il suo compito è quello di separare il segmento di rete in cui sono presenti gli honeypot, dal segmento di produzione vero e proprio, alla stregua di un firewall convenzionale.

Le sue funzionalità fondamentali possono essere individuate in:

  1. Data Control
  2. Data Capture
    E infine…
  3. Data Collection

I tre task prevedono rispettivamente:

  1. adozione di meccanismi per limitare le attività sospette;
  2. far passare inosservato il monitoraggio dell’evento illecito e far confluire verso un server di raccolta i dati acquisiti, evitando di contaminarli con qualsiasi attività non standard;
  3. raggruppare i dati raccolti in una locazione centralizzata, cosicché possano essere analizzati.

Differenze tra honeypot e IDS

A dispetto di quanto si potrebbe pensare, l’honeypot non rientra nell’ambito delle tecnologie IDS (Intrusion Detection System).

La loro è una relazione di cooperazione: spesso i primi vengono installati all’interno di firewall (esempio emblematico di IDS).
Questi, anziché controllare il traffico in entrata come consuetudine, controllano quello in uscita. Così facendo si ottiene un dettagliato Indicatore di Compromissione (IOC) che potrà potenziare le tecniche di difesa attiva.

Sebbene cooperanti, i due sistemi presentano sostanziali differenze che sarà bene elencare.

  • L’honeypot, a differenza dell’IDS, non fa uso di signature.
    Il signature è una sorta di “firma caratteristica” della violazione, ossia l’insieme delle modifiche che queste apportano al sistema.
    L’IDS fa uso di database attraverso i quali è in grado di determinare se l’evento che sta analizzando sia riconducibile a uno degli attacchi conosciuti: qualora ci fosse un match, l’IDS segnalerebbe l’evento come violazione.
    L’honeypot, di contro, funziona come semplice collettore di attività potenzialmente dannose.
  • Mentre l’IDS è in grado di rilevare attacchi in uno dei nodi della rete, l’honeypot individua soltanto quelli rivolti verso il proprio nodo.
  • Se parte degli IDS consumano risorse degli host di produzione, per quanto riguarda gli honeypot questo problema è scongiurato, trattandosi di strutture stand alone, ossia autonome.

Vantaggi e svantaggi degli honeypot

Alla luce di quanto detto finora, è opportuno riassumere quali siano i punti di forza e di debolezza dell’honeypot.

Per quanto riguarda i benefici dell’honeypot, si possono annoverare:

  1. la semplicità, intesa non come mancanza di complessità intrinseca, ma come principio cardine della sua implementazione: non è infatti basato su complessi algoritmi, o vincolato ad alcun database di regole;
  2. presenta un traffico filtrato esclusivamente su attività potenzialmente sospette;
  3. dal punto precedente consegue che, a questa mole di dati relativamente ridotta, corrisponde un potenziale informativo qualitativamente ottimale;
  4. assenza di falsi positivi e falsi negativi, vale a dire che viene quasi azzerato l’errore di disambiguazione tra un presunto attacco malevolo ed un’attività legittima;
  5. possibilità di individuare violazioni e atti illeciti interni alla rete, i cui autori godono notoriamente di informazioni e accessi privilegiati, a differenza di quanto avviene con un attacco dall’esterno.

La controparte dei punti di debolezza si compone di:

  • campo visivo ristretto: infatti l’honeypot è in grado di captare il traffico esclusivamente rivolto verso di esso, generando, quindi, il cosiddetto “effetto microscopio”;
  • eventualità che gli attaccanti riconoscano la sua vera natura di esca;
  • la sua presenza potrebbe incentivare azioni malevole verso il sistema produttivo, qualora la sua integrità venisse compromessa.

Principali software honeypot

In conclusione, si riportano le principali soluzioni open source per impostare un honeypot:

  1. il già menzionato Honeyd, che permette di emulare diversi servizi e diversi sistemi operativi;
  2. mapWOC: ad alta interazione lato client. Funzionano su una macchina virtuale;
  3. Capture-HPC: è un honeypot ad alta interazione che utilizza un’architettura client-server. Un server stabilisce i siti da visitare e controlla diversi client, che a loro volta aprono le pagine e inviano i risultati delle loro analisi al server.

Chi è Onorato Informatica?

Azienda specializzata in sicurezza informatica da oltre 15 anni, certificata ISO 9001 e 27001

Onorato Informatica è un’azienda informatica, specializzata in sicurezza informatica, da oltre 15 anni.
Forniamo servizi di Vulnerability Assessment e Penetration Test a oltre 4500 clienti in tutta Italia.

Ci occupiamo di Cyber Security dalle nostre sedi di Mantova, Parma, Milano e Los Angeles. Siamo un’azienda certificata ISO 9001ISO 27001 e azienda etica.

Se vuoi conoscere i servizi di sicurezza informatica e sapere come possiamo aiutarti, contattaci.