Consulthink & HackInBo 2018: la nostra esperienza all’evento sulla sicurezza informatica
Sabato 26 maggio si è tenuto a Bologna, presso il meraviglioso FICO Eataly World, la Spring Edition dell’HackInBo, l’evento dedicato alla Cybersecurity. Consulthink, che da anni è presente attivamente in questo settore, è stata orgogliosa di poter esserne Gold Sponsor e di prendere parte all’evento.
Il programma dell’HackInBo 2018 è stato molto denso, una giornata senza mai annoiarsi. I temi trattati, infatti, sono stati vari: la sicurezza nei droni, nei videogame, il software vulnerability engineering e spazio è stato dedicato anche al GDPR, tema estremamente attuale in questo periodo.
Consulthink è ormai tornata alla sua base e ha deciso di raccontarvi questa giornata attraverso questo articolo e tante foto!
L’evento sulla sicurezza informatica, ormai prossimo a spegnere le cinque candeline, ha visto la partecipazione di quasi 1000 persone tra appassionati, professionisti e hacker di ogni età e sesso provenienti da tutta Italia, creando un luogo dove poter condividere idee, news e informazioni riguardo la cybersecurity.
Dopo una presentazione iniziale di Mario Anglani, fondatore e organizzatore del HackInBo, sei interessanti talk si sono susseguiti, componendo così il programma di HackInBo 2018.
I 3 principi per gli elementi di un security program su iperscala
Il primo talk, tenuto da Claudio Criscione, ha introdotto il concetto di sicurezza e le relative difficoltà in una realtà molto grande quale quella in cui lavora, Google.
Con “Security@HyperScale” ci ha descritto quelli che sono i principali elementi di un security program su iperscala, riassumibili in tre principi:
- Il primo: “Il personale di security è raro e costoso, e non è la chiave per scalare”: in un ambiente in cui le release giornaliere sono numericamente maggiori del personale di sicurezza, sembra evidente che quest’ultimo non possa essere la soluzione a tutti i bug. In un contesto di iper-scala come Google, che vanta un codebase di più di 2 miliardi di linee di codice, tutto il tooling prodotto dal team di ISE (Information Security Engineering) non è rivolto all’identificazione di bug, ma è volto a massimizzare l’impatto che gli esseri umani possono avere sulla sicurezza reale, ossia questionari e segnali che facciano capire più velocemente possibile dove andare ad intervenire;
- se il team di sicurezza non è la soluzione, purtroppo non può esserlo neanche il team di sviluppo. Quindi il secondo principio: “Training, testing, auditing, etc. sono fantastici ma eliminare i bug alla radice scala meglio”. La chiave risulterebbe in un approccio diverso alla security, rivolto ad introdurre o modificare framework, librerie, linguaggi e processi per rendere quasi impossibili l’introduzione di vulnerabilità all’interno del codice. Qualcuno potrebbe sintetizzare con “prevenire è meglio che curare”;
- l’ultimo principio enuncia che “se non potete prevenire i bug, né potete automatizzare il tutto, allora: delegare ma verificare”, fornendo però al team che se ne dovrà occupare degli strumenti semplici, veloci ed intuitivi ma soprattutto accurati.
A seguire, Andy Malyshev, direttore di Elcomsoft, ha confrontato i servizi Cloud offerti da Google e Apple, in ciò che lui ha definito “real time surveillance”. Inconsapevolmente o meno, nel fruire dei loro servizi queste grandi aziende si arricchiscono sempre di più di dati personali, in un mondo in cui, come disse Clive Humby: “i dati sono il nuovo oro nero”.
HackInBo e GDPR
Con l’entrata in vigore del GDPR, il regolamento europeo sulla protezione dei dati, non sono state risparmiate freddure riguardo lo stato di conformità delle aziende che offrono servizi ai cittadini europei, società che hanno contribuito alla campagna massiva di email di aggiornamento riguardo la “privacy” dei nostri dati che negli ultimi giorni hanno intasato le caselle di posta elettronica europee.
Gli attacchi Jackpotting: come funzionano
Avete mai fatto Jackpot? Antonio Parata, threat analyst per Fox-IT, ci è riuscito con l’ATM di una banca.
I bancomat sono fisicamente il luogo più accessibile in cui vengono conservati i soldi nelle banche e ovviamente risultano essere sempre di più nel mirino dei cybercriminali che, grazie all’aiuto di malware sofisticati, riescono a far letteralmente “espellere” fuori tutti soldi dai dispositivi.
Ploutus è il malware più utilizzato per questo tipo di attacchi, che prendono il nome di Jackpotting. Questo virus nasce in Sudamerica ma è stato ritrovato anche su bancomat statunitensi, su una marca usata anche in Italia, la Diebold Nixdorf. Completamente scritto in .NET, Ploutus interagisce con l’hardware dell’ATM sfruttando il framework CEN/XFS (Extensions for Financial Services), un set di librerie Windows che consente di gestire l’utilizzo di diversi servizi finanziari delle piattaforme Microsoft, sviluppatrice dello standard, divenuto poi internazionale.
Parata, durante il suo talk, ha spiegato che esistono tre modi distinti per installare questo malware:
- attraverso una compromissione della rete interna della banca, per esempio inviando una mail a un dipendente e procedendo infettando il network interno;
- con un’installazione fisica del software attraverso il bancomat, in questo caso i criminali si recano direttamente allo sportello, lo smontano e installano il malware da una porta Usb;
- sfruttando l’interfaccia dello stesso bancomat, grazie ad un errore di configurazione. Fortunatamente questo ultimo modo rimane teorico in quanto risulta essere davvero difficile attuarlo.
Una volta installato, l’attaccante deve contattare gli sviluppatori del malware per richiedere il codice di attivazione, in quanto il software è pensato per limitarne l’uso e far pagare gli attaccanti ogni qualvolta volessero usarlo. Ottenuta la licenza, che dura generalmente un giorno, l’attaccante può quindi far espellere tutti i soldi conservati nell’ATM.
Fare Reverse Engineering, ossia il processo di analisi dettagliata del software partendo dal suo codice sorgente, in generale non è un’attività facile, in quanto richiede molta competenza. Effettuare tale operazione su un malware risulta essere ancora più difficile per via delle varie tecniche di anti-riversaggio introdotte dagli hacker, quali l’offuscamento del codice. Tramite l’aiuto di un ricercatore argentino che si occupa di Forensic, Parata è riuscito a fare reverse engineering sulle librerie usate da Ploutus.D, riuscendo a tutti gli effetti a ricostruire il funzionamento del malware, presentando a HackInBo una demo su come sbancare effettivamente uno sportello.
La sicurezza dei droni
Paolo Stagno, aka VoidSec, ha descritto lo stato della sicurezza dei droni DJI, portando agli spettatori l’analisi condotta su uno dei modelli più venduti al mondo, il DJI Phantom 3.
Descrivendo alcune delle falle rilevate ha poi puntato il focus sulla falsificazione del segnale GPS usato dal drone per rilevare la propria posizione, con lo scopo di bypassare il blocco imposto dalla casa produttrice qualora si trovasse in una No Fly Zone.
Un drone in cui è possibile modificare o falsificare tale informazione consiste in uno strumento volante, per lo più dotato di videocamera, che non ha limiti o blocchi, capace di infiltrarsi in qualsiasi ambiente, mettendo a rischio la privacy e/o sicurezza pubblica.
L’uomo è l’anello debole della sicurezza informatica
Come riporta il Libro Bianco “Il Futuro della Cybersecurity in Italia”, rilasciato dal CINI, l’anello debole della sicurezza informatica è il fattore umano. Il phishing, ossia una truffa in cui l’aggressore cerca di ingannare la vittima inducendola a fornire informazioni personali via Internet, si è posizionato al sesto posto nei Top Cyber Threat del 2016.
Dove non è possibile arrivare con una campagna di sensibilizzazione ai rischi di Internet, l’analista di sicurezza deve riuscire ad anticipare tali attacchi introducendo una difesa proattiva.
Irena Damsky ne ha presentata una, descrivendoci il funzionamento del Passive DNS (pDNS). Questa tecnologia consiste nell intercettare e tenere traccia di tutte le richieste DNS provenienti dalla rete, ossia le richieste di informazioni scambiate dal computer nel momento in cui vuole stabilire una connessione con un server.
Avendo a disposizione questo strumento, il Security Operation Center (SOC) può intervenire attivamente rilevando e bloccando tentativi di connessione verso siti di phishing o indirizzi IP diversi da quelli registrati precedentemente, qualora ci fosse stata una compromissione dei server DNS.
Il reverse engineering e i videogame per mobile
A seguire, Giovanni Rocca e Vincenzo Greco, riportano l’attenzione della sala su un tema già introdotto dallo speech di Antonio Parata, ossia il reverse engineering, spostando il focus, però, dai malware ai videogame per mobile. La loro passione per il reversing li ha portati a collaborare con major quali Supercell, casa produttrice di Clash Royal e Clash of Clans, entrambi campioni di download sia sul Play Store di Android che sull’App Store di iOS.
Per via dei servizi offerti e delle funzionalità In-App, queste software-house investono capitali importanti nella protezione del codice dei loro giochi, arrivando ad introdurre protocolli di rete e protezioni custom, fatte su misura di app, con lo scopo di bloccare, o per lo meno mitigare, il rischio di essere attaccati.
Il compito di un Reverse Engineer è quello di analizzare e bypassare tali protezioni fino ad arrivare a capire la logica applicativa.
Durante il talk, Giovanni e Vincenzo hanno raccontato al pubblico di Bologna il loro approccio logico all’analisi di un’applicazione mobile, che sia Android o iPhone. Si parte dall’intercettazione delle richieste di rete, ossia quali informazioni vengono scambiate dal device al server e viceversa e poi si aggirano le protezioni innalzate dagli sviluppatori, dal pinning del certificato SSL alla detection di un device rooted o all’esecuzione di software di analisi quali Frida. Una volta eseguito il bypass di queste protezioni di sicurezza, il prossimo passo consiste nell’analizzare e capire le logiche applicative e di encryption dei dati, fino ad arrivare all’indagine dei protocolli custom.
Tra i numerosi strumenti di analisi disponibili online, la coppia di hacker ha illustrato il funzionamento di Frida, un tool che permette all’analista di fare Instrumentation, ossia la possibilità di iniettare del proprio codice JavaScript all’interno del processo, permettendo di chiamare funzioni native e ottenere accesso completo alla memoria.
Nella demo portata a HackInBo 2018, Frida veniva usato in diversi scenari:
- per intercettare le richieste di rete a basso livello, andando a fare Hooking, ossia alterare l’esecuzione di una funzione, delle funzioni native C “send” e “recv”.
- per bypassare controlli e anti-debugging dell’applicazione, arrivando ad eludere un controllo sulla stessa presenza di Frida.
L’utilizzo maturo di tale strumento e la bravura della coppia di ragazzi li ha portati alla creazione di un tool molto utile a chi si occupa di reversing chiamato uDdbg, disponibile su GitHub, ossia un debugger che emula l’applicazione in un environment virtuale.
Software Vulnerability Disclosure (SVD)
Nell’ultimo talk, Gianluca Varisco, membro del Team per la Trasformazione Digitale della Presidenza del Consiglio dei Ministri, ha sollevato la questione della Software Vulnerability Disclosure (SVD), ossia il processo di identificazione e divulgazione di una vulnerabilità software o hardware da parte di un ricercatore.
Alcuni mesi fa il CEPS (Centre for European Policy Studies) ha avviato una Task Force europea sul tema SVD a cui hanno preso parte aziende del settore privato, le istituzioni europee e la società civile con l’obiettivo di definire una serie di policy per rendere operativo un processo di Coordinated Vulnerability Disclosure (CVD). Il CVD risulterebbe in uno strumento utile alla coordinazione delle fortissime conoscenze possedute dalla comunità di Ethical Hacker italiani e internazionali nella ricerca di vulnerabilità, salvaguardando al tempo stesso ricercatori e aziende. Minore è la tempistica nel risolvere falle, minore è la finestra temporale in cui esse sono esposte a soggetti malevoli.
Molte aziende si sono avvicinate a questo tema introducendo campagne di Bug Bounty, programmi in cui vengono messi in palio riconoscimenti e ricompense in denaro per la segnalazione di bug. Queste campagne possono essere interne alla software-house oppure demandate a piattaforme esterne, quali ad esempio Bugcrowd.
HackInBo & il CTF
Durante il convegno è stato facile incontrare numerosi gruppi di hacker che indossavano le magliette raffiguranti il logo dei rispettivi team con cui si riuniscono nel gioco delle CTF, in inglese “Capture The Flag”, ossia delle sfide di hacking dove questi team si sfidano nella collezione di quante più Flag (bandierine) possibili, nascoste nel sistema bersaglio e raggiungibili solamente tramite la ricerca e l’exploit di vulnerabilità nei sistemi e software messi a disposizione dagli organizzatori della competizione.
Nel tornare alla base è stato interessante notare che sul nostro mezzo di trasporto qualche sistema a bordo non funzionava correttamente. Effetto HackInBo?
Come ogni anno, l’HackInBo è stata una giornata interessantissima per tutti gli appassionati e gli addetti al lavoro nell’ambito della sicurezza informatica. Consulthink è stata entusiasta di essere sponsor di un evento di questo calibro e sia lei che HackInBo vi danno appuntamento alla prossima edizione dell’evento gratuito sulla sicurezza informatica!
Redatto da Lucia D’Adamo, in collaborazione con Lorenzo Di Fuccia e Andrea Petriglia, supervisionato da Marco Pirrone