Si può ottenere un malware scaricando un’immagine su un telefono Android?

La risposta breve è sì, un'immagine può contenere malware e questo può compromettere il tuo dispositivo.

Questo potrebbe sembrare misterioso: "Sto solo guardando i valori dei colori, come può essere malware? Non sto eseguendo nulla..." La ragione è che la maggior parte dei formati di immagine moderni sono pesantemente interpretati - un pezzo di codice che intende visualizzare l'immagine leggerà il file ed elaborerà ciò che vi trova in vari modi. In alcuni casi si tratta semplicemente di decompressione, ma in altri casi ci sono modi per incorporare istruzioni più sofisticate nei file di tipo immagine.

Ogni volta che un interprete cerca di leggere un insieme di istruzioni, sta effettivamente eseguendo qualcosa. Ogni volta che qualcosa viene eseguito da una fonte non fidata, c'è un rischio di malware. Questo tipo di exploit risale a Windows Metafiles anni fa, ma abbiamo visto exploit simili per molto tempo senza una fine in vista.

Un'altra tecnica correlata coinvolge tecniche classiche di buffer overflow: dire all'interprete che l'immagine contiene X byte di dati, ma poi in realtà avere l'immagine con Y byte di dati. Se l'interprete non sta attento, i byte Y di dati potrebbero far traboccare il buffer che l'interprete ha creato per esso e potenzialmente causare l'esecuzione di codice dannoso. Un exploit di questo tipo è uscito di recente, il 14 febbraio, che sfrutta SetDIBitsToDevice per innescare un overflow. Ma ci sono state falle simili nelle librerie multimediali di Android - Stagefright per citare un esempio famoso.

Quindi non è tanto l'immagine che è una preoccupazione, è l'interprete che legge il file. Questi devono essere quasi perfetti (il che è davvero molto difficile) per prevenire tutti i tipi di attacchi. Quindi patch, patch, patch e state attenti a cosa cliccate.