14/05/2009 di Redazione

Sicurezza informatica, parola a un Hacker

Zavoi fu il primo a "bucare" un Mac, in occasione del primo Pwn2Own. Gli abbiamo rivolto qualche domanda per capire meglio il mondo della sicurezza informatica.

immagine.jpg

Introduzione

Tre anni fa gli organizzatori del CanSecWest hanno creato la competizione Pwn2Own, sulla quale vi informiamo regolarmente, che cerca di mettere alla prova la sicurezza dei computer in commercio. Zavoi fu il primo a "bucare" un Mac, in occasione del primo Pwn2Own, e ha scritto il libro "The Mac Hacker's Handbook", il manuale per l'hacker Mac, insieme al vincitore della seconda e della terza edizione, Charlie Miller.

TH: Parlaci un po' di te, per cominciare.

Dino: Sono un professionista della sicurezza informatica e un ricercatore indipendente. La mia esperienza va dai test d'intrusione ai controlli sui software dio sicurezza, fino alla gestione dei sistemi. Sono coautore di due libri, l'ultimo dei quali è un manuale sulla sicurezza dei Mac, che ho scritto insieme a Charlie Miller. Ho parlato a molte conferenze sulla sicurezza, in particolare riguardo alle mie ricerche sulla sicurezza dello standard wireless 802.11, e sui rootkit basati sulle macchine virtuali. Mi concentro sui metodi di attacco, perché ritengo che sia necessario agire come un pirata, per sviluppare soluzioni efficaci.

TH: la ricerca sui metodi d'attacco è l'approccio più diffuso, al momento?

Dino: no, per niente. Anzi, è una rarità, considerato ancora un tabù da molti, nell'industria della sicurezza. Molte conferenze, come la CanSecWest, permettono di parlare liberamente di falle e attacchi, ma quelle più importanti, come la RSA Expo, se ne occupano solo marginalmente.

TH: Si capisce, quindi, perché la CanSecWest, o la Black Hat Briefings, introducono sempre dei lavori più interessanti, rispetto agli altri. Come sei approdato al settore della sicurezza?

Dino: ho cominciato come autodidatta alle superiori, e quasi immediatamente sono arrivati i primi lavori, che erano delle prove di penetrazione, per conto di aziende della zona, e altre molto lontane. Però non era sufficiente per mantenermi a scuola, quindi lavoravo part time come amministratore di sistema Unix. Concentrarmi sulla sicurezza, tanto a scuola quanto al lavoro, mi ha permesso di lavorare per il Red Team, che poi mi ha assunto, per offrire consulenze ad aziende esterne. Una volta finito il college mi spostai a New York City, dove cominciati a lavorare per @stake, una società di consulenza, che fu poi acquistata da Symantec.

Più di quello che sembra

TH: sei molto modesto. Sappiamo che sei membro del Sandia National Laboratories' Information Design Assurance Red Team (IDART), che viene contattato dalle agenzie governative quando vogliono assicurarsi che non si verifichino situazioni degne di film e serie TV. Parlaci dei "bersagli": non sono consapevoli dei tuoi tentativi d'intrusione, e siete autorizzati a usare tutti i messi possibili, come una chiave USB "dimenticata" in un parcheggio, nella speranza che la vittima la raccolga e la inserisca nel suo computer?

Dino: non possono confermare né negare.

TH: @Stake era una compagnia nata anche dall'acquisizione di L0pht Heavy Industries, che rappresentava uno dei primi gruppi di hacker "dal cappello grigio", per collocarli tra quelli "neri" e quelli "bianchi", ai quali ci si è sempre riferito per differenziare i buoni dai cattivi. Molti ragazzi con il cappello bianco, però, non volevano avere nulla a che fare con i "cattivi", e quindi non avevano conoscenze sufficienti per sviluppare strumenti efficaci. L'idea del "grigio" quindi, sembra più che ragionevole: com'era lavorare in quell'ambiente?

Dino: @stake aveva nel suo staff alcuni dei professionisti migliori del settore, e per me fu una grande opportunità poter lavorare fianco a fianco con loro, così come poter partecipare a progetti importanti per alcuni grandi clienti. Non posso rivelare molti dettagli, tranne che mi occupavo di attacchi via rete, siti web, e software, di sviluppo della sicurezza e di formazione del personale.

