В Rust Coreutils нашли 113 уязвимостей, критичные — в chroot, chmod и rm Независимый аудит безопасности инструментария uutils coreutils (Rust Coreutil…
Независимый аудит безопасности инструментария uutils coreutils (Rust Coreutils) выявил 113 проблем. В первом этапе (утилиты coreutils) нашли 73 уязвимости (7 критических, 11 опасных). Второй этап (второстепенные утилиты) добавил ещё 40 уязвимостей.
Критические уязвимости:
▪️ chroot: обрабатывает опцию --userspec после chroot() до сброса привилегий. NSS-библиотеки подгружаются из нового корня до сброса прав, что позволяет подставить свои библиотеки и выполнить код с правами root.
▪️ mkfifo: при ошибке создания FIFO всё равно вызывает set_permissions() и меняет права доступа к существующему файлу (на 644).
▪️ chmod: обход --preserve-root через путь вида /../ или симлинк на корень (CVE-2026-35338).
▪️ rm: обрабатывает любые сокращённые опции --no-preserve-root (--n, --no и т.д.), позволяя без защиты выполнить rm -rf --n /. Обход --preserve-root через симлинк на корень. При указании rm -rf ./ или rm -rf ./// молча удаляет текущий каталог.
▪️ kill: ошибка в разборе аргументов позволяет отправить сигнал всем процессам в системе через kill - -1.
В Ubuntu 26.04 LTS из-за выявленных проблем в rust-coreutils вернули утилиты cp, mv и rm из набора GNU Coreutils, в которых на момент релиза оставалось 8 неисправленных состояний гонки. Остальные утилиты задействованы из rust-coreutils 0.8.0. В Ubuntu 26.10 планируют полностью перейти на rust-coreutils.
🐧Обсудить в Чате Linux