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

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

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

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

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

Категории

Все категории
Loading categories
copy-fail-CVE-2026-31431-detection-probe — Инструментарий для безопасного обнаружения CVE-2026-31431 "Copy Fail" и CVE-2026-43284 "Dirty Frag" — локальное повышение привилегий в модуле algif_aead ядра Linux, затрагивающее все основные дистрибутивы с 2017 года. | Kitploit
Инструменты/GitHubGitHub/ochebotar/copy-fail-cve-2026-31431-detection-probe
Повышение привилегийСканеры уязвимостейАнализ уязвимостейЭксплуатацияАудит конфигурацииDevSecOpsРазведка угрозОбучение и ОбразованиеРеагирование на Инциденты

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
Подобранные Ресурсы
GitHubochebotar/copy-fail-cve-2026-31431-detection-probe

copy-fail-CVE-2026-31431-detection-probe

Инструментарий для безопасного обнаружения CVE-2026-31431 "Copy Fail" и CVE-2026-43284 "Dirty Frag" — локальное повышение привилегий в модуле algif_aead ядра Linux, затрагивающее все основные дистрибутивы с 2017 года.

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

Linux Kernel LPE Probe Suite — Copy Fail и Dirty Frag

License: MIT CVE-2026-31431 CVE-2026-43284 CVE-2026-43500 CVSS Shell

Безопасные средства обнаружения для двух семейств уязвимостей локального повышения привилегий в ядре Linux — Copy Fail (CVE-2026-31431) и Dirty Frag (CVE-2026-43284 / CVE-2026-43500) — обе затрагивают все основные дистрибутивы с 2017 года, обе могут быть эксплуатированы любым непривилегированным локальным пользователем, и обе требуют независимых мер смягчения.

Эти проверки не открывают сокетов и не выполняют криптографических или сетевых операций. Обнаружение основано исключительно на версии ядра, метаданных пакетов дистрибутива, состоянии модулей и активных флагах смягчения — все данные доступны для чтения без sudo.


⚠️ Важно: две отдельные уязвимости

Применение смягчения Copy Fail НЕ защищает от Dirty Frag. Обе проверки должны быть запущены, и оба смягчения должны быть применены независимо.


Файлы

root@kitploit:~
.
├── cve-2026-31431-check.sh          Copy Fail probe (all output modes)
├── copy_fail_userparameter.conf     Zabbix agent UserParameter — Copy Fail
├── zabbix_template_copy_fail.yaml   Zabbix 6.4 template — Copy Fail
├── copy_fail_auditd.rules           auditd behavioral detection — Copy Fail
├── cve-2026-43284-check.sh          Dirty Frag probe (all output modes)
├── dirty_frag_userparameter.conf    Zabbix agent UserParameter — Dirty Frag
├── wazuh_sca/
│   └── copy_fail_sca.yml            Wazuh SCA compliance policy
└── ansible/
    └── copy_fall_scan.yml           Fleet-wide Ansible scan playbook

CVE-2026-31431 — Copy Fail

Предыстория

Для эксплуатации требуется следующая цепочка системных вызовов:

root@kitploit:~
socket(AF_ALG, SOCK_SEQPACKET, 0)
bind(fd, {alg_type="aead", alg_name="authencesn(hmac(sha256),cbc(aes))"})
accept(fd, ...)
splice(suid_binary_fd, op_fd)   ← page cache fed into crypto subsystem
sendmsg / recvmsg               ← 4-byte scratch write lands in page cache

Ни один из этих вызовов не затрагивается проверкой. Обнаружение основано на:

  1. Диапазон версий ядра — регрессия в 4.14–6.17; исправлено в 6.18.22 / 6.19.12 / 6.20+
  2. Версия пакета дистрибутива — обнаружение бэкпортов вендора с известными порогами исправлений
  3. Состояние модуля — загружен, отсутствует, встроен или .ko на диске (автоматически загружаемый)
  4. Активные меры смягчения — черный список modprobe.d и флаг командной строки initcall_blacklist

Быстрый запуск

root@kitploit:~
chmod +x cve-2026-31431-check.sh
./cve-2026-31431-check.sh           # human-readable
./cve-2026-31431-check.sh --json    # machine-readable
./cve-2026-31431-check.sh --nagios  # Nagios/Icinga/NRPE
./cve-2026-31431-check.sh --zabbix  # integer 0/1/2 for Zabbix item

Коды возврата: 0 = ЗАПЛАЧЕНО или СМЯГЧЕНО · 1 = УЯЗВИМО · 2 = НЕИЗВЕСТНО

Исправленные версии пакетов

Скрипт автоматически сравнивает с этими порогами и устанавливает вердикт «ЗАПЛАЧЕНО», когда текущий пакет соответствует порогу или превышает его.

Семейство RHEL: особенность встроенного модуля

На RHEL, AlmaLinux, Rocky Linux и их производных модуль algif_aead встроен в ядро. Обходной путь через modprobe.d не действует. Работает только initcall_blacklist=algif_aead_init в параметрах командной строки ядра. Проверка обнаруживает это и явно предупреждает.