TH: parlaci del tuo attuale impiego

Dino: non posso dire nulla al momento.

TH: puoi parlarci del computer che stai usando come piattaforma principale?

Dino: uso diversi sistemi regolarmente, e sono quasi tutti Mac. Quello principale comprende un MacBook Pro e un Mac Pro. Uso principalmente Mac OS X dall'estate del 2001, circa.

TH: perché i Mac?

Dino: sono un utente Unix appassionato, e Mac OS X è il sistema Unix più conveniente e funzionale che conosca. Posso sfruttare un ambiente Unix tradizionale, guardare un DVD e usare Microsoft Office. Funziona e mi permette di portare a termine il mio lavoro.

Mi sono concentrato sulla sicurezza di Mac OS X da quando ho visto un Mac, e mi sono divertito a metterlo alla prova. Naturalmente sono anche interessato a mettere al sicuro i miei sistemi, cosa di cui mi occupo personalmente.

Rischi contro Vulnerabilità

TH: vorremmo sfruttare questa intervista, e altre, per ridurre la tensione tra utenti Mac e Windows, puoi darci una mano?

Dino: la diversità è un elemento che aumenta la sicurezza dei sistemi, soprattutto se i vostri dati sono distribuiti su diversi sistemi, che rendono più difficile ottenere l'accesso a tutto. A meno che, naturalmente, non ne usiate uno per accedere all'altro, o siano sulla stessa rete. Molti attacchi, in realtà, passano dal browser al giorno d'oggi, quindi è probabile che un sistema sia al sicuro, ed è difficile che un sistema soffra un contagio, se usate un SO diverso da quello che si collega alla rete.

TH: alle conferenze enfatizzi spesso la differenza tra il concetto di rischio e quello di vulnerabilità. Ce lo puoi spiegare?

Dino: una vulnerabilità rappresenta un punto debole in un sistema, un pericolo potenziale che potrebbe essere sfruttato. Il rischio è un elemento che consegue alla vulnerabilità, e rappresenta le possibilità concrete per un criminale di sfruttare la vulnerabilità per raggiungere i propri scopi. Spesso parlo anche di "tranquillità" contro "sicurezza", per renderlo più comprensibile ai non addetti ai lavori: lasciare la porta di casa aperta non è mai sicuro, la il livello di tranquillità dipende in gran parte da dove vivi.

La sicurezza di un sistema dovrebbe essere adatta al rischio correlato. Chi si occupa di difesa, tuttavia, spesso è più preoccupato d'inseguire gli assaltatori piuttosto che di anticipare il rischio. Non ha molto senso aspettare che arrivi il malware prima di intervenire, quindi.

TH: e per quanto riguarda la differenza tra vulnerabilità ed exploit?

Dino: una vulnerabilità è una debolezza nel software, un potenziale punto dove far breccia. L'atto di attacco vero e proprio si affida ad un software, che viene generalmente chiamato "exploit". A conti fatti, non tutte le vulnerabilità sono sfruttabili subito, o in maniera affidabile.

Senza esperienza è praticamente impossibile sfruttare una vulnerabilità, ed è molto difficile anche capire se sarebbe possibile farlo. Spesso si crede che una vulnerabilità sia sfruttabile perché qualcuno è riuscito a creare un exploit, anche se si tratta di un esperto con molto talento. In verità, bisognerebbe dar retta anche agli analisti del settore, per un'opinione più serena.

Sandbox

TH: quindi soluzioni come le "sandbox" servono ad evitare che vulnerabilità sconosciute portino ad exploit anche gravi?

Dino: sì, l'idea è di "contenere" il danno, se questo si provoca. La sandbox, in realtà, non evita gli exploit, ma piuttosto evita che un exploit abbia effetti sul sistema: Google Chrome, ad esempio, ha una sandbox molto rigida per il rendering delle pagine web, che non può impedire ad un exploit di eseguire codice arbitrario, ma evita che questo danneggi il sistema.

