Autenticazione a due fattori – Perché è importante e come usarla

Trovate qui la traduzione italiana del mio articolo pubblicato sul numero 38 di ClubHACK Magazine.

La storia finora

Recentemente abbiamo letto notizie di due importanti attacchi a due altrettanto importanti social network: Twitter (del quale ho parlato qui) e LinkedIn. Questi attacchi erano mirati a rubare, dai due DB, username, password e addirittura token di sessione degli utenti dei due social network.

Molti hanno fatto correttamente notare che le password trafugate erano cifrate, ma questo non è sufficiente. Molti utenti infatti usano ancora password troppo comuni, in questo modo è semplice risalire, partendo da una password hashata, alla password in chiaro, giusto un giro veloce di rainbow table su un computer rapido.

Questo significa che cifrare le password non è più sufficiente, ma semplicemente perché usare solo le password non è più sufficiente.

Se un attaccante ruba un database di password di Twitter o LinkedIn, significa che può accedere con un gran numero di account, questo principalmente perché questi due social network molto importanti non dispongono di una caratteristica di sicurezza fondamentale: l’autenticazione a due fattori.

Questa caratteristica è davvero fondamentale perché username e password sono troppo deboli, troppo facilmente rubabili, e addirittura troppo facilmente indovinabili, anche senza essere hacker esperti.

Così è importante che quando ci si connette ad un servizio web, soprattutto un social network che tratta nostri dati molto importanti, bisogna usare non solamente qualcosa che noi sappiamo (come la password) ma anche qualcosa che si possiede.

Questo tipo di caratteristica tipicamente funziona aggiungendo alla coppia username e password un token, hardware o software, come questo SecurID di RSA.

screenshot.2

Questo significa che se noi abbiamo questo token, siamo gli unici che possiamo accedere al servizio. Possiamo farlo perché un attaccante può ancora rubare o indovinare la nostra password dal database del social network, ma dovrebbe anche rubarci dalla tasca il nostro token. E questo è improbabile.

Come detto prima, né Twitter né LinkedIn offrono un’autenticazione a due fattori. Di sicuro ci stanno lavorando, ma ci vorrà un po’ di tempo prima che possano renderla disponibile ai propri utenti.

Tuttavia altri social network e servizi cloud già oggi offrono questo tipo di autenticazione. Stiamo parlando di Facebook, Google e Dropbox.

Vediamo come impostare l’autenticazione a due fattori su questi servizi, e rendere i nostri account più sicuri.

Facebook

L’autenticazione a due fattori su Facebook funziona in due modalità. Può sia inviare un SMS al vostro cellulare, contenente il token da utilizzare nella fase di login, sia generare lo stesso token dall’applicazione di Facebook del vostro smartphone. Prima però è necessario abilitare la funzionalità. Vediamo come.

Prima di tutto dovete andare nel tab Sicurezza del menu Impostazioni Account, e troverete questa opzione

screenshot.3

Vi sarà chiesto di inserire e validare il vostro numero di cellulare ed è fatta! Da questo momento ogni volta che farete login da un nuovo browser, o se avrete cancellato i cookie dal vostro solito browser, Facebook vi chiederà di inserire il codice inviato tramite SMS al vostro cellulare.

In alternativa, se avete uno smartphone con l’app di Facebook, potrete ottenere un codice valido tramite l’opzione Generatore di Codici presente nell’app stessa (funziona molto bene sia su Android che su iOS).

Google

La funzionalità di autenticazione a due fattori di Google funziona in modo molto simile a quella di Facebook.

Per attivarla dovete andare nella pagina delle Impostazioni del vostro Google Account, tab Sicurezza e abilitare la Verifica in due passaggi

screenshot.4

Vi sarà richiesto di inserire il vostro numero di cellulare e confermarlo

screenshot.5

Fatto questo potrete accedere al vostro Google Account solo inserendo il codice inviato via SMS al vostro cellulare.

Questa è la modalità principale, analogamente a Facebook anche Google mette a disposizione un’app da scaricare sullo smartphone, la Google Authenticator.

