CVE-2026-49478 в Ubuntu: SSRF в Fulcio, утечка токенов и защита

CVE: CVE-2026-49478
Продукт: Ubuntu
Дата публикации: 13.08.2026
Критичность: HIGH
CVSS: 8.7 (3.1)
EPSS: 0,28%; процентиль 20,76%
CISA KEV: нет подтверждения в каталоге CISA KEV

Краткое описание​


Уязвимость CVE-2026-49478 затрагивает пакет golang-github-sigstore-fulcio в Ubuntu 26.04 LTS. Ошибка позволяет злоумышленнику использовать механизм OIDC-открытия для выполнения слепых SSRF-атак, подмены JWKS-ключей и перехвата токенов Kubernetes ServiceAccount. Версия 1.8.6 устраняет проблему, блокируя перенаправления между хостами.

Основные характеристики​


Идентификатор: CVE-2026-49478. Класс уязвимости: CWE-918 (Server-Side Request Forgery). Оценка CVSS 3.1: 8.7 (HIGH). Вектор: AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:N. Оценка Ubuntu: medium. EPSS: 0.28% (20.7-й процентиль). Уязвимый компонент: Fulcio (CA для кодовых сертификатов). Затронутая версия в Ubuntu: 1.7.1-1 (пакет golang-github-sigstore-fulcio). Исправленная версия: 1.8.6. Дата публикации: 13.08.2026.

Какие продукты и версии затронуты​


В Ubuntu 26.04 LTS (Resolute) уязвим исходный пакет golang-github-sigstore-fulcio версии 1.7.1-1. Соответствующий бинарный пакет разработки — golang-github-sigstore-fulcio-dev версии 1.7.1-1. Уязвимость затрагивает все версии Fulcio вплоть до 1.8.5 включительно. В других дистрибутивах или версиях Ubuntu данные отсутствуют в предоставленных источниках.

Причина уязвимости​


Причиной уязвимости является некорректная обработка HTTP-перенаправлений во время процесса OIDC-открытия (discovery). Клиент Fulcio следует за перенаправлениями, указанными злоумышленником, даже если они ведут на другой хост (cross-host redirects). При этом клиент автоматически прикрепляет токены Kubernetes ServiceAccount к запросам, отправляемым на эти внешние хосты. Это нарушает принцип изоляции и позволяет выводить конфиденциальные данные за пределы доверенной среды.

Как работает атака​


Атакующий контролирует или компрометирует OIDC-издателя (issuer). В процессе OIDC-открытия Fulcio запрашивает метаданные издателя. Злоумышленник возвращает HTTP-ответ с кодом перенаправления (например, 302), указывающим URL на внешний, контролируемый им сервер. Клиент Fulcio следует этому перенаправлению. Поскольку механизм не проверяет смену хоста, запрос отправляется на внешний ресурс. При этом к запросу автоматически добавляется токен Kubernetes ServiceAccount, привязанный к поду, в котором запущен Fulcio. Это позволяет злоумышленнику перехватить токен или выполнить слепую SSRF-атаку, направляя запросы на внутренние ресурсы кластера.

Условия успешной эксплуатации​


Для эксплуатации требуется контроль над OIDC-издателем или возможность манипулировать ответами OIDC-сервера, используемого Fulcio. Атакующий должен иметь возможность возвращать HTTP-перенаправления на контролируемый внешний хост. Уязвимость эксплуатируется в контексте OIDC-открытия, поэтому атакующий не должен иметь прямого доступа к API Fulcio, но должен влиять на процесс аутентификации/открытия конфигурации. Токен ServiceAccount должен быть доступен в среде выполнения Fulcio (например, в Kubernetes).

Возможный сценарий атаки​


  1. Администратор настраивает Fulcio для использования OIDC-аутентификации. 2. Злоумышленник, контролирующий OIDC-издатель, модифицирует endpoint discovery, возвращая перенаправление на свой сервер. 3. Fulcio инициирует запрос к OIDC-издателю. 4. Получив перенаправление, Fulcio следует ему, отправляя запрос на внешний хост. 5. К запросу автоматически прикрепляется токен Kubernetes ServiceAccount. 6. Злоумышленник получает токен, что может привести к компрометации прав доступа в кластере. 7. Альтернативно, злоумышленник может подменить JWKS-ключи, кэшируя вредоносные ключи, что позволит выпускать поддельные сертификаты.