TH: Sei riuscito ad adattarti molto bene al passaggio di Apple ai processori Intel. Con Snow Leopard saranno introdotte caratteristiche con ASLR, la segnatura del codice per le estensioni del kernel, supporto Full NX bit, e il sandboxing per molte applicazioni. Sono tutti aspetti già presenti in Windows Vista, come credi che aiuteranno a rendere il Mac più sicuro?

Dino: non ho ancora studiato Snow Leopard, per via degli accordi di riservatezza, ma sono contento di sapere che introdurrà queste caratteristiche.

TH: non siamo sicuri che saranno confermate, per ora se ne parla nei blog. Ammettiamo che sia tutto vero, credi che le cose cambieranno, che il sistema sarà più sicuro?

Dino: spero che gli sviluppi saranno validi. Comprerò e installerò Snow Leopard, su questo non c'è dubbio. Tutte queste funzioni di sicurezza rendono gli attacchi più difficili: ASLR e NX ostacolano l'iniezione di codice in un'applicazione, mentre la sandbox limita le azioni possibili tramite un'applicazione, limitando le possibili conseguenze quasi a zero. La segnatura del codice per le estensioni del kernel, infine, impedisce d'installare nuovo software senza autorizzazione, come i rootkit.

C'è una differenza tra la sandbox del browser e quella del sistema operativo. Chrome è l'unico browser dotato di sandbox, una scelta molto intelligente, che ha permesso al browser di passare indenne il Pwn2Own di quest'anno. Il suo modello, tuttavia, è limitato, perché non può controllare plugin come Flash o Java, che hanno bisogno, per funzionare, di un accesso completo al sistema. Sono i processi di rendering ad essere "isolati" dal sistema, e superare questa protezione rappresenterebbe un risultato eccezionale.

Hypervisor e Cloud

TH: cosa pensi di approcci nuovi come quello "terminale muto", che vedremo se larghezza di banda e latenze raggiungo livelli infinitamente migliori di quelli attuali?

Dino: credo che la direzione attuale sia verso macchine sempre più "snelle", che si affidano alla rete per la maggior parte dei compiti. Quando un consumatore affida i propri dati alla rete non si preoccupa più di eventuali perdite, e si fiderà dei fornitori del servizio, se hanno opzioni a sufficienza, come la crittografia online, che impedisca ai fornitori stessi di accedere ai dati.

TH: Questo è il punto. Il cloud computing e l'archiviazione online rappresentano una soluzione migliore? Servizi come GMail sono comodi, ma ci sono messaggi di posta che, forse, non vorremmo che fossero visti da altri. Nuove tecnologie, come gli SSD, permettono di avere a casa i livelli di crittografia ed affidabilità offerti dal cloud computing. Non sarebbe una buona idea?

Dino: amo molto gli SSD, perché sono silenziosi, veloci ed affidabili. Personalmente, uso la crittografia per l'intero disco, e spengo il sistema ogni volta che posso, per limitare i rischi.

TH: cosa ci dice dei "secure hypervisor", i software virtualizzati usati per la protezione dei sistemi?

Dino: i secure hypervisor si usano per proteggere diversi sistemi, come le console da gioco, che li sfruttano per evitare gli utenti applichino modifiche non autorizzate. Mi piacerebbe che ci fossero soluzioni simili per la protezione generica dei dati.

TH: negli anni '90 abbiamo dovuto affrontare i virus polimorfici, che erano in grado di eludere molti antivirus che si basavano sulla segnatura. Quali sfide credi che dovremo affrontare nei prossimi due anni?

Dino: l'uso della segnatura negli antivirus è stato un passo avanti che abbiamo confuso con una soluzione. La sfida nei prossimi anni sarà sviluppare sistemi capaci di riconoscere e prevenire exploit sconosciuti e nuovo malware. I modelli di business attuali, però, non incoraggiano le case produttrici a produrre soluzioni migliori di quelle attuali. Una situazione poco invitante, che però ha il vantaggio di lasciare spazio a nuove aziende che hanno voglia di rischiare e innovare.

Minimizzare i rischi

TH: conosci una qualche startup che sia già al lavoro su questi aspetti? Il Mac sarebbe una buona piattaforma per mostrare una soluzione simile, grazie al ridotto numero di componenti hardware da supportare.

