Зарф — менеджер по сборке пакетов Airgap для Kubernetes. Версии с 0.23.0 по 0.74.1 содержат уязвимость записи произвольного файла в подкомандах zarf package Inspect sbom и zarf Package Inspect Documentation. Пути к выходным файлам этих подкоманд создаются путем объединения выходного каталога, управляемого пользователем, с полем Metadata.Name пакета, считываемым непосредственно из манифеста zarf.yaml ненадежного пакета.
Хотя Metadata.Name проверяется на соответствие регулярному выражению при создании пакета, злоумышленник может разархивировать пакет и изменить поле Metadata.Name, чтобы оно содержало последовательности обхода пути, такие как ../../etc/cron.d/malicious, или абсолютные пути, такие как /home/user/.ssh/authorized_keys, а также соответствующие файлы внутри SBOMS.tar. Это позволяет записывать контент, контролируемый злоумышленником, в произвольные места файловой системы в пределах разрешений пользователя, выполняющего команду проверки. Эта проблема исправлена в версии 0.74.2.
Показать оригинальное описание (EN)
Zarf is an Airgap Native Packager Manager for Kubernetes. Versions 0.23.0 through 0.74.1 contain an arbitrary file write vulnerability in the zarf package inspect sbom and zarf package inspect documentation subcommands. These subcommands output file paths are constructed by joining a user-controlled output directory with the package's Metadata.Name field read directly from the untrusted package's zarf.yaml manifest. Although Metadata.Name is validated against a regex on package creation, an attacker can unarchive a package to modify the Metadata.Name field to contain path traversal sequences such as ../../etc/cron.d/malicious or absolute paths like /home/user/.ssh/authorized_keys, along with the corresponding files inside SBOMS.tar. This allows writing attacker-controlled content to arbitrary filesystem locations within the permissions of the user running the inspect command. This issue has been fixed in version 0.74.2.
Характеристики атаки
Последствия
Строка CVSS v3.1