Si può scaricare da iTunes o Play Store, è gratis ed è molto semplice da configurare, poiché per attivarla dovete solo inquadrare il QR Code che Google vi mostra nella pagina di attivazione dell’app

screenshot.8

La caratteristica più interessante di Google Authenticator è che non è legata ad un singolo account, è possibile infatti utilizzarla per più Google Account, e metterli in sicurezza tutti in una sola volta. Questo perché l’app genererà un codice per ognuno degli account a cui è associata.

La cosa ancora più interessante è che questo servizio non è valido solo per Google, ma può essere utilizzato come framework per fornire un’autenticazione a due fattori anche da altri servizi cloud, come ad esempio Dropbox.

Dropbox

Per mettere in sicurezza il vostro account Dropbox con l’autenticazione a due fattori, fornita da Google, dovete andare nel tab Security del menu Settings, ed abilitare la two-step verification

screenshot.10

Vi sarà quindi chiesto di inserire un numero di telefono, dove mandare l’SMS col codice, o in alternativa utilizzare un’app per generare il codice di accesso.

screenshot.12

Tutto qui! Ora aprendo l’app Google Authenticator avrete questa situazione

screenshot.13

Conclusioni

Abbiamo visto un po’ più in dettaglio cos’è l’autenticazione e due fattori, perché è importante averla disponibile sui servizi che si utilizzano e, cosa più importante, come è facile attivarla ed usarla.

Sfortunatamente non tutti i social network che usiamo quotidianamente offrono questa funzionalità, ma per stare più sicuri è importante attivarla ogni volta che ci viene offerta.

Può essere noioso inserire ogni volta un codice, ma questo piccolo passaggio può realmente migliorare la nostra sicurezza online.

Aggiornamento: visto che anche LinkedIn e Twitter hanno abilitato la funzionalità di autenticazione a due fattori, ho scritto una guida per abilitarla.

Federico Filacchione
pubblicato originariamente come “Two Factor Authentication – Why it is important and How to use it” su ClubHACK Magazine numero 38.

Autenticazione a due fattori – Articolo su ClubHACK Magazine

chmag_cover Continua la mia collaborazione con la prima rivista di hacking indiana, che nel numero appena uscito pubblica un mio nuovo articolo-tutorial nella sempre simpatica sezione Mom’s Guide.

L’articolo, intitolato Two Factor Authentication – Why it is important and How to use it analizza un po’ i recenti attacchi a Twitter e Linkedin (di cui avevo già parlato qui) e spiega come su altri servizi e social newtork sia possibile abilitare l’autenticazione a due fattori. In modo molto semplice ed immediato, e quindi mettere un po’ più di sicurezza nel proprio account.

Come al solito tra qualche giorno troverete qui la traduzione italiana dell’articolo, nel frattempo potete leggerlo sul sito di ClubHACK Magazine o, ancora meglio, scaricare l’ultimo numero della rivista in PDF!

Giocare sporco: anatomia di un attacco DDoS tramite game server

Trovate qui la traduzione italiana del mio articolo pubblicato sul numero 29 di ClubHACK Magazine.

Gli attacchi di tipo Distributed Denial of Service (DDoS) sono l’arma più comune e facile da utilizzare per creare grossi problemi e danni molto visibili ad un determinato bersaglio, e con uno sforzo molto limitato.

Questo attacco è senza dubbio quello più utilizzato dai gruppi di hacktivist, poiché necessita di un tool molto comune (come LOIC), e si basa sulla rabbia di centinaia, se non migliaia, di persone disposte a fare qualcosa di semplice. La sua efficacia deriva anche dal fatto che è un attacco molto complesso da evitare, questo perché gli attaccanti dispongono di una banda di rete enorme, e c’è poco altro da fare se non chiudere i firewall per evitare danni peggiori ai server interni. In ogni caso l’attaccante vince, e i servizi sono giù per un po’ di tempo.

