🚨
Уведомление о безопасности - CVE-2026-53359 ("Januscape"): выход из гостя KVM на хост- Серьёзность: высокая
- Статус: требуется немедленное устранение
Что произошло6 июля 2026 года была публично раскрыта уязвимость в ядре Linux CVE-2026-53359 ("Januscape") вместе с рабочим эксплойтом. Это уязвимость use-after-free в shadow MMU KVM/x86, позволяющая гостевой ВМ выйти на хост (узел кластера) или уронить ядро узла. Уязвимость затрагивает как процессоры Intel, так и AMD и присутствует в ядре начиная с 2010 года.
Исправление от разработчиков вышло в стабильных версиях ядра (6.18.38, 6.12.95, 6.6.144, 6.1.177, 7.1.3) 4 июля 2026 года, текущие версии Talos до сих пор используют уязвимое ядро.
Кого это затрагиваетИнсталляции Cozystack, использующие виртуализацию или кластеры Kubernetes для тенантов - узлы тенантских Kubernetes-кластеров являются ВМ KubeVirt, поэтому они попадают под угрозу. Если вы запускаете только контейнеризированные нагрузки и никогда не создаёте ВМ или тенантские кластеры, ваш уровень риска значительно ниже.
РискДля эксплойта нужны две вещи, которые у тенанта уже есть: root-доступ внутри своей ВМ и вложенная виртуализация, доступная гостю (включена по умолчанию). Злоумышленник-тенант может:
- уронить ядро узла, что приведёт к падению всех ВМ соседей на этом узле (отказ в обслуживании), либо
- при наличии рабочего эксплойта - выполнить код на узле и скомпрометировать весь кластер.
Песочница KubeVirt (непривилегированные контейнеры, seccomp, SELinux) не защищает от этой атаки - ошибка находится в ядре хоста и достигается через обычный интерфейс KVM, который использует каждая ВМ.
Рекомендуемая мера: отключить вложенную виртуализациюВМ Cozystack не нуждаются во вложенной виртуализации. Отключение убирает поверхность атаки, независимо от версии ядра.
Talos (большинство кластеров)Добавьте в конфигурацию машины Talos, в раздел
machine.install:
install:
# Только для Talos >= 1.12: закрепите grubUseUKICmdline false, чтобы аргументы применялись
# (иначе на системах UEFI/UKI они будут игнорироваться).
grubUseUKICmdline: false
extraKernelArgs:
- kvm_intel.nested=0
- kvm_amd.nested=0
Обе строки безопасны как для Intel, так и для AMD — та, что не соответствует вашему процессору, игнорируется. На версиях Talos старше 1.12 поле
grubUseUKICmdline не существует, а
extraKernelArgs игнорируется на узлах с UEFI/UKI — в этом случае аргументы нужно встраивать в образ загрузки через Image Factory.
Применяйте в два шага —
talm apply, затем
talm upgrade. Сначала отправьте обновлённую конфигурацию машины на узел, затем повторно запустите установщик Talos, чтобы аргументы ядра были записаны в конфигурацию загрузки (одного
talm apply недостаточно — он не перезаписывает конфигурацию загрузки). Можно обновиться до той же версии Talos, что уже установлена - цель в том, чтобы заново запустить установщик с новыми аргументами:
# 1. Отправить обновлённую конфигурацию машины на узел
talm apply -f nodes/<node>.yaml
# 2. Повторно запустить установщик, чтобы аргументы ядра попали в конфигурацию загрузки (это перезагрузит узел)
talm upgrade -f nodes/<node>.yaml
⚠️ Это приведёт к перезагрузке узла. Выполняйте развёртывание по одному узлу за раз, дожидаясь, пока каждый узел перейдёт в состояние Ready (а на управляющих узлах — восстановления кворума etcd), прежде чем переходить к следующему.
Обычные Linux-хосты (не Talos)Создайте файл
/etc/modprobe.d/cozystack-kvm-nested.conf:
options kvm_intel nested=0
options kvm_amd nested=0
Перезагрузите узел (или модуль kvm), чтобы изменения вступили в силу.
АвтоматизацияТакже были обновлены навыки Cozystack Claude Code, чтобы предписывать и проверять это при начальной настройке и обновлении - настройка помещается в
machine.install и сохраняется при будущих обновлениях Talos
https://github.com/cozystack/ccp/pull/17Используйте навыки cozystack:talos-bootstrap и cozystack:cluster-upgrade
Исправление для TalosКогда Talos выпустит образ с исправленным ядром (6.18.38 или новее), обновитесь как обычно.
@katamarina_ru - мы делаем CozyФСТЭК