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

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

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

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

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

Категории

Все категории
Loading categories
copy-fail-fix — Per-distro mitigation scripts for CVE-2026-31431 ("Copy Fail") Linux kernel LPE. | Kitploit
Инструменты/GitHubGitHub/bryanvine/copy-fail-fix
Анализ уязвимостейСкриптинг и автоматизацияАудит конфигурации
GitHubbryanvine/copy-fail-fix

copy-fail-fix

Per-distro mitigation scripts for CVE-2026-31431 ("Copy Fail") Linux kernel LPE.

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

Популярное

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

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

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

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

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

copy-fail-fix

Скрипты смягчения последствий для каждого дистрибутива для CVE-2026-31431 («Copy Fail») — локального повышения привилегий в Linux-ядре algif_aead, затрагивающего практически все дистрибутивы, выпущенные с 2017 года.

Каждый скрипт либо устанавливает пропатченное ядро из репозиториев вашего дистрибутива (когда оно доступно), либо, если его нет, добавляет в чёрный список уязвимый модуль ядра algif_aead, чтобы путь эксплуатации был закрыт до тех пор, пока вы не перезагрузитесь на исправленное ядро.

TL;DR

Выберите скрипт для вашего дистрибутива, проверьте его, запустите от имени root.

root@kitploit:~
# Ubuntu
sudo bash scripts/ubuntu.sh

# Debian
sudo bash scripts/debian.sh

# RHEL / Rocky / AlmaLinux / CentOS Stream
sudo bash scripts/rhel.sh

# Fedora
sudo bash scripts/fedora.sh

# Arch
sudo bash scripts/arch.sh

# openSUSE Leap / Tumbleweed
sudo bash scripts/opensuse.sh

# Alpine
sudo bash scripts/alpine.sh

# Всё остальное (Gentoo, NixOS, неизменяемые дистрибутивы, ...)
sudo bash scripts/universal.sh

Сначала используйте --check, если хотите предварительный просмотр, который ничего не меняет.

Что делает каждый скрипт

Скрипты для конкретных дистрибутивов выполняют этот алгоритм; universal.sh пропускает шаги 4–5.

  1. Получение прав root. Повторно запускается через sudo, если вы ещё не root.
  2. Подтверждение дистрибутива. Отказывается запускаться на несовместимом хосте, если не указан --force.
  3. Чтение uname -r.
  4. Уже пропатчено? Если PATCHED_KERNEL_VERSION указан для вашего дистрибутива и ваше текущее ядро не ниже него, скрипт удаляет оставшийся файл смягчения и завершает работу.
  5. Доступен патч? Запрашивает ваш пакетный менеджер. Если доступно ядро-кандидат ≥ пропатченной версии, предлагает вам (--yes для пропуска) установить его. После установки вы перезагружаетесь вручную.
  6. Смягчение. Если пропатченное ядро ещё недоступно (или вы отказались), записывает /etc/modprobe.d/cve-2026-31431.conf с blacklist algif_aead и install algif_aead /bin/true, затем проверяет через зонд привязки сокета AF_ALG, что путь эксплуатации закрыт.

Статус патча

PATCHED_KERNEL_VERSION = PENDING означает, что сопровождающие ещё не зафиксировали исправленную версию ядра для этого дистрибутива. Каждая строка обновляется через PR из одной строки.

ДистрибутивПакет ядраПропатченная версияПоследняя проверка
Ubuntu (24.04)linux-image-genericPENDING2026-05-01
Debianlinux-image-amd64PENDING2026-05-01
RHEL / Rocky / AlmakernelPENDING2026-05-01
FedorakernelPENDING2026-05-01
ArchlinuxPENDING2026-05-01
openSUSEkernel-defaultPENDING2026-05-01
Alpinelinux-ltsPENDING2026-05-01

Флаги

ФлагЗначение
-y, --yesНеинтерактивный режим; пропустить запрос на установку ядра.
--forceОбойти проверку несоответствия дистрибутива.
--checkПредварительный просмотр только для чтения; показать, что произойдёт, ничего не меняя.
--undoУдалить /etc/modprobe.d/cve-2026-31431.conf. Используйте после установки пропатченного ядра.
-h, --helpИнформация об использовании.

Ручная проверка смягчения

Скрипты запускают этот зонд автоматически. Чтобы проверить самостоятельно:

root@kitploit:~
python3 - <<'PY'
import socket, errno
try:
    s = socket.socket(socket.AF_ALG, socket.SOCK_SEQPACKET, 0)
    s.bind(("aead", "authencesn(hmac(sha1),cbc(aes))"))
    print("BAD: bind succeeded — host is NOT mitigated")
    s.close()
except OSError as e:
    print(f"OK: bind blocked, errno={e.errno} ({e.strerror})" if e.errno == errno.ENOENT
          else f"INCONCLUSIVE: errno={e.errno}")
PY

Смягчённый или пропатченный хост выводит OK: bind blocked, errno=2 ....

Отмена

После того как ваш дистрибутив опубликует исправленное ядро и вы перезагрузитесь на него, удалите чёрный список modprobe, чтобы приложения, легально использующие AF_ALG aead, снова могли работать:

root@kitploit:~
sudo bash scripts/<ваш-дистрибутив>.sh --undo

Вклад в проект

Когда ваш дистрибутив публикует исправленное ядро:

  1. Отредактируйте одну строку в scripts/<дистрибутив>.sh — установите PATCHED_KERNEL_VERSION на исправленную версию пакета (в формате, который возвращают dpkg-query -W / rpm -q VERSION-RELEASE / pacman -Q).
  2. Обновите соответствующую строку в таблице статуса патчей в этом README.
  3. Откройте PR с заголовком <дистрибутив>: fix shipped in <версия>.

Отказ от ответственности

Инструментарий для смягчения угроз безопасности. Проверяйте любой скрипт, найденный в интернете, прежде чем передавать его в sudo bash. Сопровождающие не несут ответственности в рамках лицензии MIT.

Лицензия

MIT.

Скачать инструмент