
Заметки исследования и proof-of-concept для CVE-2026-31431 в ядре Linux, документирующие ошибку повреждения page cache в AF_ALG splice() с исходными артефактами и диаграммой.
Этот репозиторий содержит очищенную техническую диаграмму и вспомогательные заметки об уязвимости ядра Linux, обычно называемой Copy Fail и отслеживаемой как CVE-2026-31431.
Назначение этого материала:
AF_ALG, algif_aead, splice(), страницами, поддерживаемыми файлами, и повреждением page cache;Этот репозиторий не является руководством по эксплуатации.
На практике репозиторий расширяет и документирует исходный минимизированный публичный proof-of-concept copy.fail в более удобной для проверки неминифицированной форме, включая вариант, ориентированный на C++ бинарные файлы. Включённые материалы предназначены только для 64-битных систем.
На высоком уровне проблема связана с ошибочной обработкой на месте в пути algif_aead.
Важная концептуальная цепочка выглядит так:
AF_ALG;algif_aead;splice();Ключевой аналитический момент — расхождение между:

copyfail.cpp — исследовательский исходный артефакт на C++copyfail.py — исследовательский исходный артефакт на Pythoncopyfail — скомпилированный бинарный артефакт на C++Репозиторий также включает скомпилированный бинарный артефакт на C++, собранный из исходного файла на C++. Пример команды сборки:
g++ -Os -s copyfail.cpp -lz -o copyfail
Этот репозиторий предоставлен только для защитных исследований, документации и образовательного анализа.
Не используйте его для воздействия на реальные системы, изменения привилегированных исполняемых файлов или получения несанкционированного доступа.