Honeypots
Definizione
e valore degli Honeypots
Lance
Spitzner
Con grande
aiuto di Marty Roesch e David
Dittrich
http://www.enteract.com/~lspitz
Ultima
modifica: 08 Marzo 2002
Traduzione italiana a cura di:
Daniele
Besana
www.itvirtualcommunity.net
Tradotto il 10 Maggio 2002
Negli
ultimi anni c'è stato un crescente interesse negli honeypots e
nella loro tecnologia. Non è una tenologia nuova, inizialmente
fu spiegata in alcuni ottimi documenti di grandi esperti della
computer security: il libro di Cliff Stoll "Cuckoo's Egg",
e quello di Steve Bellovin e Bill Cheswick "An Evening with
Berferd".
Questo documento cerca di proseguire il loro lavoro
discutendo su cosa sono gli Honeypots, come possono aggiungere valore
ad una organizzazione e le tipologie di soluzioni Honeypot
disponibili.
C'è molta confusione su cosa è un
Honeypot, come funziona e a cosa serve. Si spera che questo documento
possa risolvere questi dubbi. Inoltre, poche persone capiscono il
rischio e le conseguenze relative agli honeypot. Sebbene gli
honeypots creino valore aggiunto, il tempo e le risorse impiegate
possono essere focalizzate in priorità maggiori. Se dopo aver
letto questo documento siete interessati ad imparare di più
sulla tecnologia honeypot, puoi pensare di iscriverti alla honeypots
maillist.
Definizione
Prima
di iniziare il discorso, voglio essere d'accordo con voi su alcune
definizioni. Molto spesso vedo gente discutere sugli honeypots in
mailing list. La cosa stupefacente è che sembrano parlare di
due concetti completamente differenti. Se si fossero presi un momento
per mettersi d'accordo su cosa si andava a discutere, la vita sarebbe
stata molto più semplice per tutti (inclusa la mia casella
mail). Per essere sicuri che stiamo suonando tutti lo stesso
spartito, voglio chiarire alcune definizioni. In questo documento
chiarirò la definizione degli honeypot, i due diversi tipi di
honeypot e le diverse categorie di sicurezza.
In questo documento, definiremo un honeypot come "una risorsa il cui valore sta nell'essere attaccata e compromessa". Significa che qualsiasi cosa decidiamo di usare come honeypot, la nostra aspettativa e il nostro risultato è di avere un sistema che venga scoperto, attaccato e potenzialmente bucato. Tenete a mente che l'honeypot non è una soluzione. Non fa dei 'fix' a niente. Invece, l'honeypot è uno strumento. Come usarlo dipende da voi e da cosa volete ottenere, Un honeypot può essere semplicemente un sistema che emula un altro sistema o un'applicazione, crea un ambiente jailed, o può essere un sistema standard. Indipendentemente da come costruite e usate l'honeypot, il suo valore sta nell'essere attaccato.
Dividiamo gli honeypot in due categorie, come stabilito da Marty Roesch, creatore di Snort. Marty ha indicato che le due categorie di honeypot sono "produzione" e "ricerca", una distinzione che ho trovato molto utile. Lo scopo di un honeypot di produzione è di aiutare a ridurre i rischi in una azienda. L'honeypot aggiunge valore alla sicurezza dell'azienda. La seconda categoria, ricerca, è costituita da honeypot in grado di raccogliere informazioni sulla comunità blackhat. Questi honeypot non aggiungono direttamente valore ad una organizzazione. Piuttosto sono usati per trovare i pericoli, e capire come meglio proteggersi da essi.
Prima di discutere su come gli honeypot aggiungono valore alla sicurezza, lasciatemi definire cos'è la sicurezza. La sicurezza è la riduzione del rischio. Non è possibile eliminare il rischio, ma la sicurezza aiuta a ridurre il rischio per una organizzazione e le sue risorse. Quando parlo di sicurezza mi piace dividerla in tre aree, come fu definita dal poco conosciuto Bruce Schneier in Secrets and Lies. La sicurezza può essere divisa in queste tre aree:
Prevenzione: vogliamo fermare i delinquenti. Se vuoi rendere sicura casa tua, la prevenzione sta nel chiudere a chiave la porta, chiudere le finestre, e magari recintare il giardino. Stai facendo tutto il possibile per evitare la minaccia.
Rilevazione: vogliamo sapere se i delinquenti sono entrati. Prima o poi, la prevenzione fallisce. Vuoi essere sicuro di accorgertene quando questo accadrà. Usando ancora l'analogia della casa, questo è come installare un'allarme anti intrusione e sensori di movimento all'interno delle stanze. Questi allarmi scattano quando qualcuno entra. Se la prevenzione fallisce, vuoi essere avvisato il prima possibile.
Reazione: una volta rilevati, vogliamo reagire ai delinquenti. Scoprire che sono entrati non ha molto senso se non siamo in grado di fermarli. Cosa serve essere avvisati di un furto se non viene fatto nulla? Se qualcuno entra in casa e fa scattare gli allarmi, si spera che le forze di polizia rispondano rapidamente. La stessa cosa è vera parlando di sicurezza informatica. Quando si rileva un'intrusione, bisogna rispondere prontamente all'incidente.
Ora che abbiamo un'idea più chiara sulla sicurezza, vediamo come gli honeypot aggiungono valore ad ognuna di queste tre aree.
Valore
degli Honeypot
L'honeypot
è un tool di sicurezza che ha vantaggi e svantaggi. E' il
vantaggio che definisce il suo valore. Il bello dell'honeypot sta
nella sua semplicità. E' un qualcosa che è destinato ad
essere attaccato, non offre servizi di produzione. Significa che non
c'è traffico di produzione che parte o arriva all'honeypot.
Ogni volta che una connessione arriva all'honeypot, significa che è
una scansione, una prova o un attacco. Ogni volta che una connessione
parte dall'honeypot, probabilmente significa che è stato
bucato. Quindi, tutto il traffico dell'honeypot è da
considerare sospetto per sua natura. Certo, questo non è
sempre vero. Ci può essere un errore, come per esempio un DNS
mal configurato o qualcuno che inserisce un indirizzo IP sbagliato.
Ma in generale, la maggior parte del traffico dell'honeypot
rappresenta attività non autorizata.
Vista la sua semplicità, l'honeypot ha dei vantaggi e svantaggi. Vediamone alcuni.
Vantaggio
- Raccolta Dati
L'honeypot raccoglie pochi dati, ma quello che
raccoglie di solito è di grande valore. Alza il livello di
soglia, rendendo più facile la raccolta e l'archivio di dati.
Uno di più grandi problemi in ambito di sicurezza è
l'interpretazione di gigabyte di dati alla ricerca di quello che
serve. L'honeypot può dare l'informazione cercata in un modo
molto semplice. Per esempio, the
Honeynet Project, un gruppo alla ricerca di honeypot, raccoglie
ogni giorno solo 1-5 Mb di dati. Queste informazioni sono
solitamente di grande valore, perchè non mostrano l'attività
di rete ma mostrano cosa fa un hacker una volta entrato nel sistema.
Vedremo nel dettaglio questo vantaggio quando si vedrà come
l'honeypot aggiunge valore al rilevamento.
Vantaggio
- Risorse
Mostri strumenti di sicurezza possono essere
sopraffatti dalla banda o dall'attività di rete. I Network
Intrusion Detection Devices potrebbero non essere in grado di
funzionare bene in caso di un'elevata attività di rete,
scartando pacchetti, e potenzilmente attacchi. I log server
centralizzati potrebbero lascarsi sfuggire qualche evento. Gli
honeypot non hanno questo problema, registrano solo quello che gli
arriva.
Svantaggio
- Singolo punto di controllo
Tutti gli honeypot condivisono lo
stesso inconveniente; sono inutili se nessuno li attacca. Possono
fare cose meravigliose, ma se non ricevono pacchetti rimangono
indifferenti ad ogni attività non autorizzata sulla rete.
Svantaggio
- Rischio
L'honeypot introduce del rischio nella rete. Come si
vedrà poi, gli honeypot hanno diversi livelli di rischio.
Alcuni introducono un rischio molto piccolo, mentre altri offrono a
chi si intromette l'intera piattaforma, dalla quale si possono
lanciare nuovi attacchi. Il rischio è variabile in base a
come si crea e si implementa l'honeypot.
Per questi svantaggi, l'honeypot non sostituisce nessuno strumento di sicurezza. Possono solo aggiungere valore lavorando con gli esistenti meccanismi di sicurezza. Ora che abbiamo visto il valore degli honeypot, applichiamoli alla sicurezza.
Come visto prima, ci sono due tipi di honeypot, produzione e ricerca. Vediamo per primi quelli di produzione e il loro valore. Poi si vedranno quelli di ricerca.
Un hneypot di produzione è usato all'interno di una rete aziendale per aiutare a ridurre i rischi. Rende più sicure le risorse di produzione. Vediamo come questi honeypot ci aiutano nelle tre aree della sicurezza: Prevenzione, Rilevamento e Reazione.
Prevenzione
Personalmente
credo che un honeypot aggiunge poco valore alla prevenzione, non
aiuta a tenere lontani i delinquenti. Quello che li tiene lontani
sono le buone abitudini, come disabilitare i servizi inutili e
insicuri, applicare gli aggiornamenti necessari, e usare sistemi di
autenticazione sicuri. Sono queste le cose che tengono lontani i
cattivi. Un honeypot è un sistema che va bucato, quindi non vi
aiuterà nella prevenzione. Infatti, se implementato in modo
scorretto, può rendere più facile l'intromissione per
chi attacca.
Qualcuno crede nel valore dell'inganno come deterrente verso gli attacchi. Il concetto è che chi attacca spende tempo e risorse per bucare un honeypot, invece che attaccare sistemi di produzione. Chi attacca è ingannato dall'honeypot, e le macchine di produzione sono protette. Anche se questo può proteggere le macchine di produzione, penso che sia molto meglio per un'azienda impegnare tempo e risorse nel rendere più sicuri i propri sistemi, piuttosto che puntare sull'inganno. E' vero che può contribuire alla prevenzione, ma aiuta molto di più impegnare lo stesso tempo e gli stessi sforzi configurando meglio i sistemi.
Inoltre, l'inganno fallisce con due dei più comuni attacchi attuali: toolkit automatici e worm. Oggi moltissimi attacchi sono automatici. Questi tool cercano, attaccano e bucano tutto quello che viene trovano vulnerabile. Questi attaccano un honeypot, ma cercano di attaccare anche ogni altro sistema dell'azienda. Se avete una tazzina del caffè con uno stack IP, verrà attaccata. L'inganno non previene questi attacchi, perchè non c'è nessun individuo da ingannare. Per questo credo che gli honeypot aggiungono poco valore alla prevenzione. E' meglio concentrarsi di più sulla configurazione sicura dei sistemi.
Rilevazione
Mentre
gli honeypot danno poco valore alla prevenzione, credo che diano un
grande valore alla rilevazione. Per molte aziende è
estremamente difficile rilevare un attacco. Spesso le aziende sono
sommerse da attività di produzione, come giga e giga di log
dei sistemi, per cui può essere difficilissimo rilevare quando
un sistema è attaccato, o anche quando è stato bucato.
Gli Intrusion Detection System (IDS) sono una soluzione finalizzata
alla rilevazione di attacchi. Comunque, gli amministratori dei
sistemi IDS possono essere soffocati dai false positive. I
false positive sono allarmi generati quando il sensore dell'IDS
rileva del traffico marcato come "attacco" anche se in
realtà è attività regolare. Il problema è
che un system administrator può ricevere così tanti
alert nel corso della giornata che non riesce a rispondere a tutti.
Inoltre diventa un'abitudine ignorare i false positive, giorno dopo
giorno, un po' come la storia "Il ragazzo che pianse il lupo".
I sensori dell'IDS, dai quali dipende il rilevamento di
un'intrusione, perdono efficienza se i false positive non vengono
ridotti. Questo non significa che un honeypot non è soggetto a
false positive, ma che sono estremamente meno che le normali
implementazioni IDS.
Un altro rischio sono i false negative, quando l'IDS non rileva un attacco valido. Molti sistemi di IDS, pur essendo basati su signature, sulla verifica del protocollo, etc. possono lasciarsi sfuggire nuovi e sconosciuti attacchi. E' normale che un nuovo attacco sfucce alle tecnologie di IDS attuali. Inoltre, nuovi modi per eludere gli IDS sono continumente sviluppati e distribuiti. E' possibile lanciare un attacco conosciuto che non può essere rilevato, come con il K2 ADM Mutate. Gli honeypot trattano i false negative come se non fossero illusi o sconfitti dai nuovi exploit. Infatti, uno dei loro vantaggi principali è che è facile capire quando avviene un'intromissione utilizzando un nuovo o sconosciuto attacco in quanto si basano sull'attività del sistema, non su delle signature. Inoltre l'amministratore non si deve preoccupare di aggiornare il database delle signature, o di mettere patch ad un motore di detection bacato. Gli honeypot catturano allegramente ogni attacco gli arrivi. Come già detto, lavorano solo se vengono attaccati.
L'honeypot può semplificare il processo di rilevazione. Dato che l'honeypot non ha traffico di produzione, tutte le connessioni da e per l'honeypot sono sospette per loro natura. Per definizione, ogni volta che una connessione arriva al'honeypot si tratta di una ricerca, una scanzione o un attacco non autorizzato, Ogni volta che un honeypot inizia una connessione, probabilmente significa che il sistema è stato bucato. Questo aiuta a eliminare i false positive e i false negative semplificando notevolmente il processo di rilevazione. Ciò non vuol dire che un honeypot può sostituire il vostro IDS o che può essere il vostro solo strumento di rilevazione. Piuttosto, può essere un potente strumento che aumenta le vostre capacità di detection.
Reazione
Anche
se non viene considerato, l'honeypot aggiunge valore anche alla
reazione. Spesso quando un sistema all'interno di un'azienda è
stato bucato, è passata talmente tanta attività di
produzione che c'è una specie di “inquinamento delle
prove”. Chi si occupa di reagire agli attacchi non può
capire cosa sia successo quando utenti e attività di sistema
si mescolano alle informazioni raccolte. Per esempio, sono stato
spesso in aziende per analizzare sistemi compromessi, solo per
scoprire che centinaia di utenti hanno continuato ad usare il sistema
bucato. Il danno è molto più difficile da dedurre in
queste situazioni.
La seconda possibilità che presentano molte organizzazioni dopo un inconveniente è che i il sistema bucato spesso non può essere tenuto off-line. I servizi di produzione che offre il sistema non possono venire interrotti. Così, chi deve analizzare il sistema non può eseguire una completa analisi.
L'honeypot può aggiungere valore riducendo o eliminando entrambe i problemi. Offre un sistema con dati non confusi, non utilizzato che può essere tenuto off-line. Per esempio, diciamo che un'azienda ha tre web server, entrambe attaccati e bucati. Gli amministratori ci permettono di analizzare e ripulire delle falle aperte. Facendo così, non sapremo mai nel dettaglio cosa è stato fatto per penetrare nel sistema, cosa non ha funzionato, che danni sono stati fatti e se l'intruso ha ancora accesso al sistema e se il sistema è stato ripulito con successo.
Se uno di questi tre sistemi fosse stato un honeypot, ora avremmo un sistema che si può mettere off-line per essere analizzato accuratamente. In base a questa analisi, potremmo sapere non solo come hanno fatto ad entrare, ma cosa hanno fatto una volta dentro. Quanto appreso può essere poi applicato agli altri webserver, permettendo nel futuro di meglio identificare e ripararci da un attacco.
RICERCA
Come
detto all'inizio, ci sono due categorie di honeypot: produzione e
ricerca. Abbiamo visto come gli honeypot destinati alla produzione
possono aggiungere valore all'azienda. Ora vedremo come possono
aiutarci quelli usati per la ricerca.
Una delle più grandi sfide che fronteggia chi si occupa di sicurezza è la mancanza di informazioni sul nemico. Domande come qual è la minaccia, perchè attaccano, quali sono i loro strumenti e quando attaccheranno. A domande come queste chi lavora per la sicurezza spesso non sa rispondere. Per secoli le organizzazioni militari si sono concentrate sulla raccolta di informazioni per comprendere e proteggersi dal nemico. Per proteggersi da una minaccia, bisogna prima conoscerla. Nella mondo della sicurezza informatica abbiamo poche informazioni.
Gli honeypot possono aggiungere valore alla ricerca offrendo una piattaforma per studiare il pericolo. Non c'è miglior modo per imparare sui delinquenti che guardarli agire, registrandoli passo passo mentre attaccano e si impadroniscono di un sistema. Ancora di più valore è vedere cosa fanno dopo aver bucato un sistema, come comunicare con altri hacker o uploadare dei nuovi tool. E' questo potenziale di ricerca una delle caratteristiche uniche degli honeypot. Inoltre, gli honeypot finalizzati alla ricerca sono uno degli strumenti migliori per catturare gli attacchi automatizzati, come gli auto-rooters o i Worm. Dato che questi attacchi colpiscono tutta la rete, gli honeypot possono facilmente registrare questi attacchi per analizzarli.
In generale, gli honeypot per la ricerca non riducono i rischi per una organizzazione. La lezione imparata da un honeypot può essere applicata, per aumentare la prevenzione, il rilevamento e la reazione. Ma questi honeypot contribuiscono molto poco alla sicurezza diretta della struttura informatica. Se si sta cercando di aumentare la sicurezza di un ambiente di produzione, considerate l'utilizzo di un honeypot di produzione, che sono facili da implementare e mantenere. Se una università, un ente governativo o una grande enterprise vuole conoscere di più sulla minaccia, allora un honeypot destinato alla ricerca ha senso. The Honeynet Project è un esempio di queste organizzazioni che usano questo tipo di honeypot per catturare informazioni sulla comunità hacker.
Soluzioni Honeypot
Ora che abbiamo visto i differenti tipi di honeypot e le loro caratteristiche, vediamo alcuni esempi. Più lavoro con gli honeypot, più mi accorgo che non ne esistono due uguali. Per questo, ho identificato quello che chiamo livello di interazione. Semplicemente, più può interagire chi sta attaccando, più informazioni possiamo avere da lui, ma più diventa rischioso.
Più cose può fare un honeypot, più cose può fare un hacker, e più informazioni noi guadagnamo. Comunque, sempre in questa chiave, più spazio ha l'hacker verso l'honeypot, più è alto il danno che può fare. Per esempio un honeypot con un basso livello di interazione è uno che emula pochi servizi, facile da installare. Gli attaccanti possono solo scansionare e collegarsi ad alcune porte. Qui le informazioni sono limitate (tipicamente chi si è collegato a quale porta e quando) comunque c'è poco da danneggiare. Nell'altro estremo ci sono gli honeypot con un alto grado di interazione. Questi possono essere sistemi reali. Possiamo imparare molto di più, perchè ci sono sistemi operativi attuali che un intruso può attaccare e con i quali può interagire, comunque c'è anche un rischio molto maggiore. Non c'è un'honeypot migliore, dipende tutto da cosa vuoi ottenere. Ricorda che un honeypot non è una soluzione, è uno strumento. Il suo valore dipende dal tuo obbiettivo, dal semplice rilevamento alla ricerca. In base al “livello di interazione” confrontiamo alcune soluzioni honeypot.
In questo documento vediamo sei soluzioni honeypot. Ci sono molte altre soluzioni disponibili, ma noi vedremo BackOfficer Friendly, Specter, Deception Toolkit, honeypot artigianali, Mantrap e Honeynets. Questa non vuol essere una vera prova dei prodotti, piuttosto mostrerò le caratteristiche principali di ognuno di loro. Spero di far capire i diversi tipi di honeypot, come lavorano, e dimostrare il valore che aggiungono e i rischi che introducono. Se volete sapere di più su questi prodotti vi raccomando di provarli in un vostro ambiente di test.
BackOfficier
Friendly
BOF (come è comunemente chiamato) è un
honeypot molto semplice ma anche molto utile sviluppato da Marcus
Ranum and crew a NFR. E' un esempio
eccellente di honeypot a bassa interazione.
La ragione per cui sono un grande fan di BOF sta nella sua semplicità. E' una buona strada per introdurre un principiante al concetto e al valore degli honeypot. BOF è un programma che gira in ambiente Windows. Quello che fa è emulare alcuni semplici servizi come http, ftp, telnet, mail o BackOrifice. Quando qualcuno cerca di collegarsi ad una porta, lui lo registra nel log. BOF ha anche la possibilità di fare delle “fake replies”, che offrono a chi attacca qualcosa a cui collegarsi. In questo modo si possono loggare degli attacchi sull'http, attacchi brute forse sul login del telnet, o una moltitudine di altra attività. (Screenshot). Lo tengo attivo sul mio laptop, perchè mi fa capire cosa sta succedendo. Il valore di BOF è il rilevamento, come un allarme antifurto. Può monitorare un numero limitato di porte, anche se queste sono le più scansionate e bersagliate.
Specter
Specter
è un prodotto commerciale che considero un altro honeypot a
bassa interazione. E' simile a BOF in quanto emula dei servizi, ma
può emulare un range moto maggiore di servizi e funzionalità.
Inoltre non solo emula dei servizi, ma può anche emulare una
varietà di sistemi operativi. Come BOF, è facile da
implementare e a basso rischio. Specter lavora su sistemi Windows. Il
rischio è limitato perchè non c'è un vero
sistema operativo col quale può interagire chi attacca. Per
esempio Specter può emulare un webserver o un telnet server di
un sistema operativo a tua scelta. Quando l'hacker si collega, riceve
un'intestazione http o una richiesta di login. Chi attacca a questo
punto può richiedere una pagina web o cercare di loggarsi,
questa attività è registrata da Specter, ma ad ogni
modo c'è ben poco che il malintenzionato possa fare. Non c'è
una vera applicazione con la quale può interagire, a parte
alcune limitate, emulate funzioni. Il valore di Specter è nel
rilevamento. Può dire in modo semplice e veloce chi sta
cercando cosa. Come honeypot, riduce i false positive e i false
negative, semplificando il processo di detection. Supporta anche una
varietà di sistemi di logging e di alerting. Puoi vedere un
esempio di funzionamento in questo screen
shot.
Una delle caratteristiche uniche di Specter è che permette la raccolta di informazioni, o la capacità di raccogliere informazioni su chi attacca in modo automatico. Alcune di queste informazioni sono passive, come un Whois o un DNS lookup. Altre sono attive, come fare un port scanner verso chi ci sta attaccando. Queste funzionalità sono intelligenti ma molte volte non si vuole far sapere a chi attacca che lo si sta osservando. Prestate attenzione quando attivate delle risposte automatiche a degli attacchi.
Honeypot
artigianali
Sono diffusi gli honeypot casalinghi. Sono
sostanzialmente a bassa interazione. Il loro obiettivo normalmente è
di registrare attività specifica, come Worm o scanning.
Possono essere usati come honeypot di ricerca o produzione, in base
all'obiettivo. Ancora una volta, non c'è molto con cui chi
attacca può interagire, quindi il rischio è limitato.
Un uso comune è creare un servizio che attende sulla porta 80
(http) e registrare tutto il traffico da e per la porta. Viene fatto
solitamente per registrare gli attacchi Worm. Un'implementazione di
questo tipo può usare netcat, in questo modo:
netcat -l -p 80 > c:\honeypot\worm
Con questo comando, un Worm può collegarsi alla porta 80 di netcat. Il Worm che attacca può stabilire una connessione TCP e potenzialmente trasferire il suo codice pericoloso. Questo codice viene salvato al sicuro nell'honeypot, e l'amministratore può successivamente analizzarlo e stabilirne la pericolosità. Organizzazioni come SANS e SecurityFocus.com hanno usato con successo honeypot fatti in casa per registrare e analizzare Worm e attività automatiche.
Un honeypot artigianale può essere modificato per fare (e emulare) molto di più, richiedento maggiori sforzi e aumentando il rischio. Per esempio, FreeBSD ha una funzione jail che permette all'amministratore di creare un'area controllata all'interno del sistema operativo. Chi attacca può interagire con questo ambiente protetto. In questo caso il valore è che più un attaccante può fare e più si può imparare da lui. Comunque andate con cautela, maggiore è l'interazione e maggiore è la possibilità che qualcosa vada storto e che l'honeypot venga bucato.
Alcuni esempi di honeypot artigianali sono:
Port listener scritto in PERL da Johannes B. Ullrich, usato per catturare il W32/Leaves Worm.
Windows Inetd emulator per Windows NT e Win2000.
Sendmail Honeypots, usato per identificare gli spammer di posta
LaBrea Tarpit è un'approccio unico all'honeypot, permettendo non solo di registrare l'attività degli worm, ma anche di rallentarli o disabilitarli.
Deception
Toolkit
Creato da Fred Cohen, Deception
Toolkit è stato uno dei primi honeypot. Considero DTK
(come comunemente chiamato) un honeypot a medio-bassa interazione.
Può fare più di Specter e darci maggiori informazioni,
ma richiede più lavoro di installazione ed è più
rischioso. Comunque non è ancora un honeypot ad alta
interazione, perchè non c'è un OS che si può
usare. DTK è una collezione di scipt in Perl per Unix che
emulano una serie di vulnerabilità conosciute. Il bello è
che è free e si hanno i sorgenti. Il brutto è che gli
script possono essere crakkati dando a chi attacca l'accesso al
sistema. Ogni script emula una certa vulnerabilità.
Per
esempio, certi script simulano un server SMTP vulnerabile. Se
attaccato e bucato, può essere configurato per dare un finto
file di password.
Come illustrato nel loro sito, gli obiettivi di DTK sono due: ingannare (prevenzione) e avvisare (rilevazione). Come detto precedentemente, credo che l'inganno contribuisca molto poco alla prevenzione. Quando fu rilasciato DTK, distrarre chi attaccava era più importante perchè gli attacchi venivano fatti manualmente. Oggi, gran parte degli attacchi come gli autorooters e i worm sono fatti in modo completamente automatico, e viene testato tutto quello che ha uno stack IP. Non c'è intervento umano richiesto dal tool. DTK aggiunge valore al rilevamento. Come Specter può rilevare attacchi verso un sistema. Il vantaggio di DTK è che è possibile modificare gli script per emulare le vulnerabilità volute, anche se richiede un certo lavoro.
Ora vediamo gli honeypot ad alta interazione, che ci permettono di ottenere maggiori informazioni ma che sono anche più pericolosi. Vediamo Mantrap e Honeynets. Iniziamo da Mantrap.
Mantrap
Prodotto
da Recourse
Mantrap è un honeypot commeriale. Invece che emulare servizi,
crea fino a 4 sotto sistemi spesso chiamati 'jail' che sono sistemi
operativi a logica discreta separati da un sistema operativo
principale (see
Diagram).
I security administrator possono modificare questi jail come si fa
normalmente con un sistema operativo, installando applicazioni a
scelta, come database Oracle o webserver Apache. Questo rende
l'honeypot molto flessibile. Chi attacca ha un intero sistema
operativo col quale interagire, e tutta una serie di applicazioni.
Tutta l'attività è registrata e catturata. Non
solamente i port scan e i login telnet, ma si possono raccogliere
rootkit, attacchi a livello applicativo, sessioni di chat IRC, e
molto altro materiale. Ma più si può imparare e più
le cose possono andare storte. Una volta bucato, l'attaccante può
usare l'intero sistema operativo per attaccare altri sistemi. Fate
attenzione ad evitare questo. Lo considero con un livello di
interazione medio-alto. Questi honeypot possono essere usati sia per
la produzione (rilevamento e reazione) che per la ricerca. Ci sono
limitazioni a questa soluzione: il più grande è che
siete vincolati al vendor. Attualmente, Mantrap esiste solo per
Solaris.
Honeynets
Honeynets
rappresenta il top degli honeypot di ricerca. Sono honeypot ad un
alto livello di interazione, si può imparare molto, ma hanno
anche il più alto livello di rischio. Il loro valore primario
sta nella ricerca, guadagnando informazioni sui pericoli che esistono
nella comunità Internet di oggi. Honeynet è una rete di
sistemi di produzione. A differenza degli honeypot visti finora,
niente è emulato. Possono esserci solo piccole modifiche
all'honeypot. Questo offre a chi attacca una vasta gamma di sistemi,
applicazioni e funzionalità da attaccare. In questo modo
possiamo imparare molto, non solo i loro strumenti e le loro
tattiche, ma i metodi di comunicazione, l'organizzazione dei gruppi,
e i motivi. Questo ha anche un grande livello di rischio. Si possono
prendere precauzioni per evitare che un honeypot bucato possa essere
usato per attaccare altri sistemi. Honeynet è consituita da
honeypot di ricerca. Possono essere usati come honeypot di
produzione, per rilevamento o per reazione, comunque è meglio
non sprecare tempo e sforzi. Molti degli honeypot a bassa interazione
che abbiamo visto finora offrono lo stesso valore al rilevamento e
alla reazione, ma richiedono meno lavoro e offrono meno rischi. Se
siete interessati a imparare di più su Honeynet, potete
leggere il libro Know
Your Enemy.
Abbiamo visto sei tipi diversi di honeypot. Non ce n'è uno migliore dell'altro, ognuno ha vantaggi e svantaggi, tutto dipende da cosa stai cercando di ottenere. Per definire meglio le capacità dell'honeypot, li abbiamo catalogati in base al livello di interazione. Più interazione c'è, più si impara ma maggiore è il pericolo. Per esempio BOF e Specter sono a bassa interazione. Sono facili da installare e hanno un rischio minimo. Sono però limitati ad emulare servizi specifici e sistemi operativi, e ad offrire principalmente rilevazioni. Mantrap e Honeymet rappresentano honeypot con un'interazione medio-alta. Offrono un livello molto più approfondito di informazione, comunque richiedono più lavoro e hanno un rischio maggiore.
Aspetti
Legali
Nessuna
discussione sugli honeypot è completa senza parlare degli
aspetti legali. Gli honeypot sono troppo belli per non avere problemi
legali. Non sono un avvocato. Non ho fatto corsi e non ho molte
conoscenze in materia legale. Al college ero specializzato in storia,
e non ero uno dei migliori. Quindi quello che vi dirò si basa
sulla mia personale opinione, e non si basa su precedenti. Parlando
di honeypot ci sono spesso due aspetti legali: intrappolamento e
privacy. Vedremo brevemente questi due argomenti. Per prima cosa
vediamo la definizione legale di intrappolamento:
Personalmente credo che l'intrappolamento non sia un problema. Primo, la maggior parte delle persone o delle organizzazioni non sono uomini di legge, o loro agenti. Non stiamo agendo sotto il controllo del potere giudiziario, e non abbiamo l'intento di perseguire. Quindi la definizione legale di intrappolamento non si applica. Anche per chi rappresenta la legge, gli honeypot non rappresentano un intrappolamento, perchè non sono usati per indurre o persuadere chi attacca. Non viene fatto niente per indurre o persuadere ad attaccare l'honeypot. Piuttosto, è una spontanea iniziativa di chi attacca. Quindi, l'intrappolamento non è un problema con la tecnologia honeypot.
L'altro argomento è la privacy, sia nei file messi sul sistema bucato dall'intruso che nell'intercettazione di comunicazioni (solitamente IRC) che passano attraverso l'honeypot. Mentre ci sono casi di perdita del diritto di privacy su file memorizzati su computer rubati, o su computer che un intruso ha bucato e sta utilizzando senza il permesso del proprietario, ci sono meno casi riguardanti intercettazione di comunicazioni che sono state fatte passare da un host bucato. Le leggi sulla privacy esistono in statuti di stato o federali. Gli statuti statali possono sostituire o essere sostituiti da quelli federali.
A livello federale, i due statuti principali che riguardano la privacy delle comunicazioni sono l'Electronic Communication Privacy Act (18 USC 2701-11), e il federal Wiretap Statute (Title III, 18 USC 2510-22). E non dimenticate che altri Paesi possono avere leggi sulla privacy simili che vanno considerate se implementate degli honeypot fuori dall'U.S.
L' Honeynet Project sta cercando di capire quali problemi esistono e come risolverli in molte organizzazioni di oggi giorno. Finchè non saremo in grado di stabilire i possibili problemi legali, raccomandiamo alle organizzazioni la lettura di tutti i decreti di legge con il loro consigliere legale prima di procedere.
Conclusione
Un honeypot è solo
uno strumento. Come viene usato dipende da te. Ci sono una varietà
di honeypot, ognuno dei quali ha un differente valore. Abbiamo visto
due categorie di honeypot: produzione e ricerca. Gli honeypot di
produzione aiutano a ridurre i rischi. Fanno poco per la prevenzione,
ma aiutano molto nella rilevazione e nella reazione. Gli honeypot di
ricerca, invece, non sono usati per proteggere una specifica
organizzazione. Sono usati come strumento di ricerca per capire i
pericoli di internet. A prescindere dal tipo di honeypot usato,
tenete a mente il “livello di interazione”. Significa che
più un honeypot può fare, e più si può
imparare da lui, ma maggiore è il rischio. Bisogna capire
quale è il miglior compromesso tra potenzialità e
rischio in base alle proprie esigenze. Un honeypot non risolve i
problemi di sicurezza di una organizzazione, solo le buone abitudini
possono farlo. Tuttavia, vi può aiutare contribuendo a queste
buone abitudini.
Risorse
Soluzioni honeypot
Letture aggiuntive
Biografia
dell'autore
Lance Spitzner è attualmente
un membro attivo dell' Honeynet
Project. Si diverte a far esplodere sistemi nel suo laboratorio.
Prima di questo, era un Tanker
in the Rapid Deployment Force, dove faceva esplodere cose
differenti..Lo puoi contattare a lance@honeynet.org
.
Traduzione a cura
di:
Daniele Besana
www.itvirtualcommunity.net
IT Virtual Community
La comunità degli informatici
italiani.