Programmazione

Gli sviluppatori di malware amano Rust. E saperlo ci aiuterà a difenderci

La tendenza del settore cybercrime è ormai chiara: si predilige questo linguaggio che coniuga molto bene semplicità e prestazioni. Capire i motivi della scelta ci permette di affrontare le sfide del futuro prossimo

21 Set 2022
M
Riccardo Meggiato

Consulente in cyber security e informatica forense

Comprendere i malware, a basso livello, passa sempre per l’analisi del loro codice. E sebbene occorra effettuare del reverse engineering per venire a capo del loro funzionamento, in molti casi è utile conoscere il linguaggio di programmazione coi quali sono stati realizzati. Per svariati motivi: uno dei principali è che il linguaggio, spesso, definisce il modo in cui un software gestisce la memoria, sfrutta o meno delle librerie e, in genere, come si comporta e come potrà essere aggiornato e potenziato.

La sicurezza passa dal linguaggio di programmazione: regole per un coding a prova di attacco

I malware come videogame

Il linguaggio di programmazione, proprio come avviene con qualsiasi altro software, ci può raccontare passato, presente e futuro di un malware. E ci offre anche una panoramica sulle tendenze nel mondo dello sviluppo dei software malevoli, quanto mai utile per definire le strategie di difesa e prevenzione. È per questa ragione che, nel settore della malware analysis, e giocoforza di tutta la cyber security, si tiene d’occhio da un po’ di tempo il linguaggio Rust.

WHITEPAPER
GUIDA PRATICA contro il Phishing: scopri come tutelare la tua azienda!
CIO
Sicurezza

Si parta dal presupposto che non esiste un linguaggio d’elezione, per sviluppare malware. Un tempo venivano scritti in assembly, che poi è stato mano a mano ridotto e utilizzato come chiamata esterna da codice C. Poi, il C++ e via via linguaggi sempre più astratti che consentissero di realizzare software malevoli molto più complessi e in meno tempo. Quando si parla di sviluppo di malware, non è raro trovare similitudini con quello dei videogame. Passando dal prodotto di nicchia a produzione industriale, è chiaro che si è cambiato anche l’approccio alla programmazione.

La scelta di un linguaggio di programmazione moderno

E così come oggi, nei videogame, studi da centinaia di professionisti sfruttano librerie e motori prefatti perché un titolo è un’opera mastodontica da realizzare comunque in un arco temporale ristretto, così i malware sono diventati software realizzati da team strutturati e nei quali serve condivisione e organizzazione professionale del codice. Motivo per il quale si tende sempre più a sfruttare linguaggi di programmazione meno “istintivi”, come appunto assembly e C, e puntare su quelli che consentono di concentrarsi su funzioni di alto livello senza doversi sobbarcare questioni più tecnologiche.

Non stupisce, per questo, vedere ransomware realizzati anche in Python, a volte semplici e sviluppati per fini educativi, in altri casi di stampo professionale: nel marzo 2022, per esempio, Team Nautilus ha rilevato e descritto un attacco basato su un ransomware scritto in Python. L’obiettivo, in questo caso, era la piattaforma open source Jupyter Notebook. I criminali informatici hanno avuto accesso al server di una honeypot sfruttando una vulnerabilità da misconfiguration, per poi scaricarvi le librerie e, infine, creare del semplice codice Python che in poche decine di righe si è occupato di avviare tutta la ben nota filiera di questa tipologia di malware.

Hacker: chi sono, come funzionano le organizzazioni di criminal hacking, gli attacchi più comuni

Rust: il compromesso ideale tra semplicità e prestazioni

Python, tuttavia, ha dei limiti evidenti, tra i quali il fatto di essere un linguaggio interpretato e di livello un po’ troppo elevato, che porta a problemi di prestazioni e di tracciabilità degli sviluppatori, oltre ad avere la necessità di soddisfare requisiti che mal si sposano con l’azione di un malware. È per questa ragione che gli sviluppatori di software malevoli puntano, ormai da qualche tempo, su linguaggi che garantiscano il giusto compromesso tra semplicità e potenza, specie a basso livello.

E così ecco l’utilizzo di Go e, soprattutto, di Rust. Quest’ultimo, in particolare, vista la vocazione a prestazioni, “system programming” e realizzazione di codice sicuro (che può essere ironico ma, in questo caso, consente di gestire la memoria senza incorrere in alcune tipologie di bug), è visto come linguaggio di programmazione prediletto anche dagli sviluppatori di malware.

