Il bug del kernel Linux di 9 anni soprannominato "Dirty Cow" può eseguire il root di ogni versione di Android

Dirty Cow è un bug scoperto di recente, ma vecchio di 9 anni, che può essere sfruttato per garantire l'accesso root su tutte le versioni di Android.

Nonostante il fatto che decine di migliaia di utenti studino attivamente il codice sorgente del kernel Linux alla ricerca di difetti di sicurezza, non è raro che bug gravi passino inosservati. Dopotutto, anche se le possibilità di perdere qualcosa di incredibilmente serio diminuiscono avendo più occhi che controllano il codice, siamo tutti ancora umani e siamo destinati a commettere un errore. L’errore questa volta sembra essere piuttosto grave, purtroppo. UN exploit di escalation dei privilegi è stato recentemente scoperto la scorsa settimana, e sebbene esso è già stato patchato nel kernel Linux principale, il bug potrebbe potenzialmente essere sfruttati su quasi tutti i telefoni Android sul mercato finché ciascun dispositivo non riceve la patch del kernel appropriata.


Entra la Mucca Sporca

Il bug di escalation dei privilegi è conosciuto colloquialmente come exploit Dirty Cow, ma è catalogato nel sistema di tracciamento dei bug del kernel Linux come CVE-2016-5195. Sebbene scoperto solo la scorsa settimana, il bug esisteva nel codice del kernel Linux per 

9 anni. Inoltre, il codice sfruttabile si trova in una sezione del kernel Linux fornito in dotazione praticamente tutti i sistemi operativi moderni basati sul kernel Linux, incluso Android il modo. Quel che è peggio è che i ricercatori che hanno scoperto l'exploit hanno trovato prove che l'exploit esiste essere utilizzato in modo dannoso nel mondo reale, quindi stanno consigliando a tutti i fornitori di software costruito sul kernel Linux di applicare immediatamente una patch all'exploit.

Dirty Cow di per sé non è un exploit, ma piuttosto una vulnerabilità. Tuttavia, questa vulnerabilità consente di aumentare i privilegi di un processo dello spazio utente, garantendogli privilegi di superutente. Sfruttando questa vulnerabilità, un processo dannoso dello spazio utente può avere accesso root illimitato sul dispositivo di una vittima. In termini più tecnici, il bug coinvolge una condizione di competizione della tecnica di duplicazione della memoria di Linux nota come copia su scrittura. Sfruttando questa race condition, gli utenti possono ottenere l'accesso in scrittura alle mappature della memoria che normalmente sono impostate in sola lettura. È possibile ottenere maggiori dettagli sulla vulnerabilità Qui, Qui, E Qui.

Si dice che la vulnerabilità della sicurezza sia piuttosto banale da sfruttare, e in effetti entro pochi giorni dalla vulnerabilità resa pubblica un exploit di escalation dei privilegi proof-of-concept è stato dimostrato per tutti i dispositivi Android. Qualsiasi dispositivo Android che esegue una versione del kernel Linux successiva alla 2.6.22 (leggi: ogni singola distribuzione Android esistente) possono potenzialmente cadere vittime di questo exploit proof-of-concept. Sebbene l’exploit proof-of-concept non ottenga effettivamente l’accesso root, attaccare il sistema utilizzando questa vulnerabilità lo rende abbastanza semplice. In un'e-mail inviata ad ArsTechnica, Phil Oester, uno sviluppatore del kernel Linux che sta catalogando gli exploit conosciuti nel mondo reale di Dirty Cow su il suo sito web aveva questo da dire riguardo al bug:

Qualsiasi utente può diventare root in < 5 secondi nei miei test, in modo molto affidabile. Roba spaventosa.

La vulnerabilità viene sfruttata più facilmente con l'accesso locale a un sistema come gli account shell. Meno banalmente, funziona anche qualsiasi vulnerabilità del server Web/applicazione che consente all'aggressore di caricare un file sul sistema interessato ed eseguirlo.

Il particolare exploit caricato sul mio sistema è stato compilato con GCC 4.8.5 rilasciato 20150623, anche se ciò non dovrebbe implicare che la vulnerabilità non fosse disponibile prima di tale data data la sua longevità. Per quanto riguarda chi viene preso di mira, chiunque utilizzi Linux su un server connesso al Web è vulnerabile.

Negli ultimi anni ho acquisito tutto il traffico in entrata sui miei server web per analisi forensi. Questa pratica si è rivelata preziosa in numerose occasioni e la consiglierei a tutti gli amministratori. In questo caso, sono riuscito a estrarre il file binario caricato da tali acquisizioni per analizzarne il comportamento e inoltrarlo ai manutentori del kernel Linux appropriati.

Dopo un ulteriore lavoro da parte degli sviluppatori per dimostrare l'efficacia dello sfruttamento di Dirty Cow su Android, uno sviluppatore è riuscito a farlo root con successo il suo HTC dispositivo in pochi secondi sfruttando la vulnerabilità. Noi di XDA generalmente accogliamo con favore la possibilità per gli utenti di acquisire l'accesso root, ma non ne celebriamo l'esistenza root exploit come questo, specialmente uno così diffuso e potenzialmente incredibilmente pericoloso da porre fine utenti. Per darti un'idea di quanto possa essere pericoloso Dirty Cow in natura, YouTuber Computerphile ha messo insieme un breve video dimostrando i potenziali vettori di attacchi dannosi che gli hacker possono utilizzare per ottenere silenziosamente l'accesso root sul tuo dispositivo.


Fonte: ArsTechnica [1]

Fonte: ArsTechnica [2]