Vulnerabilità in e2fsck, che si manifesta durante la gestione di directory appositamente formattate

Nell'utilità e2fsck, fornita con il pacchetto e2fsprogs, è stata rilevata una vulnerabilità (CVE-2019-5188), consente l'esecuzione di codice malevolo durante il controllo di un file system contenente directory appositamente formattate. La vulnerabilità è confermata nelle versioni da 1.43.3 a 1.45.4. La vulnerabilità è stata risolta nell'aggiornamento e2fsck 1.45.5. Nei distributivi, il problema rimane non risolto (Debian, Arch Linux, SUSE/openSUSE, Ubuntu, RHEL).

La vulnerabilità è causata da un errore nella funzione mutate_name() nel file rehash.c, utilizzata per ricostruire le tabelle hash legate alle directory, che assicurano il mapping di tutti i file all'interno di esse. La corruzione della struttura hash_entry legata alla directory può portare alla scrittura di dati dell'attaccante in aree al di fuori del buffer allocato. Nel caso in cui venga trovata nella tabella hash un'associazione a una directory di più file con lo stesso nome, l'utilità e2fsck rinomina i file duplicati aggiungendo al nome ~0, ~1 e così via. Per memorizzare temporaneamente il nuovo nome durante tale operazione di rinomina, viene allocato un buffer di 256 byte nello stack.

La dimensione dei dati copiati è determinata dall'espressione «entry->name_len & 0xff», ma il valore entry->name_len viene caricato dalla struttura su disco, non calcolato in base alla dimensione effettiva del nome. Se la dimensione è zero, l'indice dell'array assume il valore -1 e si creano condizioni per un underflow intero attraverso il limite inferiore del buffer e la riscrittura di altri dati nello stack con il valore «~0». Per i sistemi a 64 bit, l'exploitabilità della vulnerabilità è considerata poco probabile e richiede l'assenza di limitazioni sulla dimensione dello stack (ulimit -s unlimited). Per i sistemi a 32 bit, l'exploitabilità è considerata possibile, ma il risultato dipende molto da come è stato compilato l'eseguibile.

Per eseguire un attacco, l'aggressore deve danneggiare i dati in modo specifico nella sezione con FS ext2, ext3 o ext4. Poiché questa operazione richiede privilegi di superutente, la vulnerabilità rappresenta una minaccia durante il controllo di dischi esterni o immagini di FS ricevute da fonti esterne da parte dell'utilità e2fsck.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS | ProHoster