Perché Hive è stato riscritto in Rust

Quanto scoperto di recente dai ricercatori Microsoft, del resto, mostra una chiara tendenza nel settore della cyber-criminalità. Nel giugno del 2021 viene scoperto il ransomware Hive, una tipologia di malware piuttosto aggressiva, veloce e molto espandibile. Hive, infatti, è una piattaforma RaaS (Ransomware as a Service), il cui payload predefinito è scritto in Golang e si occupa di effettuare buona parte delle attività malevole: disattivare i prodotti di sicurezza, cancellare i log di Windows che lasciano tracce, agevolare il processo di crittografia.

Nel luglio del 2022, Microsoft scopre che si è diffusa una variante di Hive scritta in Rust. I ricercatori si sono spesi molto per comprendere il perché di questa totale riscrittura, visto che non è così comune migrare, nell’arco di appena un anno, verso un nuovo linguaggio.

E le conclusioni evidenziano quanto i cybercriminali siano alla continua ricerca della perfezione nello sviluppo dei loro software.

Rust: una questione di prestazioni e semplicità

In sintesi, la nuova versione di Hive, scritta in Rust, mostra un codice molto più stabile e sicuro nella gestione di memoria e variabili, e questo significa che diventa più complesso trovare punti deboli per disattivarlo o mitigarlo. Inoltre, le prestazioni sono molto più elevate, la sintassi di Rust è più funzionale a uno sviluppo di questo tipo e, quindi, di più veloce implementazione.

La differenza più evidente, tra la versione Golang e quella Rust di Hive, sempre secondo i ricercatori Microsoft, è una migliore gestione del multi-threading, che si riflette in un netto aumento della velocità delle funzioni crittografiche.

Più velocità, più stabilità, più semplicità di programmazione: questi, in sintesi, i motivi che hanno portato alla conversione di Hive a codice Rust.

Quello spunto preso da BlackCat

Del resto, Hive non è stato il primo e non sarà l’ultimo malware, ad abbracciare il linguaggio creato in origine dalla Mozilla Foundation. C’è il sospetto, per esempio, che proprio gli autori di Hive abbiano preso spunto da BlackCat, di fatto il primo ransomware censito a utilizzare Rust. Un software così micidiale da costringere la FBI a emanare un’allerta sulla sua pericolosità, visto che in pochi mesi ha colpito, e affondato, più di 60 multinazionali. Anche allora, si sottolineava l’estrema velocità delle attività di diffusione e crittografiche, unita alla difficoltà di effettuare un reverse engineering efficace per analizzare e combattere il codice malevolo.

L’utilizzo di Rust nel settore dei malware ha dunque delle profonde ragioni tecnologiche, ma non bisogna dimenticare anche quelle di opportunità. Rust, non a caso, è stato eletto dalla popolosa comunità di Stack Overflow, come il linguaggio più amato a partire dal 2016, ogni anno, aggiudicandosi il primato anche nel 2022 e aumentando il distacco dai concorrenti. Più successo, più diffusione, più disponibilità di programmatori da ingaggiare anche nel settore della cybercriminalità. Il tutto condito da caratteristiche tecnologiche all’avanguardia.

Impariamo una lezione, e una bonus

Cosa ha da imparare il mondo della cybersecurity da queste considerazioni? La banalità del male, ma fin troppo ignorata: che si approcci alla sicurezza nelle prime fasi di un percorso educativo, o che si vogliano ampliare le proprie conoscenze, consiglio sempre di imparare a programmare, bene, in almeno un paio di linguaggi di programmazione.

Se poi si prende la strada, complessa ma fascinosa, della malware analysis, da oggi sappiamo che Rust diventa un ingrediente quasi imprescindibile. Oltretutto, è un linguaggio in grado di fare davvero di tutto e col quale si stanno sviluppando sempre più progetti open source dedicati a software di sicurezza.

Lezione bonus: la criminalità informatica ragione sempre più come qualsiasi altra industria, e quindi segue mode e tendenze, spesso anticipandole. La cybercriminalità, per prima, ci insegna che arroccarsi su poche e vecchie posizioni non è mai una buona idea.

Ai dinosauri, del resto, non è andata benissimo.

WHITEPAPER
Perché impostare una strategia di manutenzione dei server?
Datacenter
Sicurezza
@RIPRODUZIONE RISERVATA

Speciale PNRR

