CVE-2026-31431(Copy Fail)은 Linux 커널의 authencesn 암호화 템플릿에 존재하는 로직 버그로, 비권한(unprivileged) 로컬 사용자가 시스템 내 임의의 읽기 가능한 파일의 페이지 캐시(page cache)에 제어된 4바이트 쓰기를 수행할 수 있는 취약점이다. 이를 통해 setuid 바이너리를 변조해 root 권한을 획득하는 것이 가능하며, 디스크 쓰기·inotify 트리거·레이스 컨디션 없이 단일 시도로 성공한다.
익스플로잇은 732바이트의 Python 스크립트 하나로 구성되며, Ubuntu·Amazon Linux·RHEL·SUSE 등 2017년 이후 출시된 모든 주요 Linux 배포판에서 동일하게 동작한다. 버전별 오프셋 조정, 재컴파일, 버전 체크 없이 실행 가능하다는 점에서 기존 LPE(Local Privilege Escalation)와 구별된다.
| 취약점 | 상세내용 |
|---|---|
| 취약점 공개일 | 2026년 4월 22일 |
| 취약점 점수 | CVSS 3.1: 7.8 (High) |
| 설명 | Linux 커널 algif_aead의 in-place 암호화 최적화 로직 결함으로, 인증 태그 검사 실패 전에 page cache 쓰기가 먼저 발생 |
| 취약점 영향 제품 | Linux kernel 4.14 ~ 6.18.21 / 6.19.11 (2017년 커밋 72548b093ee3 도입 이후 전 배포판) |
| 악용 사례 | 공개 PoC 존재 (GitHub: theori-io/copy-fail-CVE-2026-31431). |
| 현재까지 실제 악용 사례는 미확인 |
| 날짜 | 이벤트 |
|---|---|
| 📍 2017 | 취약한 커밋 72548b093ee3 도입 — algif_aead in-place 최적화 적용 |
| 📍 2026-04-22 | CVE-2026-31431 공식 등록 및 커널 패치 커밋 a664bf3d603d 메인라인 병합 |
| 📍 2026-04-29 | Theori Xint 팀 공개 공시 — xint.io 기술 분석 및 732바이트 PoC 릴리즈 |
| 📍 2026-04-29~30 | Ubuntu, RHEL, Amazon Linux, SUSE 등 주요 배포판 패치 배포 시작 |
커널 로그 / 시스템 콜 모니터링
AF_ALG 소켓을 비권한 프로세스가 사용하는 비정상적인 패턴 탐지splice() + authencesn(hmac(sha256),cbc(aes)) 조합 호출 감지EBADMSG 에러 반환 직후 algif_aead 관련 커널 로그 이상 항목 확인파일 무결성 모니터링 (FIM)
/bin/su, /usr/bin/sudo 등) 해시값 변경 탐지