Dino: no, ci sono alcuni prodotti che offrono protezione anti-malware basata sul comportamento, ma sono per Windows. Mi piacerebbe che esistessero anche per Mac.

TH: ci sono anche strategie come la Deep Packet Inspection, usata dalla NSA per intercettare il traffico VoIP come se si trattasse di telefoni tradizionali, o dalla Cina per il progetto "Golden Shield", per controllare le informazioni disponibili su Internet. Questa tecnologia potrebbe essere applicata ai desktop, per esempio per evitare il passaggio di dati non autorizzati?

Dino: non credo che ci sia spazio per una versione desktop della Deep Packet Inspection. Sarebbe come guardare la TV del salotto dal giardino. Il sistema dovrebbe analizzare dati e processi nel momento in cui vengono gestiti ed elaborati, non dopo.

TH: se però avessi una barriera separata, ridurrei il rischio di exploit, soprattutto di quelli che disabilitano i sistemi di sicurezza attivi su una macchina. La scatola esterna avrebbe il suo sistema operativo, non sarebbe esposta alle falle di un browser o a quelle legate ai plugin. O forse gli attuali strumenti di sicurezza sono sufficienti, e rendono un sistema ulteriore una scelta paranoica?

Dino: un secure hypervisor o persino un driver del kernel rappresenterebbero un livello di sicurezza sufficiente per la maggior parte degli utenti domestici, ammesso che non usino il sistema come amministratori quanto si collegano alla rete. È più facile, per il malware, evitare l'analisi dei pacchetti che sfruttare una vulnerabilità del kernel, e non c'è ragione per la quale un programma pericoloso non possa passare dal protocollo SSL. Solo che fino ad ora non ce n'è stato bisogno.

TH: molti degli exploit che abbiamo visto al Pwn2Own hanno sfruttato elementi secondari del sistema operativo, come Quick Time, Adobe Flash o il browser. Che cosa può fare l'utente per proteggersi da questo tipo di attacco? Installare applicazioni di sicurezza, accedere al sistema come utente e non come amministratore può aiutare, oppure siamo tutti alla mercé del "primo che passa"?

Dino: gli utenti sono sempre alla mercé delle applicazioni e del sistema operativo, o meglio, degli sviluppatori. È doveroso usare impostazioni e applicazioni di sicurezza, in ogni caso: il firewall, però, deve permettere al browser di accedere a Internet, i sistemi anti spyware e anti malware rilevano alcune azioni molto invasive, ma non azioni sofisticate come quelle usate al Pwn2Own. Accedere al sistema senza diritti di amministratore non impedisce all'intruso di accedere ai dati, anche se ostacola, in parte, l'azione dello spyware.

Per ridurre la possibilità di attacchi è una buona idea disabilitare i plug-in non necessari, ma al momento i browser non offrono le opzioni che sarebbero necessarie. Internet Explorer offre la maggiore flessibilità, in questo senso, ma non permette di selezionare quali siti possono usare flash o java. È un'area nella quale tutti i browser hanno ancora molto da fare.

Scegliere la piattaforma più sicura

TH: recentemente abbiamo chiesto ad Apple di attivare una diversa gestione dei diritti di accesso ai file su un notebook, per sfruttare la condivisione di alcuni file a casa, ma non in ufficio o in un bar, senza dover modificare tutto manualmente. Credi che sia un aspetto importante?

Dino: mi piace la gestione delle reti che applica Apple, e mi piacerebbe poter assegnare diverse impostazioni di sicurezza alle opzioni disponibili. Il sistema di Windows Vista è piuttosto buono, perché permette all'utente di selezionare tra "pubblico", "privato" e "lavoro", di fatto facilitando la protezione dei dati in base alla situazione.

TH: qualche tempo fa Steve Ballmer ha parlato di ricerche su Webkit, che hanno portato Microsoft a decidere di tenere Trident. Gli sviluppatori Web, da parte loro, vorrebbero motori di rendering migliori e più compatibili. Dal punto di vista della sicurezza, però, ha senso raccogliersi attorno ad uno, o pochi standard? Per esempio, l'exploit su Mac OS e quello sull'iPhone sono basati sullo stesso codice Javascript. Visto che i principali browser usano motori diversi, in teoria non è possibile sfruttare un solo exploit per tutti. Forse, però, la standardizzazione rappresenta un modo di concentrare gli sforzi della comunità?

