Intervista ai vincitori milanesi del Cyber Attack di Symantec

Cyber Attack con Symantec

Come abbiamo potuto preannunciarvi Symantec sta eseguendo in tre principali università Italiane un Cyber Readiness Challenge, un’occasione di approfondimento e formazione o una vera e propria competizione in modalità capture-the flag dove premiare i migliori performer.

La prima tappa si è svolta al Politecnico di Milano lo scorso 6 Marzo, il NECST Lab ha conquistato la vetta della classifica grazie al vincitore Eros Lever, a seguire Mario Polino,  Alessandro Sisto e Andrea Mambretti.

Con grande piacere Over Security ha potuto intervistare i ragazzi del NECST Lab e di seguito vi proporremo le loro risposte più due video interviste eseguite dirittamente da Symantec ai vincitori e agli organizzatori dell’evento.

Come si è svolta la gara e quante prove avete affrontato?

Alessandro: L’idea di fondo della gara è stata quella di ricreare uno scenario verosimile di un attacco informatico. Il contesto, in questo caso, è stato quello di un network aziendale.
Il gioco era composto da 40 flags, ovvero dei micro obiettivi di difficoltà crescente, come ad esempio scoprire l’ip o recuperare la password di un determinato servizio.
Essi servivano a guidare il partecipante attraverso le principali fasi di un attacco informatico.
All’inizio bisognava ovviamente esplorare la rete dell’azienda, nella sua parte più esterna, quella direttamente accessibile da internet, allo scopo di trovare dei punti deboli. In seguito, riuscendo a sfruttare queste debolezze si doveva accedere alla rete privata e sottrarre le informazioni importanti.
Il tempo a nostra disposizione è stato di 4 ore nel quale  io ed Andrea siamo riusciti a completare le prime 20 challenges. Mario ed Eros credo ne abbiam superata qualcuna in più. In pratica siamo ci siamo bloccati all’inizio della terza macro fase, ovvero una volta guadagnato l’accesso del network interno l’abbiamo studiato ed individuato una vulnerabilità nota in una delle macchine, ma non siamo riusciti a sfruttarla entro il tempo limite.

Eros: La gara si è svolta in un’aula attrezzata del Politecnico, fornita di cavi ethernet per collegare i partecipanti tramite VPN alla rete su cui si è svolta al competizione.
Seppur fosse possibile partecipare in gruppi, noi ragazzi del NECSTLab abbiamo partecipato singolarmente per il semplice fatto che ognuno si è registrato alla challenge autonomamente.
La durata della gara si è rivelata più lunga del previsto, ben 4 ore, non mi aspettavo una gara complessa e ben architettata come invece si è dimostrata essere quella organizzata da Symantec.
La prova era strutturata su tre livelli, composti da una serie di domande di difficoltà incrementale ognuna delle quali ammetteva una sola risposta, la cosiddetta “flag”, da cui il nome “capture the flag” che rappresenta il genere di competizione. Solo dopo aver completato tutte le domande di un livello era possibile passare al successivo.
Se non sbaglio il totale delle domande dovrebbe essere 40, di queste ammetto di non aver tenuto il conto di quante ne ho completate, ma so che una volta arrivato al terzo livello ho avuto tempo di individuare solo 4 flag.
Lo scenario proposto nella competizione era quello di un network aziendale strutturato su più livelli, partendo dai servizi esposti al pubblico bisognava individuare vulnerabilità o raccogliere informazioni che permettessero l’accesso al servizio stesso o ad altri ad esso collegati.

Mario: All’arrivo abbiamo confermato la registrazione, ci hanno fornito badge nominativo e istruzioni per instaurare la connessione VPN. Subito dopo ci siamo posizionati in aula dove ogniuno aveva un cavo ethernet per connettersi alla rete e naturalmente delle prese per la 220V. Abbiamo configurato la VPN nella attesa dell’inizio della gara e poi immersione totale nelle challenge da risolvere per 4 ore. Le prove erano divise per livello di difficolta crescente e supportate da degli hint opzionali. Le challenge da risolvere erano 40 circa ognuna aveva un certo punteggio basato sulla difficolta. Credo di aver risolto poco più di 20 (forse 23 o 24) ma onestamente non ricordo, mi sarebbe piaciuto stare li ancora qualche ora a completare le challenge rimanenti ma era tardi quando la gara è terminata.