root@kitploit:~
grubby --update-kernel=ALL --args="initcall_blacklist=algif_aead_init"
reboot

CVE-2026-43284 / CVE-2026-43500 — Dirty Frag

Предыстория

Dirty Frag объединяет две ошибки быстрого пути дешифрования на месте, обнаруженные Hyunwoo Kim (@v4bel), раскрытые ~2026-05-07, через неделю после Copy Fail:

  • CVE-2026-43284 — xfrm-ESP быстрый путь (esp4, esp6); исправление upstream f4c50a4034e6
  • CVE-2026-43500 — RxRPC быстрый путь (rxrpc); исправление upstream aa54b1d27fe0

Эксплойт присоединяет страницы pipe из кеша страниц /usr/bin/su в качестве фрагментов буфера сокета, затем запускает дешифрование на месте с помощью выбранного атакующим ключа — записывая произвольные байты непосредственно в кешированную копию setuid-бинарника, не затрагивая файл на диске.

Смягчение Copy Fail (черный список algif_aead) НЕ предотвращает Dirty Frag.

Быстрый запуск

root@kitploit:~
chmod +x cve-2026-43284-check.sh
./cve-2026-43284-check.sh           # human-readable
./cve-2026-43284-check.sh --json    # machine-readable
./cve-2026-43284-check.sh --nagios  # Nagios/Icinga/NRPE
./cve-2026-43284-check.sh --zabbix  # integer 0/1/2 for Zabbix item

Проверка независимо проверяет esp4, esp6 и rxrpc и сообщает отдельные булевы значения cve_43284_safe / cve_43500_safe в JSON-выводе.

Предупреждение IPsec

esp4 и esp6 — это преобразования ESP на стороне ядра, используемые IPsec (strongSwan, Libreswan). Внесение их в черный список нарушает работу IPsec-туннелей. Проверка обнаруживает активное использование IPsec через ip xfrm state и обнаружение демонов, и соответствующим образом корректирует рекомендации по устранению:

  • Нет IPsec: примените полный черный список modprobe.d для всех трёх модулей.
  • IPsec используется: ограничьте непривилегированные пространства имён пользователей (блокирует ESP-путь; также отдельно внесите rxrpc в черный список, если он не нужен):
    root@kitploit:~
    # RHEL-family
    sysctl -w user.max_user_namespaces=0
    echo "install rxrpc /bin/false" >> /etc/modprobe.d/dirtyfrag.conf
    
    # Ubuntu / Debian
    sysctl -w kernel.unprivileged_userns_clone=0
    echo "install rxrpc /bin/false" >> /etc/modprobe.d/dirtyfrag.conf
    

Исправленные версии пакетов

ДистрибутивCVE-2026-43284CVE-2026-43500 (rxrpc)
RHEL / Rocky / Alma 8.104.18.0-553.123.2.el8_10N/A — rxrpc не поставляется на RHEL 8
RHEL / Rocky / Alma 9.x

Для систем, ожидающих исправленное ядро, немедленно примените черный список modprobe.d (с учетом оговорки об IPsec).

RHEL 8 / rxrpc

AlmaLinux / RHEL 8 вообще не собирает модуль rxrpc. Проверка автоматически помечает kernel_vuln_rxrpc=not_affected на RHEL/Rocky/Alma 8.x.


Интеграции мониторинга

Zabbix

Разверните обе проверки на каждом контролируемом хосте:

root@kitploit:~
mkdir -p /etc/zabbix/scripts
install -m 750 -o zabbix -g zabbix cve-2026-31431-check.sh /etc/zabbix/scripts/
install -m 750 -o zabbix -g zabbix cve-2026-43284-check.sh /etc/zabbix/scripts/

cp copy_fail_userparameter.conf /etc/zabbix/zabbix_agentd.d/
cp dirty_frag_userparameter.conf /etc/zabbix/zabbix_agentd.d/
systemctl restart zabbix-agent   # or zabbix-agent2

Импортируйте zabbix_template_copy_fail.yaml через Configuration → Templates → Import.

Предоставляемые элементы UserParameter:

Шаблон Copy Fail включает триггер HIGH при status=1, WARNING при status=2. sudo не требуется — все файлы, читаемые обоими скриптами, доступны для чтения всем.

Nagios / Icinga / NRPE

root@kitploit:~
install -m 755 cve-2026-31431-check.sh /usr/lib/nagios/plugins/
install -m 755 cve-2026-43284-check.sh /usr/lib/nagios/plugins/

# NRPE — add to /etc/nagios/nrpe.cfg:
command[check_copy_fail]=/usr/lib/nagios/plugins/cve-2026-31431-check.sh --nagios
command[check_dirty_frag]=/usr/lib/nagios/plugins/cve-2026-43284-check.sh --nagios

# CheckMK local checks:
echo '#!/bin/bash
OUT=$(/usr/lib/nagios/plugins/cve-2026-31431-check.sh --nagios); RC=$?
echo "$RC CVE-2026-31431 - $OUT"' > /usr/lib/check_mk_agent/local/copy_fail

