
# Copy Fail Linux 로컬 권한 상승 익스플로잇 (CVE-2026-31431)의 클린 C 구현 AF_ALG와 splice를 사용하여 /usr/bin/su의 페이지 캐시를 루트용 setuid 셸코드로 덮어쓰는 방식입니다. 교육용 PoC입니다.
Copy Fail(CVE-2026-31431)의 깔끔한 C 버전 - AF_ALG + authencesn + splice 프리미티브를 사용하는 Linux 로컬 권한 상승 익스플로잇. /usr/bin/su의 페이지 캐시를 소형 setuid 셸코드로 덮어써서 루트 권한을 획득합니다. 교육용 개념 증명(PoC)입니다.
Copy Fail Linux 로컬 권한 상승 취약점(CVE-2026-31431)의 깔끔하고 읽기 쉬운 C 구현입니다.
원본 축소형(minified) Python 익스플로잇의 포트입니다.
경고: 이는 교육 및 연구 목적의 개념 증명(PoC)입니다. 소유한 시스템이나 명시적 테스트 허가를 받은 시스템에서만 사용하세요.
AF_ALG + authencesn + splice() 프리미티브 사용이 익스플로잇은 Linux 커널의 암호화 서브시스템(algif_aead)의 논리적 결함을 악용합니다. 이를 통해 권한이 없는 사용자가 읽기 가능한 파일(예: /usr/bin/su)의 페이지 캐시에 제어된 4바이트를 쓸 수 있습니다.
/usr/bin/su의 메모리 내 복사본을 루트 셸을 생성하는 소형 setuid 셸코드로 덮어씁니다.
git clone https://github.com/beatbeast007/Linux-CopyFail-C-Version-CVE-2026-31431
cd Linux-CopyFail-C-Version-CVE-2026-31431bash
make
sudo ./copyfail
gcc src/copyfail.c -o copyfail -lz -Wall -Wextra -O2
./copyfail
이 익스플로잇은 페이지 캐시(메모리 내)만 수정합니다. 재부팅하면 원래 바이너리가 복원됩니다. 실행 시 /usr/bin/su가 일시적으로 덮어써집니다. 가능한 한 빨리 커널을 패치하세요(배포판 보안 업데이트 확인).
공식 분석 문서: https://xint.io/blog/copy-fail-linux-distributions 원본 Python PoC: https://github.com/theori-io/copy-fail-CVE-2026-31431
이 저장소는 교육 목적으로만 제공됩니다. 오용에 대한 책임은 지지 않습니다.
MIT 라이선스