Questo è l’unico lato positivo della storia, l’attacco non può durare a lungo e il “Tango Down“, se correttamente individuato e mitigato con una chiusura completa, durerà pochi minuti, lasciando il tempo a chi l’ha sferrato di bullarsi con il resto del mondo via Twitter.

Devo ammettere che spesso si assiste a società in grado di farsi un attacco DDoS da sole,  pubblicando servizi su server mediocri e con un’architettura di rete ridicola. Così non appena il sito va online tutto viene giù alla prima milionata di richieste della homepage. E questo causa molti più problemi che non un gruppo di hacktivist, non credete? 🙂

Tornando all’argomento dell’articolo, questo è il modo classico di eseguire un attacco DDoS, ci sono però altri metodi, più interessanti da analizzare e più raffinati, per creare questo tipo di disservizi.

Lavorando sul campo svolgo spesso analisi post-mortem su attacchi di vario tipo, e recentemente ho analizzato questa modalità di eseguire un DDoS tramite server di gioco online. Vediamo insieme come.

Partiamo dal dire che l’attacco non è eseguito direttamente dall’attaccante, ma usando, come fossero una botnet, un numero elevato di game server custom (cioè gestiti non dalla casa produttrice del gioco, ma da gruppi di fan, spesso illegalmente), sparsi per il globo. Sono loro che attaccheranno il bersaglio.

La Figura 1 mostra come l’attacco è eseguito:

Game server DDoS Attack Flood Scheme

Schema del flood DDoS tramite game server

La prima cosa che colpisce è che, tenendo presente che i game server custom possono essere dislocati ovunque nel mondo e che nascono e muoiono in continuazione, è praticamente impossibile identificare il reale attaccante.

Questo tipo di attacchi non è molto conosciuto, né molto eseguito, ma è stato individuato e descritto per la prima volta lo scorso anno.

Ma perché succede una cosa simile?
Succede perché questi server di gioco sono vulnerabili ad un attacco specifico. L’attacco viene eseguito chiedendo, con un pacchetto fatto ad hoc, lo status di gioco del server. Questa è una richiesta UDP molto piccola, ma se fatta spoofando l’IP sorgente del richiedente, il server risponde a quell’IP con un’enorme quantità di informazioni.

Sempre lo scorso anno uno degli sviluppatori di questi server custom ha pubblicato questa vulnerabilità, e contestualmente rilasciato una patch per risolvere il problema. Naturalmente in molti casi questi server sono del tutto illegali, il software è scaricato chissà da dove, e sono attivi in molte nazioni, comprese Russia e Cina. Non ci si può quindi aspettare che gli amministratori siano molto attenti ad applicare le ultime patch, o che rispondano a qualunque tipo di richiesta. Molto probabilmente chiuderanno bottega e ne attiveranno uno nuovo da un’altra parte.

Avendo modo di lavorare direttamente al caso, posso pubblicare i dettagli dell’attacco, analizzando il traffico reale. Come potete facilmente immaginare, non pubblicherò il bersaglio dell’attacco, né i nomi o gli IP dei game server coinvolti. Questo è solo un case study per capire come funziona questo tipo di performance.

La prima cosa da notare è la tipologia dei pacchetti. Come detto è tutto traffico UDP, di dimensione variabile, inviati alla porta 21 del server oggetto dell’attacco.

Fusso UDP di risposta

Fusso UDP di risposta

Guardando il dettaglio di un paio di flussi, possiamo vedere che il pacchetto è uno statusResponse da un server custom di Call of Duty.

CoD statusResponse

CoD statusResponse 2

Potrei continuare a mettere screenshot per giorni, i server coinvolti nell’attacco erano centinaia, e ognuno aveva inviato un’enorme quantità di risposte. Immagino che i giocatori non fossero molto contenti dei lag nel gioco durante l’attacco!

Call of Duty non è stato l’unico gioco utilizzato, ma erano coinvolti anche dei server Quake 3.

Quake3 game server resposne

E anche in questo caso abbiamo un pacchetto statusResponse.