Есть ли публичный эксплойт​


В официальных источниках не упоминаются публичные эксплойты или PoC-коды для CVE-2026-49478. Статус эксплуатации в дикой природе не подтвержден. EPSS-оценка (0.28%) указывает на низкую вероятность эксплуатации в ближайшее время. Отсутствие публичного эксплойта не гарантирует безопасность, но снижает риск автоматизированных атак.

Признаки эксплуатации​


Специфичные IOC для CVE-2026-49478 не опубликованы. Общие признаки потенциальной компрометации включают: неожиданные исходящие HTTP-запросы от Fulcio к внешним IP-адресам; наличие HTTP-заголовков с токенами ServiceAccount в логах внешних серверов; аномальное поведение OIDC-издателя (частые перенаправления); появление неавторизованных сертификатов, выданных Fulcio. Рекомендуется мониторинг исходящего трафика и логов Fulcio на предмет перенапрвлений.

Как обнаружить атаку​


Для обнаружения признаков эксплуатации рекомендуется анализировать логи Fulcio на наличие HTTP-кодов перенаправления (3xx) и последующих запросов к внешним хостам. Проверка логов Kubernetes на предмет использования токенов ServiceAccount для доступа к внешним ресурсам. Мониторинг OIDC-издателей на предмет изменения конфигурации discovery. Использование SIEM-систем для корреляции событий OIDC-аутентификации и исходящего трафика.

Как проверить свою версию​


Для проверки версии установленного пакета Fulcio в Ubuntu используйте команду: apt-cache policy golang-github-sigstore-fulcio. Если версия пакета ниже 1.8.6 (например, 1.7.1-1), система уязвима. Также можно проверить версию бинарного пакета разработки: apt-cache policy golang-github-sigstore-fulcio-dev. Для проверки версии ОС используйте cat /etc/os-release и uname -r.

Исправление​


Единственным подтвержденным методом устранения уязвимости является обновление пакета golang-github-sigstore-fulcio до версии 1.8.6 или выше. В Ubuntu 26.04 LTS обновление доступно через стандартные репозитории безопасности. Выполните команду: sudo apt update && sudo apt install golang-github-sigstore-fulcio. Убедитесь, что установленная версия соответствует 1.8.6 или новее. В версии 1.8.6 блокируются перенаправления между хостами, ограничивается инъекция токенов и загрузка локальных токенов.

Временные меры защиты​


Официальные временные меры (workarounds) для CVE-2026-49478 не доступны. В источниках прямо указано: «No known workarounds are available». Рекомендуется изолировать Fulcio от неконтролируемых OIDC-издателей, если обновление невозможно. Однако это не является гарантированной защитой, так как уязвимость затрагивает сам механизм обработки OIDC-открытия.

Как проверить устранение уязвимости​


После обновления проверьте версию пакета командой: apt-cache policy golang-github-sigstore-fulcio. Убедитесь, что установленная версия (Installed) равна 1.8.6 или выше. Проверьте логи Fulcio на отсутствие ошибок OIDC-открытия. Убедитесь, что перенаправления между хостами блокируются (можно проверить через тестовый OIDC-издатель, возвращающий перенаправление, если это безопасно в тестовой среде).

Вывод​


CVE-2026-49478 представляет серьезную угрозу для инфраструктуры, использующей Fulcio в Ubuntu 26.04 LTS. Уязвимость позволяет злоумышленнику перехватывать токены Kubernetes ServiceAccount и выполнять SSRF-атаки через OIDC-открытие. Обновление до версии 1.8.6 является критически важным шагом. Временные меры отсутствуют, поэтому откладывание обновления повышает риск компрометации. Рекомендуется регулярный мониторинг OIDC-конфигураций и исходящего трафика Fulcio.

Официальные источники​


  1. NVD — CVE-2026-49478
  2. Ubuntu OSV — CVE-2026-49478
  3. FIRST EPSS — CVE-2026-49478

История обновлений статьи​


  • 14.08.2026 — Опубликована первая версия материала.
  • 16.08.2026 — Уточнены сведения об уязвимых версиях, оценке риска или исправлении.
  • 21.08.2026 — Уточнены сведения об уязвимых версиях, оценке риска или исправлении.
 
Последнее редактирование:
Назад
Верх Низ