echo '#!/bin/bash
OUT=$(/usr/lib/nagios/plugins/cve-2026-43284-check.sh --nagios); RC=$?
echo "$RC CVE-2026-43284 - $OUT"' > /usr/lib/check_mk_agent/local/dirty_frag

chmod +x /usr/lib/check_mk_agent/local/copy_fail \
         /usr/lib/check_mk_agent/local/dirty_frag

auditd — поведенческое / runtime обнаружение

Обнаруживает активную попытку эксплуатации в процессе, дополняя обе статические проверки.

root@kitploit:~
cp copy_fail_auditd.rules /etc/audit/rules.d/
augenrules --load

# Watch for unexpected AF_ALG callers:
ausearch -k copy_fail_af_alg --interpret | \
    grep -v -E 'cryptsetup|veritysetup|systemd-crypt|kcapi'

Заготовки правил Wazuh (уровень 13 / 15) встроены в комментарии файла .rules.

Wazuh SCA

root@kitploit:~
cp wazuh_sca/copy_fail_sca.yml /var/ossec/etc/shared/default/
/var/ossec/bin/agent_control -r -a

Результаты: Security → SCA → Filter by policy cve_2026_31431_copy_fail

Ansible — массовое сканирование

root@kitploit:~
ansible-playbook -i inventory/hosts ansible/copy_fall_scan.yml
# Limit to a subset:
ansible-playbook -i inventory/hosts ansible/copy_fall_scan.yml --limit webservers

Записывает JSON для каждого хоста + summary.txt в /tmp/copy_fail_results/ на управляющем узле. Плейбук завершается с ненулевым кодом, если любой хост УЯЗВИМ.


Трекеры безопасности вендоров


Ссылки

Copy Fail

  • Оригинальная статья Xint/Theori
  • Уведомление CERT-EU 2026-005
  • NVD CVE-2026-31431
  • Уведомление безопасности Ubuntu USN-8226-1
  • Уведомление Rocky Linux 2026-05-11
  • Ответ SUSE на Copy Fail

Dirty Frag

  • Статья о Dirty Frag (copy.fail)
  • NVD CVE-2026-43284
  • Уведомление AlmaLinux 2026-05-07
  • Анализ обнаружения Dirty Frag от Sysdig TRT
  • Блог Microsoft Security — активная атака
  • Блог Wiz — Dirty Frag
Скачать инструмент
Copy FailDirty Frag
CVECVE-2026-31431CVE-2026-43284 + CVE-2026-43500
Модулиalgif_aeadesp4, esp6, rxrpc
ПоявилсяАвг 2017 (ядро 4.14)Янв 2017 / Июн 2023
Смягчениеmodprobe.d черный список для algif_aeadmodprobe.d черный список для esp4/esp6/rxrpc
Скрипт проверкиcve-2026-31431-check.shcve-2026-43284-check.sh
ДистрибутивИсправлено вУведомление
RHEL / Rocky / Alma 8.10kernel-4.18.0-553.123.1.el8_10Rocky 2026-05-11
RHEL / Rocky / Alma 9.7kernel-5.14.0-611.54.1.el9_7same
RHEL / Rocky / Alma 10.1kernel-6.12.0-124.55.1.el10_1same
Debian 11 (bullseye)linux 5.10.251-3DLA-4560-1
Debian 12 (bookworm)linux 6.1.170-1DSA-6243-1
Debian 13 (trixie)linux 6.12.85-1DSA-6238-1
Ubuntu 22.04 / 24.04Нет исправленного ядра на данный момент — смягчение kmod через USN-8226-1USN-8226-1
SLES 12 SP5kernel-default 4.12.14-122.299.1SUSE-SU-2026:1669-1
SLES 15 SP5kernel-default 5.14.21-150500.55.144.1SUSE-SU-2026:1670-1
SLES 15 SP6kernel-default 6.4.0-150600.23.92.1SUSE-SU-2026:1671-1
SLES 15 SP7kernel-default 6.4.0-150700.53.40.1SUSE-SU-2026:1669-1
SLES 16.0kernel-default 6.12.0-160000.29.1SUSE advisory
Ожидается
Ожидается
Debian / Ubuntu / SLESОжидаетсяОжидается
КлючТипЗначение
copy_fail.statusint0=безопасно · 1=уязвимо · 2=неизвестно
copy_fail.detailstrЧеловекочитаемый вердикт Copy Fail
dirty_frag.statusint0=безопасно · 1=уязвимо · 2=неизвестно
dirty_frag.detailstrЧеловекочитаемый вердикт Dirty Frag
ДистрибутивCopy FailDirty Frag
Ubuntuubuntu.com/security/CVE-2026-31431ubuntu.com/security/CVE-2026-43284
Debiansecurity-tracker…CVE-2026-31431security-tracker…CVE-2026-43284
RHEL / Alma / Rockyaccess.redhat.com…CVE-2026-31431access.redhat.com…CVE-2026-43284
Amazon Linuxalas.aws…CVE-2026-31431alas.aws…CVE-2026-43284
SUSEsuse.com…CVE-2026-31431suse.com…CVE-2026-43284