Quake 3 response

Penso che sarete d’accordo con me nel ritenere questo attacco molto più raffinato e ordinato, rispetto ad un classico DDoS eseguito con LOIC.

Vi domanderete ora come fare ad evitare questo tipo di attacchi.
C’è poco da fare purtroppo.

Mettere in blacklist i game server è una tattica poco efficace, loro e i loro IP vanno e vengono ogni giorno, quindi non servirebbe a molto. Proseguendo con il patching questo tipo di vulnerabilità potrebbe andare a morire, ma ci saranno sempre server vulnerabili in giro, spesso da certe nazioni, pronti ad essere usati per sferrare questi attacchi.

Come al solito la migliore difesa monitorare costantemente cosa accade sulla vostra rete. Solo in questo caso è possibile rispondere rapidamente e provare a mitigare l’attacco, sia tramite blacklist temporanee, sia tramite chiusure dei firewall.

Ma, come al solito, se non vedete nulla non saprete mai cosa sta succedendo.

Federico Filacchione
pubblicato originariamente come “Playing Bad Games: Anatomy of a Game-Server DDoS Attack” su ClubHACK Magazine numero 29.

Anatomia di un attacco via game server – Articolo su ClubHACK Magazine

ClubHack Magazione June 2012

Tra i tanti impegni lavorativi che mi allontanano un po’ dal blog c’è per fortuna tempo per scrivere qualcosa per gli amici della prima rivista indiana di haking.

L’articolo, intitolato Playing Bad Games: Anatomy of a Game-Server DDoS Attack, analizza la modalità di esecuzione di questo insolito attacco, che sta iniziando ad apparire in giro per la rete.

Potete leggere l’articolo in originale qui, scaricare il pdf della rivista (ci sono molte altre cose interessanti) leggere la traduzione italiana su questo blog!

Bye!

Proteggi la tua privacy online con Tor

Trovate qui la traduzione italiana del mio articolo pubblicato sul numero 26 di ClubHACK Magazine.

Tor logo

Che cos’è Tor?

Iniziamo con spiegare cosa significa Tor: è un acronimo che sta per The Onion Router (Il Router Cipolla).
Un router è un dispositivo che gestisce e smista il traffico su una rete di computer. Quando scrivere una URL nel vostro browser, come http://chmag.in e date invio, inviate questa richiesta al router del vostro ISP, che la rigirerà ad un altro router esterno e così via, finché non raggiungete il router dell’ISP di CHmag, che vi invierà la pagina del sito. Ognuno di questi passaggi è chiamato tecnicamente un hop.

Tor funziona esattamente come questo sistema di router, però poi c’è la cipolla. Beh, la cipolla è… una cipolla! 🙂
La ragione per cui gli sviluppatori di Tor hanno usato questa metafora è che quando si usa il sistema di routing di Tor, i dati vengono inviati all’interno di diversi livelli di cifratura, esattamente come passare tutti gli strati di una cipolla!

La pagina di Wikipedia di Tor ha un’eccellente immagine che spiega il funzionamento.

TOR The Onion Network

Electronic Frontier Foundation “How Tor Works” – licensed CC Attribution 3.0

Ma c’è un sacco di gente lì dentro! Non dovrebbe difendere la mia privacy?

Può sembrare strano ma così si difende la privacy.

Prima di tutto, quando si usa il tradizionale sistema di router, la richiesta passa lo stesso attraverso un numero di hop, ma in più può essere intercettata, letta e modificata. Questo perché chi controlla quell’hop può vedere la richiesta inviata, e sapere cosa stava cercando chi l’ha inviata.

All’interno del network tor questo non può succedere. Poiché il percorso è scelto in maniera casuale ogni hop può solamente decifrare il piccolo livello cipolla di cifratura che gli compete, e poi passare al seguente salto.