Dino: la standardizzazione aiuta a migliorare uno standard più sicuro, ma significa anche che una falla in quel singolo standard rapprenderà un rischio per un numero maggiore di sistemi. Credo che la diversità sia un elemento a favore della sicurezza, perché rende ogni malware meno redditizio per chi lo crea.

TH: se dovessi raccomandare un sistema, sceglieresti Mac, Windows o Linux? O credi che siano tutti ugualmente (in)sicuri?

Dino: per la maggior parte dei consumatori e utenti domestici, mi sento di raccomandare Mac, perché al momento rappresentano un bersaglio minoritario per chi scrive malware e virus. In generale sono anche sistemi facili da usare. Se si tratta di utenti intraprendenti e avventurosi, consiglierei Ubuntu, e Windows Vista per i professionisti, perché è più sicuro e trova uno spazio migliore nelle aziende.

TH: perché Ubuntu, tra le distribuzioni Linux?

Dino: credo che Ubuntu sia molto "user-friendly". Personalmente preferisco le distribuzioni Debian, ma non credo sia il caso di farne una guerra di religioni.

TH: un consiglio per i nostri lettori, per rendere i loro sistemi più sicuri?

Dino: gli utenti Windows dovrebbero passare a Vista o Windows 7 quanto prima possibile, per sfruttare le funzioni di sicurezza di questi sistemi. Lo stesso vale per gli utenti Mac, ai quali consiglio il passaggio a Snow Leopard. Gli utenti Linux, al momento, hanno dei buoni prodotti nelle principali distribuzioni, e non hanno bisogno di ulteriori precauzioni. Per tutti, si può fare riferimento alle linee guida pubblicate dalla NSA (National Security Agency, USA) per configurare il proprio sistema nella maniera più sicura possibile.

Spegnere Internet

TH: raccomanderesti Chrome per chi usa Windows?

Dino: sì, se la sicurezza è una priorità raccomanderei Chrome per qualsiasi sistema operativo che lo supporti. Questo browser ha lasciato gli altri nella polvere in termini di sicurezza, grazie alla sua sandbox multilivello. Combinato con Windows Vista o Windows 7, è ancora più sicuro.

TH: quale browser dovrebbero usare gli utenti Mac e Linux?

Dino: se la sicurezza deve essere il parametro su cui basarsi, sceglierei lynx.

TH: accidenti, una situazione peggiore di quanto credessimo. Tu che cosa hai scelto?

Dino: dipende dal Mac. Uso Safari, Firefox e Chrome su una macchina virtuale Windows Vista x64 su VMware Fusion. Mi piace l'interfaccia di Safari, e lo uso per la navigazione meno importante, per attività la cui sicurezza non mi preoccupa più di tanto. Per un livello di sicurezza maggiore uso Firefox, come per l'home banking. Per lo sviluppo delle applicazioni di sicurezza, infine, uso Chrome. Questo tipo di separazione può sembrare impegnativo, ma non è un lavoraccio usare un browser dedicato per l'home banking e altre attività critiche. La cosa migliore sarebbe tenere un computer dedicato, senza nulla installato se non le applicazioni necessarie, e i relativi aggiornamenti.

TH: Nel 1998 i membri del gruppo L0pht dimostrarono al Congresso degli Stati Uniti che sarebbe stato possibile "spegnere" Internet in 30 minuti. La sicurezza da allora è certamente migliorata, ma anche gli attacchi sono sempre più sofisticati. Credi che quell'affermazione sia ancora valida?

Dino: sì, e non credo che dovrei dire molto a riguardo. Internet è più fragile di quanto si pensi, e gran parte dei protocolli sui quali si basa dovrebbero essere riscritti, aggiungendo la sicurezza tra i parametri dello sviluppo.
Vi chiedo scusa per alcune risposte vaghe ed evasive, spero che capirete che questo settore richiede una certa discrezione, quando non segretezza, per proteggere clienti e utenti.

scopri altri contenuti su

ARTICOLI CORRELATI