Andrea: La competizione organizzata da Symantec si e’ svolta completamente all’interno delle mura del politecnico, in un’aula allestita con tutto l’occorrente per una gara di questo genere ( rete cablata, proiezione della classifica,  musica di sottofondo, prese etc. ). Nel pre-gara ci e’ stato chiesto di configurare la VPN e poi c’e’ stato chiaramente spiegato dagli operatori la struttura a livelli della competizione  con indicazioni e descrizioni di come noi avremmo dovuto procedere dall’esterno fino al nucleo dell’infrastruttura creata da Symantec. La challenge era strutturata su 3 livelli per un complessivo di 40 flags da recuperare. Per passare di livello andavano recuperate tutte le flags del livello precedente. Erano stati previsti anche degli 2 / 3 hint per flag in maniera tale da aiutare anche i non esperti nel settore a capire come potevano essere risolte (questo ad indicare lo scopo anche didattico della competizione). Ovviamente ogni aiuto comportava una perdita della meta’ dei punti riservati alla flag. Nelle 4 ore di gara, in collaborazione con Alessandro abbiamo risolto le prime 20 flag approdando al 3 livello  e classificandoci rispettivamente terzo (lui) e  quarto (io). Vorrei citare inoltre Fabio, un altro componente del NECSTLab, che alla sua prima competizione di questo tipo e’ arrivato 6 con un numero di flag risolte leggermente inferiore a quello mio e di Alessandro.

Quali strumenti (Software e Hardware) avete utilizzato durante la competizione?

Alessandro: La gara si è svolta utilizzando direttamente i nostri laptop connessi ad una VPN dove era simulatata la rete aziendale. La maggior parte dei problemi si potevano risolvere facendo uso dei tools offerti da un qualunque sistema Unix. Gli unici strumenti aggiuntivi che mi son trovato ad utilizzare sono stati NMap per scansionare le reti e Metasploit. In ogni caso non sapendo esattamente cosa mi sarebbe servito ho tenuta pronta sul mio Macbook una VM con l’ultima versione di Backtrack installata.

Eros: Gli strumenti usati sono i tipici strumenti disponibili su distribuzioni Linux come BackTrack rivolte a penetration tester. Una volta connesso tramite VPN alla rete di gara, la prima cosa che ho fatto è stata aprire Wireshark per registrare il traffico di rete, così da avere traccia di quanto fatto e poter rivedere ogni singola connessione effettuata. Le challenge erano mostrate su una pagina web, per cui era necessario un browser, utilizzato anche per accedere a svariati server HTTP presenti sulla rete. Per individuare i bersagli presenti nella rete ho utilizzato l’indispensabile nmap, una volta individuati i servizi disponibili di volta in volta era necessario optare per lo strumento più adeguato, purtroppo non posso dire di più perchè la challenge verrà riproposta da Symantec in altre occasioni. Oltre a questo, posso solo dire che come nella vita di ogni giorno è stato indispensabile l’aiuto di motori di ricerca, anche per ricerche meno convenzionali, e che l’exploit più complicato che ho potuto provare durante la competizione richiedeva l’utilizzo del framework Metasploit.

Mario: Ho usato il mio oramai vecchio laptop ed un mouse USB(Non sono un grande fan dei touchpad). Per quanto riguarda il software ho gareggiato su una macchina virtuale(VirtualBox) con installato su Backtrack 5 rc2. La connessione VPN è stata instaurata utilizzando il software e le credenziali fornite da symantec. Durante la gara per risolvere le challenge che ho affrontato mi sono bastati i classici tools che ogni sistema unix si porta dietro o comunque facilmente reperibili, in alcuni momenti mi sono trovato a giocare con Metasploit. E per finire naturalmente un browser, serve sempre un browser al giorno d’oggi.

Andrea: Per quanto riguarda gli strumenti utilizzati durante la competizione dal punto di vista hardware ho sfruttato il mio portatile personale e la LAN messaci a disposizione dalla Symantec nell’aula. Dal punto di vista software invece ho usato un’installazione in macchina virtuale di BackTrack per avere un pieno set di tool utili a competizioni di questo genere (sniffer di rete, metasploit, firefox per visuallizare le webapp vulnerabili e in generale tutti i tool che una command-line linux ben instrumentata quele quella di backtrack puo’ offrire).

Quali host e vulnerabilità avete fronteggiato?

Alessandro: Purtroppo symantec ci ha chiesto di non  parlare nel dettaglio dei singoli obiettivi della gara, perchè questo evento verrà riproposto sia in Italia (al politecnico di Torino, mi pare)  che in altre nazioni. Posso però dire che ci siam trovati di fronte ad alcuni scenari classici della sicurezza informatica, abbiamo dovuto sfruttare vulnerabilità web come SQL injection o sistemi di autenticazione e recupero password deboli. Per conquistare alcune flags invece abbiamo avuto a che fare con file da decifrare o con password hashate

Eros: Come ho già detto, purtroppo non possiamo rivelare troppi dettagli sulle singole challenge per non favorire troppo i futuri partecipanti.

Mario: Ci hanno chiesto di non rivelare informazioni sulle challenge per non togliere divertimento a chi le affronterà nelle prossime tappe.

