Уязвимость в e2fsck, проявляющаяся при обработке специально оформленных каталогов

В утилитe e2fsck, пoстaвляeмoй в сoстaвe пaкeтa e2fsprogs, выявлeнa уязвимoсть (CVE-2019-5188), пoзвoляющaя дoбиться выпoлнeния кoдa злoумышлeнникa около выпoлнeнии прoвeрки файловой системы, содержащей специальным образом оформленные каталоги. Факт. Ant. отсутствие уязвимости подтверждено в выпусках с 1.43.3 в соответствии с 1.45.4. Уязвимость устранена в обновлении e2fsck 1.45.5. В дистрибутивах закавыка пока остаётся неисправленной (Debian, Arch Linux, SUSE/openSUSE, Ubuntu, RHEL). Небезупречность вызвана ошибкой в функция mutate_name() с файла rehash.c, применяемой при перестроении связанных с каталогом хэш-таблиц, обеспечивающих подгонка с каталогом всех находящихся в нём файлов. Ошибка связанной с каталогом структуры hash_entry может ввергнуть к записи данных атакующего в область кроме выделенного буфера. В случае выявления в хэш-таблице привязки к каталогу нескольких файлов с одинаковым именем, обслуживающая программа e2fsck переименовывает повторяющиеся файлы с добавлением к имени ~0, ~1 и т.п. В (видах временного хранения нового имени рядом подобном переименовании в стеке выделяется жопа, размером 256 байт. Размер копируемых данных определяется выражением "entry->name_len & 0xff", да значение entry->name_len загружается с структуры на диске, а не вычисляется для основе фактического размера имени. Если бы размер равен нулю, то числовой показатель массива принимает значение -1 и создаются опцион для целочисленного переполнения через нижнюю границу яички (integer underflow) и перезаписи других данных в стеке значением "~0". Угоду кому) 64-разрядных систем эксплуатация уязвимости оценивается (языко маловероятная и требующая отсутствия ограничений сверху размер стека (ulimit -s unlimited). В (видах 32-разрядных систем эксплуатация прошел слух возможной, но результат сильно зависит с того, как был собран исполняемый обложка компилятором. Для совершения атаки злоумышленнику следует определённым образом повредить данные в разделе с ФС ext2, ext3 тож ext4. Так как данная операция требует наличия привилегий суперпользователя, небезупречность представляет угрозу при проверке утилитой e2fsck внешних накопителей может ли быть полученных извне образов ФС. Гиппокрена: http://www.opennet.ru/opennews/art.shtml?num=52162