В Docker Hub нашлась редкая ошибка, при которой злоумышленнику не требуется красть пароль жертвы, чтобы получить права на работу с её образами. Docker сообщила о критической CVE-2026-105445, связанной с переводом личного аккаунта в организацию. Числовая оценка CVSS и версия шкалы на момент написания новости не опубликованы.
Ошибка существует с 26 августа 2024 года. При преобразовании аккаунта Docker Hub позволяет назначить владельцем новой организации существующего пользователя. Вместе с аккаунтом сервис переносит персональные токены доступа PAT новому владельцу, но не меняет секреты и не отзывает старые значения. Согласие и уведомление назначенного владельца не требуются.
Сценарий атаки выглядит опасно просто. Атакующий создаёт аккаунт и PAT, затем превращает аккаунт в организацию и назначает владельцем выбранную жертву. Docker Hub перепривязывает токен к жертве, а исходный секрет остаётся у атакующего. Реестр принимает тот же PAT как принадлежащий жертве и даёт права в пределах разрешений токена.
Такой PAT позволяет загружать, публиковать или удалять образы в репозиториях жертвы и организаций, к которым у неё есть доступ. Возможность публиковать контейнеры под доверенным именем создаёт угрозу для цепочки поставок. В 2026 году похожие последствия уже проявились, когда злоумышленники подменяли KICS в Docker Hub.
Полного захвата аккаунта уязвимость не даёт. Перенесённый PAT не открывает веб-интерфейс Docker Hub и не позволяет менять пароль, адрес почты или настройки двухфакторной аутентификации. Однако доступа к реестру хватает для подмены опубликованных образов, как показывают прежние атаки на Trivy и связанные пакеты.
Петер Молнар и Кристиан Хожак сообщили о проблеме 30 сентября. Команда Docker воспроизвела баг и примерно через четыре часа выпустила исправление: при преобразовании аккаунта PAT больше не переносятся. 2 октября компания предупредила затронутых пользователей, а 8 октября принудительно отключила найденные перенесённые токены, кроме тех, которые владельцы попросили сохранить.
Docker проверила все преобразования аккаунтов с момента появления ошибки и изучила около 304 тысяч операций push с перенесёнными PAT. Признаков эксплуатации компания не обнаружила, а в публичных образах повышенного риска не нашла вредоносного кода или подмены. Компания уточнила, что неиспользованный токен не оставляет следов в логах, поэтому отсутствие активности не доказывает, что секрет никто не сохранил.
Пользователям, которых Docker уведомил 2 октября, советуют проверить раздел Personal access tokens и отозвать незнакомые или ненужные ключи. Для автоматизации внутри организаций компания рекомендует organization access tokens вместо персональных PAT. Если уведомление не пришло, Docker посчитал аккаунт не затронутым, и дополнительные действия не требуются.