Come si può vedere dall’immagine sopra solo l’ultimo passaggio è in chiaro, dal cosiddetto nodo di uscita fino al web server di destinazione. Questo è necessario perché l’ultimo nodo deve necessariamente conoscere il destinatario della richiesta e cosa chiedere. Ma la privacy di chi ha fatto la richiesta è comunque protetta, visto che anche sniffando (cioè intercettando i dati inviati sulla rete), il nodo di uscita non può sapere chi ha fatto la richiesta, quindi nessuno può identificarvi. Il server di destinazione vedrà solo l’indirizzo IP, che identifica univocamente ogni dispositivo sulla rete, del nodo di uscita.
Il funzionamento è molto più semplice di quanto sembri, lo vedremo tra poco.

Poiché l’uso di Tor è assolutamente gratuito, ogni utente che si connette diventa un membro della rete e contribuisce a passare “cipolle” su e giù di continuo. Ma non c’è da preoccuparsi, nessuno è obbligato a funzionare da nodo di uscita, è possibile farlo ovviamente, ma questa opzione deve essere abilitata volontariamente.

Sembra molto complicato… non sono un hacker! Non posso usarlo!

In effetti sì, il progetto Tor è veramente molto complesso nel suo funzionamento. Gli sviluppatori hanno tuttavia fatto, e continuano a fare, un lavoro eccellente di semplificazione nell’utilizzo dello strumento, e lo hanno reso accessibile a chiunque, in modo estremamente semplice.

Tor ha infatti un sotto-progetto chiamato Tor Browser Bundle. Il software non richiede installazione e permette di navigare in sicurezza con un semplice clic. Non essendo necessario installarlo è semplice da trasportare su una chiavetta USB, in modo da averlo disponibile su ogni sistema che utilizzate, sia il proprio pc, un hotel, un internet cafè o il computer dell’ufficio.

L’unica cosa da fare è scaricarlo dalla pagina del progetto, è disponibile anche una versione italiana e c’è per Windows, Mac OS X o Linux.

Una volta scaricato e scompattato l’archivio .exe avrete questa serie di icone

Tor Browser Bundle

A questo punto manca solo un clic dal navigare sicuro. Basta far partire “Start Tor Browser.exe” e Tor inizierà a connettersi alla rete protetta.

Nel giro di pochi secondi vedrete questa finestra:

Vidalia Control Panel

Non dovete preoccuparvi di tutti i bottoni e le funzioni all’interno del pannello di controllo di Vidalia, l’unica cosa che conta è la cipolla verde e le parole “Connesso alla rete Tor!“. Questo significa che ora siete protetti.

Ma la magia di questo strumento non finisce qui. Non appena stabilita la connessione con la rete Tor una versione speciale di Firefox, inclusa nel pacchetto, si aprirà automaticamente con questa schermata:

Firefox Tor Portable

Questo vuol dire che è tutto finito! Usando questo Firefox navigherete automaticamente all’interno della rete Tor, in modo del tutto anonimo e sicuro. Volete provare? Andate su http://whatsmyip.net sia dal Firefox incluso nel Tor Bundle sia dal vostro brower classico, e vedrete che gli indirizzi IP sono diversi. Questo significa che state usando l’IP del nodo di uscita, come spiegato in precedenza. Quando non vorrete più usare Tor, basta chiudere la finestra di Firefox, si chiuderà anche il pannello di controllo di Vidalia e la connessione alla rete Tor terminerà.

In conclusione, avete visto che è molto semplice usare Tor. D’ora in poi, se volete proteggere la vostra privacy online, non dimenticatevi di usare Tor Browser, e portatelo sempre con voi, specialmente su postazioni che non conoscete.

Proteggersi non è così complicato come sembra, anzi non è complicato per nulla! Basta seguire dei semplici passaggi ed è fatta. Questo è solo l’inizio di molti altri servizi che sono disponibili all’interno del progetto Tor, ma questo passo è quello che vi serve per navigare protetti.

Buona privacy e navigazione tranquilla a tutti!

Federico Filacchione
pubblicato originariamente come “Protect your privacy online with ’TOR” su ClubHACK Magazine numero 26.