Уязвимость в GNU tar позволяет перезаписать сторонние файлы

Уязвимость в GNU tar позволяет перезаписать сторонние файлы

Уязвимость в GNU tar позволяет перезаписать сторонние файлы

В утилите GNU tar выявлена уязвимость (CVE-2016-6321), позволяющая при раскрытии архива осуществить запись вне целевого пути, заданного в командной строке. Например, запустив распаковку одного файла, может быть переписан другой файл или осуществлено раскрытие файлов в обход заданным маскам и исключениям.

Подготовив специальным образом архив атакующий может добиться записи сторонних файлов при распаковке, например, подменить ключ входа по SSH или сценарии автозапуска bash при распаковке в домашнюю директорию. В случае если архив распаковывается пользователем root возможно организовать перезапись системных файлов и получить полномочия суперпользователя (например, переписав crontab). Интересно, что информация о проблеме была отправлена сопровождающему GNU tar ещё в марте, но из-за специфичных условий её проявления сопровождающий не посчитал указанную проблему уязвимостью, поэтому проблема на момент публикации эксплоита остаётся неисправленной. Представители Red Hat признали проблему и присвоили ей средний (moderate) уровень опасности, пишет opennet.ru.

Уязвимость связана с некорректным вырезанием символов ".." из путей в архиве - при наличии ".." перед распаковкой осуществляется удаление части пути, предшествующей "..", но проверка соответствия маскам осуществляется по исходному варианту. Например, подготовив архив с файлом "etc/motd/../etc/shadow", атакующий может переписать etc/shadow в случае попытки раскрытия файла etc/motd (tar удалит "etc/motd/../", но оставит "etc/shadow", который будет обработан, несмотря на то, что явно инициирована распаковка только etc/motd).

Условием успешного проведения атаки является необходимость соответствия части присутствующего в архиве пути с задаваемой при распаковке целевой директорией, т.е. часть до символов ".." должна совпадать с заданным для распаковки файловым путём или соответствовать маске распаковки, заданной через опцию "--wildcards". Данное ограничение сужает область применения атаки системами с предсказуемыми путями распаковки, например, приложениями распаковывающими архивы в заранее известные директории.

Уязвимость Dirty Frag даёт права root в Linux, а патчей пока нет

В Linux обнаружили новую серьёзную уязвимость Dirty Frag, которая позволяет локальному пользователю получить права root на большинстве популярных дистрибутивов. Проблема затрагивает ядра Linux примерно с 2017 года и связана с ошибками в механизмах записи кеша страницы в компонентах xfrm-ESP и RxRPC.

Dirty Frag похожа на уже нашумевшие Dirty Pipe и Copy Fail: атакующему достаточно иметь локальный доступ к системе и запустить небольшой код.

После этого он может повысить привилегии до администратора без сложных условий гонки (race condition) или редкой конфигурации.

Под ударом оказались многие актуальные Linux-дистрибутивы, включая Ubuntu, Arch, RHEL, openSUSE, Fedora, AlmaLinux и другие. Согласно сообщениям исследователей, брешь также воспроизводится в WSL2.

 

Самое скверное, что информация стала публичной до выпуска патчей. По данным Phoronix, эмбарго было нарушено третьей стороной, поэтому исследователь опубликовал детали раньше планируемого срока. На момент раскрытия патчей для основных дистрибутивов ещё не было.

В качестве временной меры специалисты предлагают отключить модули esp4, esp6 и rxrpc, если они не используются. Они связаны с IPsec и RxRPC, поэтому для большинства обычных серверов такая мера не должна сломать работу, но для систем с IPsec её нужно оценивать аккуратно.

RSS: Новости на портале Anti-Malware.ru