Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
cve-2026-31431-algif-aead-remediator — Kubernetes DaemonSet для обнаружения и устранения CVE-2026-31431 (GHSA-2274-3hgr-wxv6) — LPE в algif_aead через чёрный список modprobe | Kitploit
Инструменты/GitHubGitHub/boliu83/cve-2026-31431-algif-aead-remediator
Безопасность облачной инфраструктурыОборонительные ИнструментыБезопасность контейнеровАнализ уязвимостейАудит конфигурацииРеагирование на Инциденты
GitHubboliu83/cve-2026-31431-algif-aead-remediator

cve-2026-31431-algif-aead-remediator

Kubernetes DaemonSet для обнаружения и устранения CVE-2026-31431 (GHSA-2274-3hgr-wxv6) — LPE в algif_aead через чёрный список modprobe

Репозиторий
3 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

CVE-2026-31431 / GHSA-2274-3hgr-wxv6 — Средство устранения уязвимости algif_aead

Серьёзность: Высокая (CVSS 7.8 — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H)

Общие сведения

CVE-2026-31431 — это локальная уязвимость повышения привилегий в модуле algif_aead ядра Linux (интерфейс криптографических сокетов AF_ALG AEAD). Непривилегированный локальный пользователь может использовать некорректные операции с буфером на месте для получения полного доступа root. Все пулы узлов AKS, работающие на ядрах Linux до применения соответствующего исправления, потенциально уязвимы.

Модуль algif_aead не требуется для обычных рабочих нагрузок Kubernetes или AKS. Внесение его в чёрный список полностью устраняет поверхность атаки.


Что делает этот DaemonSet

Один под запускается на каждом узле Linux. При запуске, а затем каждые 60 секунд каждый под:

  1. Записывает /etc/modprobe.d/modprobe-CIS.conf на хосте со следующим содержимым:

root@kitploit:~
install algif_aead /bin/false
blacklist algif_aead