Andrea: Come i miei compagni non posso raccontare in dettaglio. Posso solo dire che per partecipare ad una competizione del genere, dove si sono affrontate tematiche di molto ampio respiro, i concorrenti devono avere una preparazione vasta, multipiattaforma (da sistemi windows a sistemi unix like), multilivello (dalla  webapp alla sistemistica etc) e una mente spesso molto elastica nell’affrontare i singoli problemi.

Gli insegnamenti universitari sono stati fondamentali per salire sul podio?

Alessandro: Si ma da soli non sono sufficienti. È innegabile che i fondamenti teorici di sicurezza informatica e di networking sono stati necessari per capire quali problemi ci si trovava di fronte, ma solo in alcuni casi sono bastati per risolverli. In generale, per questo genere di attività è necessaria una profonda conoscenza dei sistemi operativi Unix e Windows, che difficilmente può essere frutto di un insegnamento di carattere universitario. Infatti devo ammettere che è stato proprio questa la difficoltà più grande per me in questa gara, sopratutto per l’amministrazione di sistemi Windows, ho pochissima esperienza pratica. Questo mi ha fatto perdere molto tempo in diverse situazioni cercando come si svolgevano alcune operazioni su Google o nelle man page degli strumenti.

Eros: Personalmente direi che hanno favorito, ma non li ritengo fondamentali. E’ sicuramente necessario avere delle solide basi nel campo della sicurezza informatica per partecipare a competizioni come questa, ma penso sia possibile ottenerle in maniera autonoma sia documentandosi attraverso siti web specifici o con i buon vecchi libri (o la loro versione digitale!), sia in maniera più pratica attraverso piattaforme volutamente vulnerabili come HackThisSite, o DamnVulnerableWebApplication.
Spesso le conoscenze richieste per un attacco vanno talmente nel dettaglio che non ha senso vengano presentate in campo universitario, al contrario è necessaria una vasta conoscenza personale che si viene a formare solo dopo numerose esperienze.
Penso piuttosto che ad averci facilitato l’accesso al podio sia lo scambio di conoscenze che quotidianamente abbiamo frequentando il NECSTLab.

Mario: Quello che la formazione unversitaria ti da è un ottimo aiuto nella comprensione di come le cose funzionano. Mettere in pratica le conoscenze teoriche non è banale. Ogni volta ti trovi ad dover attaccare una macchina con uno specifico sistema operativo su uno specifico servizio, non si possono conoscere tutti quindi ogni volta studi il caso specifico.
E’ sicuramente stata fondamentale l’esperienza fatta con la Tower of Hanoi (team del politecnico che partecipa alle competizioni internazionali di Capture the Flag)
Sicuramente saper usare tools come nmap,ncat e ssh senza dover ogni volta guardare il manuale è utile, di solito colgo occasioni come questa per imparare ad usarli meglio.

Andrea: Per quanto riguarda la preparazione indubbiamente lato accademico il corso di sicurezza informatica mi e’ venuto in aiuto sia per avermi dato un’ottima visione globale su quali sono i problemi delle infrastrutture e come possono essere sfruttate dagli attacker per accedere ai sistemi e sia per avermi iniziato al mondo dell’hacking praticamente con il suggerimento di siti quali hackthissite, try2hack  dove, per i piu’ appassionati come me, e’ stato possibile testare/applicare le conoscenze teoriche.
Come preparazione extra accademica devo moltissimo a tutti i componenti del team Tower of Hanoi di cui faccio parte da circa un anno e mezzo che mi hanno iniziato praticamente all’hacking, specialmente Eros che e’ stato mio primo vero contatto lato sicurezza al politecnico tramite il quale sono venuto a conoscenza, inoltre,  delle attivita’ del NECSTLab in questo campo.  NECSTLab di cui faccio fieramente parte e dove passo buona parte delle mie giornate universitarie discutendo e praticando con tutti i componenti del gruppo.

Concludendo, rifareste questa esperienza?

Alessandro: Si decisamente. Non avevo grande esperienza con questo genere di eventi e devo ammettere che mi sono divertito molto. È stata l’occasione per mettere in pratica diverse conoscenze teoriche acquisite durante questi anni d’università e anche per imparare, soprattutto gli aspetti pratici.

Eros: Senza dubbio, indipendentemente dalla vittoria è stata un’esperienza molto divertente che ha dato la possibilità a noi studenti di metterci alla prova in uno scenario che, seppur simulato, ricreasse quella che può essere l’infrastruttura di rete di una reale azienda medio-grossa.

Mario: Assolutamente si. E’ sempre un piacere confrontarsi con challenge del genere e risolverle è estremamente gratificante.

Andrea: Indubbiamente rifarei questa esperienza, spero di poter partecipare eventualmente a edizioni future della stessa competizione.

Video Interviste