CVE-2026-47680 in source-controller
Сводка
по VulDB • 10.09.2026
source-controller — это оператор Kubernetes, специализирующийся на получении артефактов из внешних источников, таких как Git, OCI-репозитории, репозитории Helm и S3-совместимые хранилища (buckets). В версиях от 0.0.17 до 1.8.4 злоумышленник, обладающий возможностью влиять на содержимое бакета, указанного в ресурсе `Bucket`, может заставить source-controller записывать полученные данные объектов по путям вне рабочей директории для каждой итерации согласования (reconciliation). Поверхность атаки ограничивается проверкой контрольных сумм (digest verification) самим source-controller и последующими Flux-контроллерами: source-controller проверяет сохраненные контрольные суммы артефактов во время reconciliation и перестраивает их при расхождении; потребители (kustomize-controller, helm-controller) также проверяют контрольную сумму полученных артефактов и отклоняют несоответствия. Эти проверки предотвращают попадание манипулированного артефакта в кластер, однако злоумышленник все равно может записывать файлы в любом месте, куда у подов source-controller есть права на запись.
Отдельно, пользователь с разрешениями на создание или обновление ресурсов `GitRepository` может заставить source-controller проверять существование путей вне клонированного репозитория. Поскольку результат этой проверки отображается через статус ресурса, это позволяет осуществлять ограниченную энумерацию (перечисление) файловых путей в поде контроллера. Эта поверхность атаки присутствует только в версиях source-controller v1.6.0 и новее, где была внедрена функция sparse-checkout. Уязвимость исправлена в версии source-controller v1.8.5. Встроенного обходного решения (workaround) нет. Пользователям следует обновиться до патченной версии. В качестве меры защиты «глубокой эшелонированной обороны» для поверхности атаки, связанной с sparse-checkout `GitRepository`, можно развернуть `ValidatingAdmissionPolicy` (или сторонний движок политик, такой как Kyverno или OPA Gatekeeper), чтобы отклонять ресурсы `GitRepository`, чьи записи `.spec.sparseCheckout` содержат `..` или абсолютные пути.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.