Это предотвращает загрузку модуля при перезагрузке или через modprobe.

  • Проверяет /proc/modules (живой список модулей ядра хоста — общий для всех контейнеров) на наличие algif_aead.

  • Помечает узел Kubernetes меткой с результатом, чтобы вы могли выполнять запросы по всему кластеру:

    Значение меткиЗначение
    mitigatedМодуль не загружен; применена конфигурация чёрного списка
    module-loadedМодуль в настоящее время загружен — немедленно проведите расследование

  • Файлы

    ФайлНазначение
    rbac.yamlNamespace, ServiceAccount, ClusterRole (get/patch узлов), ClusterRoleBinding
    configmap.yamlShell-скрипт устранения уязвимости, монтируемый в каждый под
    daemonset.yamlОпределение DaemonSet — один под на узел Linux

    Предварительные требования

    • kubectl, настроенный для целевого кластера AKS
    • Права администратора кластера (требуются для создания ClusterRole и привилегированного namespace)

    Развёртывание

    Примените манифесты по порядку:

    root@kitploit:~
    kubectl apply -f rbac.yaml
    kubectl apply -f configmap.yaml
    kubectl apply -f daemonset.yaml
    

    Дождитесь завершения развёртывания на всех узлах:

    root@kitploit:~
    kubectl -n security-remediation rollout status daemonset/cve-2026-31431-remediator
    

    Проверка

    Просмотр статуса устранения уязвимости на узлах с первого взгляда

    root@kitploit:~
    kubectl get nodes -L vulnerability.aks.io/CVE-2026-31431
    

    Ожидаемый вывод на чистом кластере:

    root@kitploit:~
    NAME                                STATUS   ROLES    AGE   VERSION   CVE-2026-31431
    aks-nodepool1-xxxxx-vmss000000      Ready    <none>   4d    v1.33.7   mitigated
    aks-nodepool1-xxxxx-vmss000001      Ready    <none>   4d    v1.33.7   mitigated
    

    Просмотр журналов конкретного пода

    root@kitploit:~
    # Список подов и назначенных им узлов
    kubectl -n security-remediation get pods -o wide
    
    # Просмотр журналов конкретного пода в реальном времени
    kubectl -n security-remediation logs <pod-name> -f
    

    Ожидаемый вывод журнала:

    root@kitploit:~
    2026-05-01T01:33:36Z [INFO    ] CVE-2026-31431 remediator starting on node: aks-nodepool1-...
    2026-05-01T01:33:36Z [INFO    ] Blacklist config written → /host/etc/modprobe.d/modprobe-CIS.conf
    2026-05-01T01:33:36Z [INFO    ] Node aks-nodepool1-...: 'algif_aead' is NOT loaded — blacklist config applied, node is mitigated.
    2026-05-01T01:33:36Z [INFO    ] Labeled node aks-nodepool1-...: vulnerability.aks.io/CVE-2026-31431=mitigated
    2026-05-01T01:33:36Z [INFO    ] Entering monitoring loop (interval: 60s)
    

    Проверка записи конфигурации modprobe на хосте

    root@kitploit:~
    kubectl -n security-remediation exec <pod-name> -- cat /host/etc/modprobe.d/modprobe-CIS.conf
    

    Ожидаемое содержимое:

    root@kitploit:~
    # CIS hardening – mitigate CVE-2026-31431 (GHSA-2274-3hgr-wxv6)
    # Prevents algif_aead (AF_ALG AEAD) LPE from being loaded or exploited.
    install algif_aead /bin/false
    blacklist algif_aead
    

    Предупреждение: узлы с загруженным модулем

    Если узел показывает module-loaded, модуль ядра в настоящее время активен, и узел может быть уже скомпрометирован. Немедленно изолируйте (cordon) и осушите (drain) узел для криминалистического анализа:

    root@kitploit:~
    # Поиск затронутых узлов
    kubectl get nodes -l vulnerability.aks.io/CVE-2026-31431=module-loaded
    
    # Изоляция и осушение для расследования
    kubectl cordon <node-name>
    kubectl drain <node-name> --ignore-daemonsets --delete-emptydir-data
    

    Удаление

    Примечание: Удаление DaemonSet не удаляет файл /etc/modprobe.d/modprobe-CIS.conf с узлов хоста. Этот файл намеренно оставляется на месте как постоянная мера укрепления ядра.

    Удаление ресурсов Kubernetes

    root@kitploit:~
    kubectl delete -f daemonset.yaml
    kubectl delete -f configmap.yaml
    kubectl delete -f rbac.yaml
    

    Это удаляет DaemonSet, все его поды, ConfigMap, ServiceAccount, ClusterRole, ClusterRoleBinding и namespace.

    Удаление меток узлов (необязательно)

    root@kitploit:~
    kubectl label nodes --all vulnerability.aks.io/CVE-2026-31431-
    

    Удаление конфигурации modprobe с узлов (не рекомендуется)

    Делайте это только в том случае, если у вас есть альтернативная мера устранения (исправленное ядро). Выполните на каждом узле или через привилегированный под:

    root@kitploit:~
    rm -f /etc/modprobe.d/modprobe-CIS.conf
    

    Замечания по безопасности

    • Под запускается от имени root (runAsUser: 0) — это требуется для записи в /etc/modprobe.d/ на хосте.
    • Все возможности Linux отозваны (capabilities.drop: ["ALL"]). Возможности ядра не требуются.
    • Основной контейнер работает с readOnlyRootFilesystem: true. Записываемыми являются только смонтированные тома hostPath и emptyDir.
    • С хоста монтируется только /etc/modprobe.d/ — не /etc, /proc или любой другой более широкий путь.
    • Бинарный файл curl и его общие библиотеки размещаются init-контейнером в emptyDir (/tools), чтобы основной контейнер мог обращаться к API Kubernetes без необходимости записи в rootfs.
    • Сервисная учётная запись имеет минимальные необходимые разрешения RBAC: только get и patch на nodes.
    Скачать инструмент