DaemonSet'ы для исправления уязвимостей семейства Copy Fail на всех worker нодах кластеров MKS.
CVE ID: CVE-2026-31431
CVE Link: https://nvd.nist.gov/vuln/detail/CVE-2026-31431
Вектор атаки и уровень опасности согласно CVSS v.3.1:
Score: 7.8 HIGH
Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Краткое описание:
Copy Fail (CVE-2026-31431) — это логическая уязвимость в подсистеме криптографического API ядра Linux, позволяющая обычному пользователю системы получить права суперпользователя (root). PoC работает на всех основных дистрибутивах Linux, выпущенных с 2017 года и до момента выхода патча.
Особенности:
- возможность использования как примитив побега из контейнера на хост, из-за использования общего для всего хоста page cache
- не требует удалённого доступа — использование возможно только в случае наличия локальной непривилегированной учетной записи
- использует крипто-API ядра (AF_ALG), который включён по-умолчанию в конфигурациях практически всех популярных дистрибутивов
DaemonSet запускает контейнер на каждой worker ноде кластера:
- Тестирует доступность AF_ALG AEAD интерфейса
- Cоздает конфигурацию
/etc/modprobe.d/disable-algif.conf - Выполняет
rmmod algif_aeadесли модуль загружен - Проверяет что уязвимость устранена, вызывая повторную проверку из пункта 1
wget https://raw.githubusercontent.com/selectel/mks-copy-fail-mitigation/refs/heads/main/copy-fail-mitigation-daemonset.yamlИли клонировать репозиторий:
git clone https://github.com/selectel/mks-copy-fail-mitigation.git
cd mks-copy-fail-mitigationkubectl apply -f copy-fail-mitigation-daemonset.yaml# Проверить статус DaemonSet
kubectl get daemonset -n kube-system cve-2026-31431-mitigation
# Получить список подов
kubectl -n kube-system get pods -l app=cve-2026-31431-mitigation -o wide# Логи initContainer
kubectl -n kube-system logs -l app=cve-2026-31431-mitigation -c mitigationkubectl delete -f copy-fail-mitigation-daemonset.yamlCVE ID: CVE-2026-43284, CVE-2026-43500
CopyFail2: без отдельного CVE ID
CVE Links:
Краткое описание:
Dirty Flag / CopyFail2 — уязвимости в подсистеме IPsec ядра Linux (модули esp4, esp6 и rxrpc), позволяющие локальному непривилегированному пользователю получить права суперпользователя (root).
Особенности:
- возможность использования как примитив побега из контейнера на хост
- используют модули ядра esp4 (IPsec IPv4), esp6 (IPsec IPv6) и rxrpc (протокол RxRPC), которые включены по умолчанию в большинстве дистрибутивов
DaemonSet запускает контейнер на каждой worker ноде кластера:
- Проверяет через
lsmodзагружены ли модулиesp4,esp6,rxrpc - Создает конфигурацию
/etc/modprobe.d/disable-esp-rxrpc.confс правиламиinstall esp4/esp6/rxrpc /bin/false - Выполняет
rmmodдля каждого модуля если он загружен - Проверяет что модули больше не загружены через повторный
lsmod
wget https://raw.githubusercontent.com/selectel/mks-copy-fail-mitigation/refs/heads/main/dirty-flag-copyfail2-mitigation-daemonset.yamlИли клонировать репозиторий:
git clone https://github.com/selectel/mks-copy-fail-mitigation.git
cd mks-copy-fail-mitigationkubectl apply -f dirty-flag-copyfail2-mitigation-daemonset.yaml# Проверить статус DaemonSet
kubectl get daemonset -n kube-system dirty-flag-copyfail2-mitigation
# Получить список подов
kubectl -n kube-system get pods -l app=dirty-flag-copyfail2-mitigation -o wide# Логи initContainer
kubectl -n kube-system logs -l app=dirty-flag-copyfail2-mitigation -c mitigationkubectl delete -f dirty-flag-copyfail2-mitigation-daemonset.yaml