Tutti
Incentivi
PA
Sostemibilità
Analisi
Formazione
Salute digitale
Sicurezza
Sostenibilità
Digital Economy
Formazione
Trasferimento tecnologico, il Mise mette sul piatto 7,5 milioni
Strategie
PSN e Strategia Cloud Italia: a che punto siamo e come supportare la PA in questo percorso
Dispersione idrica
Siccità: AI e analisi dei dati possono ridurre gli sprechi d’acqua. Ecco gli interventi necessari
PNRR
Cloud, firmato il contratto per l’avvio di lavori del Polo strategico
Formazione
Competenze digitali, stanziati 48 milioni per gli Istituti tecnologici superiori
Iniziative
Digitalizzazione delle reti idriche: oltre 600 milioni per 21 progetti
Competenze e competitività
PNRR, così i fondi UE possono rilanciare la ricerca e l’Università
Finanziamenti
PNRR, si sbloccano i fondi per l’agrisolare
Sanità post-pandemica
PNRR, Missione Salute: a che punto siamo e cosa resta da fare
Strategie
Sovranità e autonomia tecnologica nazionale: come avviare un processo virtuoso e sostenibile
La relazione
Pnrr e PA digitale, l’alert della Corte dei conti su execution e capacità di spesa
L'editoriale
Elezioni 2022, la sfida digitale ai margini del dibattito politico
Strategie
Digitale, il monito di I-Com: “Senza riforme Pnrr inefficace”
Transizione digitale
Pnrr: arrivano 321 milioni per cloud dei Comuni, spazio e mobilità innovativa
L'analisi I-COM
Il PNRR alla prova delle elezioni: come usare bene le risorse e centrare gli obiettivi digitali
Cineca
Quantum computing, una svolta per la ricerca: lo scenario europeo e i progetti in corso
L'indice europeo
Desi, l’Italia scala due posizioni grazie a fibra e 5G. Ma è (ancora) allarme competenze
L'approfondimento
PNRR 2, ecco tutte le misure per cittadini e imprese: portale sommerso, codice crisi d’impresa e sismabonus, cosa cambia
Servizi digitali
PNRR e trasformazione digitale: ecco gli investimenti e le riforme previste per la digitalizzazione della PA
Legal health
Lo spazio europeo dei dati sanitari: come circoleranno le informazioni sulla salute nell’Unione Europea
Servizi digitali
PNRR e PA digitale: non dimentichiamo la dematerializzazione
Digital Healthcare transformation
La trasformazione digitale degli ospedali
Governance digitale
PA digitale, è la volta buona? Così misure e risorse del PNRR possono fare la differenza
Servizi digitali
Comuni e digitale, come usare il PNRR senza sbagliare
La survey
Pnrr e digitale accoppiata vincente per il 70% delle pmi italiane
Missione salute
Fascicolo Sanitario Elettronico alla prova del PNRR: limiti, rischi e opportunità
Servizi pubblici
PNRR: come diventeranno i siti dei comuni italiani grazie alle nuove risorse
Skill gap
PNRR, la banda ultra larga crea 20.000 nuovi posti di lavoro
Il Piano
Spazio, Colao fa il punto sul Pnrr: i progetti verso la milestone 2023
FORUMPA2022
PNRR e trasformazione digitale: rivedi i Talk di FORUM PA 2022 in collaborazione con le aziende partner
I contratti
Avio, 340 milioni dal Pnrr per i nuovi propulsori a metano
Next Generation EU
PNRR, a che punto siamo e cosa possono aspettarsi le aziende private
Fondi
Operativo il nuovo portale del MISE con tutti i finanziamenti per le imprese
Servizi comunali
Il PNRR occasione unica per i Comuni digitali: strumenti e risorse per enti e cittadini
Healthcare data platform
PNRR dalla teoria alla pratica: tecnologie e soluzioni per l’innovazione in Sanità
Skill
Competenze digitali, partono le Reti di facilitazione
Gli obiettivi
Scuola 4.0, PNRR ultima chance: ecco come cambierà il sistema formativo
Sistema Paese
PNRR 2, è il turno della space economy
FORUM PA 2022
FORUM PA 2022: la maturità digitale dei comuni italiani rispetto al PNRR
Analisi
PNRR: dalla Ricerca all’impresa, una sfida da cogliere insieme
Innovazione
Pnrr, il Dipartimento per la Trasformazione digitale si riorganizza
FORUM PA 2022
PA verde e sostenibile: il ruolo di PNRR, PNIEC, energy management e green public procurement
Analisi
PNRR, Comuni e digitalizzazione: tutto su fondi e opportunità, in meno di 3 minuti. Guarda il video!
Rapporti
Competenze digitali e servizi automatizzati pilastri del piano Inps
Analisi
Attuazione del PNRR: il dialogo necessario tra istituzioni e società civile. Rivedi lo Scenario di FORUM PA 2022
Progetti
Pnrr, fondi per il Politecnico di Torino. Fra i progetti anche IS4Aerospace
Analisi
PNRR, Colao fa il punto sulla transizione digitale dell’Italia: «In linea con tutte le scadenze»
La Svolta
Ict, Istat “riclassifica” i professionisti. Via anche al catalogo dati sul Pnrr
Analisi
Spazio, Colao fa il punto sul Pnrr: i progetti verso la milestone 2023
FORUM PA 2022
Ecosistema territoriale sostenibile: l’Emilia Romagna tra FESR e PNRR
Il Piano
Innovazione, il Mise “centra” gli obiettivi Pnrr: attivati 17,5 miliardi
Analisi
PNRR: raggiunti gli obiettivi per il primo semestre 2022. Il punto e qualche riflessione
Analisi
PNRR: dal dialogo tra PA e società civile passa il corretto monitoraggio dei risultati, tra collaborazione e identità dei luoghi
Webinar
Comuni e PNRR: un focus sui bandi attivi o in pubblicazione
Analisi
Formazione 4.0: cos’è e come funziona il credito d’imposta
PA e Sicurezza
PA e sicurezza informatica: il ruolo dei territori di fronte alle sfide della digitalizzazione
PA e sicurezza
PNRR e servizi pubblici digitali: sfide e opportunità per Comuni e Città metropolitane
Water management
Water management in Italia: verso una transizione “smart” e “circular” 
LE RISORSE
Transizione digitale, Simest apre i fondi Pnrr alle medie imprese
Prospettive
Turismo, cultura e digital: come spendere bene le risorse del PNRR
Analisi
Smart City: quale contributo alla transizione ecologica
Decarbonizzazione
Idrogeno verde, 450 milioni € di investimenti PNRR, Cingolani firma
Unioncamere
PNRR, imprese in ritardo: ecco come le Camere di commercio possono aiutare
I fondi
Industria 4.0: solo un’impresa su tre pronta a salire sul treno Pnrr
Formazione
Trasferimento tecnologico, il Mise mette sul piatto 7,5 milioni
Strategie
PSN e Strategia Cloud Italia: a che punto siamo e come supportare la PA in questo percorso
Dispersione idrica
Siccità: AI e analisi dei dati possono ridurre gli sprechi d’acqua. Ecco gli interventi necessari
PNRR
Cloud, firmato il contratto per l’avvio di lavori del Polo strategico
Formazione
Competenze digitali, stanziati 48 milioni per gli Istituti tecnologici superiori
Iniziative
Digitalizzazione delle reti idriche: oltre 600 milioni per 21 progetti
Competenze e competitività
PNRR, così i fondi UE possono rilanciare la ricerca e l’Università
Finanziamenti
PNRR, si sbloccano i fondi per l’agrisolare
Sanità post-pandemica
PNRR, Missione Salute: a che punto siamo e cosa resta da fare
Strategie
Sovranità e autonomia tecnologica nazionale: come avviare un processo virtuoso e sostenibile
La relazione
Pnrr e PA digitale, l’alert della Corte dei conti su execution e capacità di spesa
L'editoriale
Elezioni 2022, la sfida digitale ai margini del dibattito politico
Strategie
Digitale, il monito di I-Com: “Senza riforme Pnrr inefficace”
Transizione digitale
Pnrr: arrivano 321 milioni per cloud dei Comuni, spazio e mobilità innovativa
L'analisi I-COM
Il PNRR alla prova delle elezioni: come usare bene le risorse e centrare gli obiettivi digitali
Cineca
Quantum computing, una svolta per la ricerca: lo scenario europeo e i progetti in corso
L'indice europeo
Desi, l’Italia scala due posizioni grazie a fibra e 5G. Ma è (ancora) allarme competenze
L'approfondimento
PNRR 2, ecco tutte le misure per cittadini e imprese: portale sommerso, codice crisi d’impresa e sismabonus, cosa cambia
Servizi digitali
PNRR e trasformazione digitale: ecco gli investimenti e le riforme previste per la digitalizzazione della PA
Legal health
Lo spazio europeo dei dati sanitari: come circoleranno le informazioni sulla salute nell’Unione Europea
Servizi digitali
PNRR e PA digitale: non dimentichiamo la dematerializzazione
Digital Healthcare transformation
La trasformazione digitale degli ospedali
Governance digitale
PA digitale, è la volta buona? Così misure e risorse del PNRR possono fare la differenza
Servizi digitali
Comuni e digitale, come usare il PNRR senza sbagliare
La survey
Pnrr e digitale accoppiata vincente per il 70% delle pmi italiane
Missione salute
Fascicolo Sanitario Elettronico alla prova del PNRR: limiti, rischi e opportunità
Servizi pubblici
PNRR: come diventeranno i siti dei comuni italiani grazie alle nuove risorse
Skill gap
PNRR, la banda ultra larga crea 20.000 nuovi posti di lavoro
Il Piano
Spazio, Colao fa il punto sul Pnrr: i progetti verso la milestone 2023
FORUMPA2022
PNRR e trasformazione digitale: rivedi i Talk di FORUM PA 2022 in collaborazione con le aziende partner
I contratti
Avio, 340 milioni dal Pnrr per i nuovi propulsori a metano
Next Generation EU
PNRR, a che punto siamo e cosa possono aspettarsi le aziende private
Fondi
Operativo il nuovo portale del MISE con tutti i finanziamenti per le imprese
Servizi comunali
Il PNRR occasione unica per i Comuni digitali: strumenti e risorse per enti e cittadini
Healthcare data platform
PNRR dalla teoria alla pratica: tecnologie e soluzioni per l’innovazione in Sanità
Skill
Competenze digitali, partono le Reti di facilitazione
Gli obiettivi
Scuola 4.0, PNRR ultima chance: ecco come cambierà il sistema formativo
Sistema Paese
PNRR 2, è il turno della space economy
FORUM PA 2022
FORUM PA 2022: la maturità digitale dei comuni italiani rispetto al PNRR
Analisi
PNRR: dalla Ricerca all’impresa, una sfida da cogliere insieme
Innovazione
Pnrr, il Dipartimento per la Trasformazione digitale si riorganizza
FORUM PA 2022
PA verde e sostenibile: il ruolo di PNRR, PNIEC, energy management e green public procurement
Analisi
PNRR, Comuni e digitalizzazione: tutto su fondi e opportunità, in meno di 3 minuti. Guarda il video!
Rapporti
Competenze digitali e servizi automatizzati pilastri del piano Inps
Analisi
Attuazione del PNRR: il dialogo necessario tra istituzioni e società civile. Rivedi lo Scenario di FORUM PA 2022
Progetti
Pnrr, fondi per il Politecnico di Torino. Fra i progetti anche IS4Aerospace
Analisi
PNRR, Colao fa il punto sulla transizione digitale dell’Italia: «In linea con tutte le scadenze»
La Svolta
Ict, Istat “riclassifica” i professionisti. Via anche al catalogo dati sul Pnrr
Analisi
Spazio, Colao fa il punto sul Pnrr: i progetti verso la milestone 2023
FORUM PA 2022
Ecosistema territoriale sostenibile: l’Emilia Romagna tra FESR e PNRR
Il Piano
Innovazione, il Mise “centra” gli obiettivi Pnrr: attivati 17,5 miliardi
Analisi
PNRR: raggiunti gli obiettivi per il primo semestre 2022. Il punto e qualche riflessione
Analisi
PNRR: dal dialogo tra PA e società civile passa il corretto monitoraggio dei risultati, tra collaborazione e identità dei luoghi
Webinar
Comuni e PNRR: un focus sui bandi attivi o in pubblicazione
Analisi
Formazione 4.0: cos’è e come funziona il credito d’imposta
PA e Sicurezza
PA e sicurezza informatica: il ruolo dei territori di fronte alle sfide della digitalizzazione
PA e sicurezza
PNRR e servizi pubblici digitali: sfide e opportunità per Comuni e Città metropolitane
Water management
Water management in Italia: verso una transizione “smart” e “circular” 
LE RISORSE
Transizione digitale, Simest apre i fondi Pnrr alle medie imprese
Prospettive
Turismo, cultura e digital: come spendere bene le risorse del PNRR
Analisi
Smart City: quale contributo alla transizione ecologica
Decarbonizzazione
Idrogeno verde, 450 milioni € di investimenti PNRR, Cingolani firma
Unioncamere
PNRR, imprese in ritardo: ecco come le Camere di commercio possono aiutare
I fondi
Industria 4.0: solo un’impresa su tre pronta a salire sul treno Pnrr

Articolo 1 di 5