CVE-2026-68453 в Linux Kernel: чтение за пределами буфера в s390/zcrypt

CVE: CVE-2026-68453
Продукт: Linux Kernel
Дата публикации: 13.08.2026
Критичность: HIGH
CVSS: 7.1 (3.1)
EPSS: 0,13%; процентиль 2,77%
CISA KEV: нет подтверждения в каталоге CISA KEV

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


В подсистеме s390/zcrypt ядра Linux обнаружена ошибка валидации размеров буферов токенов CCA. Уязвимость позволяет локальному пользователю инициировать чтение за пределами выделенной памяти, что может привести к утечке данных ядра или отказу в обслуживании. CVSS 7.1 (HIGH).

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


Уязвимость классифицируется как чтение за пределами буфера (buffer over-read). Вектор атаки локальный (AV:L), сложность эксплуатации низкая (AC:L), требуются низкие привилегии (PR:L), пользовательское взаимодействие не требуется (UI:N). Влияние на конфиденциальность высокое (C:H), на целостность отсутствует (I:N), на доступность высокое (A:H). Оценка EPSS составляет 0.13%, что указывает на низкую статистическую вероятность эксплуатации в ближайшем будущем.

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


Затронуты системы на архитектуре s390 (IBM Z), использующие подсистему аппаратной криптографии zcrypt и драйверы, работающие с токенами CCA (Crypto Coprocessor Architecture). Ошибка присутствует в функциях обработки ключей AES и ECC в модулях pkey_cca.c и zcrypt_ccamisc.c. Уязвимы версии ядра, предшествующие применению исправлений с хешами 36b230835b8a, 3b2abee2a678 и a57fd7fcdb63.

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


Причиной является недостаточная валидация полей длины (len) в структурах токенов CCA, контролируемых пользователем. Функции cca_check_secaeskeytoken, cca_check_secaescipherkey и cca_check_sececckeytoken использовали эти поля для операций с памятью без проверки их соответствия реальному размеру буфера и минимальному размеру структуры токена. Также отсутствовала проверка на недопуск (underflow) возвращаемого размера ключа в функции cca_gencipherkey.

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


Атакующий формирует запрос к подсистеме zcrypt, передавая структуру токена CCA с модифицированным полем длины. Если указанное значение превышает реальный размер буфера, ядро читает данные за его пределами. Это может привести к утечке содержимого памяти ядра, которое затем отправляется на криптокарту, или к обращению по невалидным адресам, вызывающему падение ядра (kernel crash). Указание крайне малого значения длины может вызвать недопуск буфера (buffer under-run) с аналогичными последствиями.

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


Для эксплуатации необходимо: 1) Система работает на архитектуре s390; 2) В ядре включена и используется подсистема zcrypt с поддержкой CCA; 3) Атакующий имеет локальный доступ с правами, позволяющими инициировать криптографические операции (доступ к устройствам криптокарты или соответствующие capabilities).

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


Локальный пользователь или процесс инициирует операцию преобразования ключа (например, через ioctl, взаимодействующий с pkey_cca). В запросе передается токен CCA, в котором поле длины установлено в значение, превышающее размер выделенного буфера. Ядро, не проверяя это значение против реального размера буфера, читает данные за его пределами. Результатом может стать утечка памяти ядра или сегментационная ошибка, приводящая к перезагрузке системы.

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


Публичные эксплойты или PoC-коды для CVE-2026-68453 не подтверждены. Доступны только официальные исправления в репозитории ядра. Технически грамотный атакующий может разработать локальный PoC на основе описания механизма уязвимости.

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


Специфичные индикаторы компрометации (IOC) не определены. Общие признаки могут включать: 1) Необъяснимые падения ядра (kernel panic) с упоминанием модулей zcrypt или pkey_cca; 2) Аномальная активность в журналах криптографических устройств; 3) Ошибки доступа к памяти, фиксируемые механизмами защиты (если включены).

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


Рекомендуется мониторинг журналов ядра (dmesg, /var/log/kern.log) на предмет ошибок в модулях zcrypt и pkey_cca. Полезен анализ логов криптографических устройств на предмет аномальных запросов. Инструменты аудита (auditd) могут отслеживать вызовы системных функций, связанных с криптографическими операциями.

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


Для проверки версии установленного ядра Linux используйте:

Bash:
uname -r
uname -a
cat /proc/version

Сравните версию с перечнем уязвимых версий в официальных advisories дистрибутива. Если версия ниже той, что содержит исправление (хеш 36b230835b8a или его порты), система уязвима.

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


Обновите ядро Linux до версии, содержащей исправление. Исправление добавляет валидацию размера буфера ключа и полей длины токена во всех функциях cca_check_sec*token(), а также проверку на недопуск в cca_gencipherkey(). Убедитесь, что установлено ядро с коммитами 36b230835b8a, 3b2abee2a678 или a57fd7fcdb63. Для пользователей дистрибутивов установите последние обновления безопасности.

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


Если обновление невозможно: 1) Отключите использование аппаратной криптографии zcrypt, если это допускается; 2) Ограничьте доступ к устройствам криптокарты только для доверенных процессов; 3) Используйте namespaces или контейнеризацию для изоляции процессов, работающих с криптографическими операциями. Эти меры не устраняют уязвимость, но снижают поверхность атаки.

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


После обновления: 1) Выполните uname -r и убедитесь, что версия ядра соответствует исправленной; 2) Проверьте наличие коммитов в истории ядра (через git log или инструменты дистрибутива); 3) Убедитесь, что модули zcrypt и pkey_cca загружены без ошибок. Проверьте логи на отсутствие сообщений об ошибках валидации токенов.

Вывод​


CVE-2026-68453 представляет собой уязвимость в подсистеме криптографии s390 Linux Kernel, позволяющую локальному атакующему читать память ядра или вызывать отказ в обслуживании. Несмотря на низкую оценку EPSS, наличие локального вектора с высоким влиянием требует своевременного обновления ядра. Администраторы систем на архитектуре s390 должны приоритизировать установку исправлений.

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


  1. NVD — CVE-2026-68453
  2. FIRST EPSS — CVE-2026-68453
  3. s390/zcrypt: Fix buffer over-read in cca_cipher2protkey - kernel/git/stable/linux.git - Linux kernel stable tree
  4. s390/zcrypt: Fix buffer over-read in cca_cipher2protkey - kernel/git/stable/linux.git - Linux kernel stable tree
  5. s390/zcrypt: Fix buffer over-read in cca_cipher2protkey - kernel/git/stable/linux.git - Linux kernel stable tree
  6. CVEs — The Linux Kernel documentation

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


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