A la utilitat e2fsck subministrada com a part del paquet , (), que us permet executar el codi d'un atacant quan comproveu un sistema de fitxers que conté directoris especialment dissenyats. La vulnerabilitat es va confirmar a les versions 1.43.3 a 1.45.4. Vulnerabilitat corregida en l'actualització . En els kits de distribució, el problema encara no s'ha corregit (, , , , ).
La vulnerabilitat és causada per un error a la funció mutate_name() del fitxer rehash.c, que s'utilitza quan es reconstrueixen les taules hash associades a un directori, per assegurar-se que tots els fitxers del directori coincideixen amb el directori. La corrupció de l'estructura hash_entry associada a un directori podria provocar que un atacant escrigués dades a una àrea fora del buffer assignat. Si diversos fitxers amb el mateix nom s'identifiquen a la taula hash com a enllaçats a un directori, la utilitat e2fsck canvia el nom dels fitxers duplicats afegint ~0, ~1, etc. al nom. Per emmagatzemar temporalment el nou nom durant aquest canvi de nom, s'assigna una memòria intermèdia de 256 bytes de mida a la pila.
La mida de les dades a copiar ve determinada per l'expressió "entry->name_len & 0xff", però el valor de entry->name_len es carrega des d'una estructura al disc en lloc de calcular-se a partir de la mida real del nom. Si la mida és zero, aleshores l'índex de la matriu pren el valor -1 i es creen les condicions per al desbordament d'enteres a través del límit inferior de la memòria intermèdia (desbordament d'entiers) i sobreescriure altres dades a la pila amb el valor "~0". Per als sistemes de 64 bits, l'explotació de la vulnerabilitat es considera poc probable i no requereix cap restricció a la mida de la pila (ulimit -s il·limitat). Per als sistemes de 32 bits, l'explotació es considera possible, però el resultat depèn molt de com el compilador ha compilat l'executable.
Per dur a terme un atac, un atacant ha de corrompre les dades d'una determinada manera a la partició amb el sistema de fitxers ext2, ext3 o ext4. Com que aquesta operació requereix privilegis de superusuari, la vulnerabilitat suposa una amenaça quan la utilitat e2fsck escaneja unitats externes o imatges FS rebudes externament.
Font: opennet.ru
