In occasione dell’Antimalware Day, giorno in cui si celebra il lavoro dei professionisti della sicurezza abbiamo pensato fosse giusto chiedere ad alcuni dei malware researcher di ESET di condividere pensieri ed esperienze sul loro lavoro quotidiano. Abbiamo intervistato Fernando Tavella, Lukas Stefanko e Matías Porolli, ESET Malware Researcher: vediamo qual è il loro punto di vista sul tema.
Prima di tutto, come sei arrivato ad analizzare e ricercare malware?
Lukas: Tutto è iniziato quando ho preso confidenza con il reverse engineering del software e ho cercato di capire come funziona e come si comporta una porzione di software senza avere accesso al suo codice sorgente. Da lì, la curiosità mi ha portato a capire come funziona il malware, qual è il suo scopo e come comunica. È stata un’esperienza che mi è piaciuta moltissimo – e mi piace ancora!
Fernando: Mi è sempre piaciuta di più la parte di ricerca, ma dopo aver iniziato a lavorare nel settore della sicurezza, sono rimasto affascinato dal reverse engineering per la sua complessità, e così ho iniziato a partecipare a gare di capture-the-flag (CTF) e mi sono immerso in vari argomenti correlati. Ad un certo punto, mi sono imbattuto in un malware e ho capito quanto sia interessante capire come funziona usando un linguaggio low-level, quali tipi di offuscamento e tecniche di evasione utilizzi, e come ci si può difendere da certe minacce.
Matías: Nel 2011, ho vinto l’ESET University Award organizzato da ESET in America Latina che consisteva nello scrivere un articolo di ricerca su argomenti legati alla cybersecurity. All’epoca non avevo esperienza nell’analisi del malware, ma ho approfondito le mie conoscenze con l’autoapprendimento. Nel 2013, ho iniziato a lavorare per ESET e mi sono sporcato le mani con l’analisi dei malware.
Esiste “una tipica giornata di lavoro” per te?
Lukas: La maggior parte dei giorni inizia allo stesso modo – controllo le news sulla cybersecurity, le e-mail e Twitter. Ma alcuni giorni prendono una svolta drammatica, per esempio quando scopriamo nuovi malware o tracce che pensiamo possano metterci sulla buona strada per identificare crimini informatici o campagne APT (Advanced Persistent Threat). Avere buone fonti di informazione aiuta a risparmiare tempo nell’analisi del malware.
Fernando: Non credo che ci sia una giornata tipo. Ogni giorno c’è qualcosa di nuovo. Non tutto può essere pianificato. Quando faccio qualche ricerca, ad esempio, su una campagna di malware in America Latina, spesso richiede molto in termini di tempo e questo mi porta a trascorrere la giornata ad analizzare quella particolare minaccia. Dedico comunque sempre 30 minuti al mattino per aggiornarmi sulle nuove notizie sulla sicurezza.
Matías: Anche se ci sono giornate in cui mi dedico solamente alla ricerca di malware durante un attacco in corso, seguo una sorta di routine che consiste in due attività principali. Cerco nuove minacce nei miei feed di informazioni, tenendo traccia dei gruppi di attaccanti. Poi analizzo i file dannosi che emergono da questa attività o da quelle segnalate dai miei colleghi, e mi dedico in particolare al reverse engineering e al tracciamento di queste minacce.
Qual è la parte più eccitante del tuo lavoro?
Lukas: Sono tutte quelle piccole cose che insieme compongono il processo di analisi del malware, che di solito inizia con me che mi pongo un quesito. Ogni passo lungo il percorso aiuta a decifrare il problema e a crearne un’immagine più chiara. Questo significa, ad esempio, effettuare un’analisi statica e dinamica del malware Android che determina la sua esecuzione su un dispositivo e l’osservazione del suo comportamento dal punto di vista della vittima, al fine di capire il suo scopo. Questa analisi rivela, per esempio, con chi il malware comunica e quali tipi di dati estrae dal dispositivo. Guardando le sue richieste di autorizzazione, è possibile fare un’ipotesi plausibile sulle capacità del malware. Tuttavia, l’analisi dinamica spesso non è sufficiente. Per avere un quadro migliore di come funziona una porzione di malware e quali sono le sue funzionalità, è importante lanciare un decompilatore Android ed effettuare l’analisi manuale del codice.
Da lì, inizio a ricercare ed eventualmente rivelare campagne di malware attive, cosa che agli hacker non piace molto. Alcuni stanno seguendo il mio lavoro da molto vicino. In diverse occasioni, il loro codice conteneva brevi note destinate a me. A volte firmano il malware “per mio conto” o addirittura registrano domini maligni a mio nome che poi comunicano con il malware. Tuttavia, non la prendo sul personale, ognuno gioca il suo ruolo.
Fernando: Sicuramente l’analisi statica di una minaccia, il reverse engineering, la capacità di vedere tutto il codice a basso livello e da lì ottenere una comprensione del comportamento della minaccia e delle sue funzionalità più interessanti in modo che io possa poi documentarle.
Matías: Mi piace la varietà, non applico gli stessi metodi a vari progetti di ricerca. Gli aggressori usano varie piattaforme e tecnologie, e spesso si incontrano problemi specifici che richiedono soluzioni creative. Per esempio, come si automatizza l’estrazione delle impostazioni del malware per migliaia di file dannosi o come si implementa la deobfuscazione dei file che sono stati modificati per ostacolare l’analisi.
Di quale ricerca o progetto sei più orgoglioso?
Lukas: Uno dei miei ultimi progetti di ricerca: l’analisi delle vulnerabilità nello stalkerware Android. Ho passato mesi a lavorarci, esaminando 80 app stalkerware e scoprendo alla fine un totale di oltre 150 gravi problemi di sicurezza e privacy.
Fernando: La ricerca che ho fatto insieme a Matías sulla campagna di spionaggio in Venezuela che sfruttava il malware Bandook. È stato uno dei miei primi progetti di ricerca, ma sono stato in grado di effettuare un’analisi tecnica completa della minaccia che colpisce il Paese.
Matías: Qualsiasi ricerca comporta molto lavoro dietro le quinte che non viene mai pubblicato. Ne sono comunque orgoglioso, soprattutto per la necessità di essere creativi quando si affrontano alcuni problemi cui accennavo prima. Ma se dovessi evidenziare un progetto di ricerca specifico, direi Evilnum. Poco si sapeva del malware all’epoca, e praticamente nulla si sapeva del gruppo dietro di esso. ESET è riuscita a contestualizzare l’arsenale maligno del gruppo, scoprire il suo scopo e vedere “il quadro generale”.
Lavorate a stretto contatto con altri team nel campo della sicurezza?
Lukas: Sì. Oltre alla ricerca, il nostro obiettivo principale è quello di proteggere gli utenti che utilizzano i nostri prodotti e rilevare le minacce in circolazione. Questo significa non solo condividerle internamente, ma anche con altre aziende di cybersecurity e quindi aiutare a migliorare la consapevolezza generale delle minacce recenti.
Fernando: Ho lavorato con altre persone che operano nel team dell’Incident response, principalmente per aiutarle a capire il comportamento delle minacce che si sono presentate nelle varie occasioni.
Matías: Lavoriamo costantemente insieme ad altri professionisti. Un caso che vale la pena menzionare è quando ho lavorato con la Computer Crime Unit olandese per smantellare i server usati da Evilnum ed eseguire analisi forensi su di essi.
Quali sono le competenze essenziali per svolgere al meglio il tuo lavoro?
Lukas: Per quanto riguarda l’analisi del malware Android, direi che è necessario comprendere le basi del sistema operativo, compreso il ciclo di vita delle applicazioni, e avere la capacità di leggere il codice sorgente Java e Kotlin decodificato. Vale anche la pena tenersi aggiornati sulle ultime scoperte, sugli strumenti che vengono rilasciati di recente e anche sugli aggiornamenti del sistema operativo e delle applicazioni. Questi aggiornamenti possono contenere nuove caratteristiche utili per gli utenti, ma possono contribuire anche a creare opportunità che gli hacker potrebbero sfruttare. Fortunatamente, la maggior parte degli aggiornamenti ostacola gli autori di malware nel loro lavoro, piuttosto che aiutarli.
Fernando: Penso che avere conoscenze di programmazione sia molto importante. È necessario essere in grado di leggere e capire il codice. Inoltre, la conoscenza dei sistemi operativi, dei sistemi di crittografia, dell’architettura del computer e della rete (che si tratti di protocolli di rete o analisi del traffico) sono i tipi di competenze che più la persona conosce più è preparata a svolgere un’attività di malware researcher.
Matías: In termini di competenze tecniche, è necessario essere ben preparati in molti campi dell’informatica, tra cui il networking, i sistemi operativi e la programmazione. Il mio lavoro richiede una conoscenza dettagliata del reverse engineering, specialmente per le piattaforme Windows.
C’è qualche aspetto non tecnico del tuo lavoro con cui hai difficoltà e nel quale ti sei dovuto migliorare?
Lukas: Sì, c’è. Ogni anno, cerco di migliorare una delle mie abilità non tecniche, come scrivere post sul blog, parlare in pubblico, migliorare le mie capacità di presentazione, rilasciare interviste e simili. La maggior parte di esse non sono facili da acquisire per una persona tecnica e introversa come me e mi portano ad uscire dalla mia zona di comfort, il che è più facile a dirsi che a farsi.
Fernando: Ho dovuto migliorare le mie capacità di scrittura. Anche se c’è un team che rivede i nostri testi, è importante per ogni ricercatore usare le parole giuste ed essere in grado di esprimersi bene, per riuscire a trasmettere correttamente i risultati di una ricerca.
Matías: È importante sapere come comunicare i risultati delle nostre analisi, essere consapevoli di chi sono i destinatari dei nostri report e adattare il contenuto di conseguenza. È anche fondamentale saper raccontare una storia, piuttosto che riempire un contenuto di descrizioni tecniche.
Quali soft skills dovrebbe avere un ricercatore di malware?
Lukas: Credo che l’entusiasmo nella risoluzione dei problemi e la volontà di imparare cose nuove siano le forze trainanti. Tutto il resto può essere imparato lungo la strada.
Fernando: Penso che siano due le caratteristiche da avere: la capacità di imparare da solo e la curiosità.
Matías: Curiosità, capacità di concentrarsi su un compito, il desiderio di risolvere i problemi, la pazienza e un occhio attento ai dettagli.
Come riuscite ad ampliare le vostre conoscenze e a tenervi aggiornati?
Lukas: Tenersi aggiornati richiede molto tempo ogni giorno. Ho imparato a fare uso dei feed RSS dedicati e attendibili e dei canali dei social media, leggendo i post dei blog e i tweet dei ricercatori di pari livello e di altre aziende di cybersecurity, così come la ricerca accademica e quella effettuata tramite Google Alerts. Una volta che ho ristretto il campo e letto le notizie più importanti, cerco di condividerle con altri appassionati di sicurezza mobile attraverso il mio canale Telegram e così forse risparmio loro un po’ di tempo mentre cercano anche loro notizie sulla sicurezza mobile.
Fernando: Utilizzo Twitter per trovare informazioni condivise da colleghi ricercatori e per leggere le loro pubblicazioni. In questo modo, vengo a conoscenza di nuove campagne e nuove tecniche che possono essere impiegate dai criminali informatici. Inoltre, se c’è qualcosa che ha attirato la mia attenzione in una ricerca, ne prendo nota e poi mi ci immergo nel tempo libero.
Matías: Bisogna leggere le notizie e tenersi aggiornati su quello che succede. Suggerisco di usare i social network per seguire le aziende di sicurezza e scoprire nuove ricerche, o anche seguire altri ricercatori. Leggere anche i blog di sicurezza informatica: WeLiveSecurity, per esempio!
Il tuo messaggio per le persone che vogliono intraprendere una carriera nella ricerca sul malware?
Lukas: Datevi da fare. La passione e l’entusiasmo sono cruciali e rendono più facile per qualsiasi ricercatore di malware alle prime armi “assorbire” informazioni e conoscenze.
Fernando: Fate un passo alla volta. Partecipate alle gare CTF che coinvolgono vari argomenti legati all’analisi del malware, come il reverse engineering, la crittografia e l’analisi del traffico di rete. Non è necessario iniziare sezionando il malware, semplicemente perché questo può essere troppo complesso. Inoltre, leggete ciò che altri hanno già fatto, in modo da imparare dalle analisi delle minacce rilevate in precedenza e vedere come funzionavano i campioni di malware. Noterete che alcune varianti di malware hanno caratteristiche in comune – per esempio, manomettono le voci di registro per ottenere la persistenza sulla macchina della vittima. Inoltre, quando si legge un articolo di un altro ricercatore, si può vedere ciò che hanno considerato importante su questa specifica minaccia, che è un’intuizione che si dovrebbe sfruttare quando ci si accinge ad analizzare un pezzo di malware per la prima volta.
Matías: Mantenere la calma e identificare le costanti crittografiche.
Speriamo che questa intervista a tre abbia dato abbastanza spunti di riflessione. Ora perché non scegliere una carriera dove poter contribuire a rendere la tecnologia più sicura per tutti?