
Python용 CVE-2026-31431 개념 증명(PoC)으로, 커널 AF_ALG를 악용하여 SUID 바이너리 페이지 캐시를 수정하고 Linux 시스템에서 루트 셸을 실행합니다.
CVE-2026-31431에 대한 Python PoC로, 승인된 Linux 시스템에서 통제된 실험실 테스트를 위해 제작되었습니다.
자체 환경, 실험실 또는 명시적 허가를 받은 시스템에서만 사용하십시오. 제3자 시스템에 대해 이 코드를 실행하지 마십시오.
copy-fail.py는 커널 AF_ALG 인터페이스를 통해 algif_aead를 사용할 수 있는지 확인하고, 시스템이 이 PoC에서 테스트하는 기법과 호환되는 경우 대상 SUID 바이너리의 페이지 캐시를 수정하여 대화형 PTY 셸을 실행하려고 시도합니다.
이 스크립트에는 다음 아키텍처용 페이로드가 포함되어 있습니다:
x86_64i686aarch64
AF_ALG 및 algif_aead에 대한 커널 지원./usr/bin/su입니다.외부 Python 종속성은 필요하지 않습니다. 스크립트는 표준 라이브러리 모듈만 사용합니다.
도움말 표시:
python3 copy-fail.py --help
기본 대상(/usr/bin/su)으로 실행:
python3 copy-fail.py
다른 SUID 바이너리를 대상으로 사용:
python3 copy-fail.py --target /usr/bin/newgrp
root로 특정 명령 실행:
python3 copy-fail.py --exec /bin/bash
자동 터미널 설정 비활성화:
python3 copy-fail.py --no-setup
프로젝트 버전 표시:
python3 copy-fail.py --version
기본 흐름을 실행하기 전에 스크립트는 다음으로 AF_ALG 소켓을 생성하고 바인딩하려고 시도합니다:
authencesn(hmac(sha256),cbc(aes))
algif_aead를 사용할 수 없으면 프로그램은 계속하지 않고 종료됩니다.
테스트 스위트는 --help 및 --version과 같은 비활성 CLI 경로만 다룹니다. PoC 흐름을 실행하지 않습니다.
python3 -m unittest discover -s tests
copy-fail.py: 완전한 PoC 구현 및 CLI.tests/test_cli.py: 안전한 CLI 스모크 테스트.SECURITY.md: 보안 정책 및 보고 범위.DISCLAIMER.md: 승인된 사용 고지.CHANGELOG.md: 릴리스 기록.CONTRIBUTING.md: 기여 지침.LICENSE: MIT 라이선스.MIT 라이선스 — Copyright (c) 2026 Juguitos
CVE-2026-31431에 대한 Python PoC로, 승인된 Linux 시스템에서 통제된 실험실 테스트를 위해 제작되었습니다.
자체 환경, 실험실 또는 명시적 허가를 받은 시스템에서만 사용하십시오. 제3자 시스템에 대해 이 코드를 실행하지 마십시오.
copy-fail.py는 커널 AF_ALG 인터페이스를 통해 algif_aead를 사용할 수 있는지 확인하고, 시스템이 이 PoC에서 테스트하는 기법과 호환되는 경우 대상 SUID 바이너리의 페이지 캐시를 수정하여 대화형 PTY 셸을 실행하려고 시도합니다.
이 스크립트에는 다음 아키텍처용 페이로드가 포함되어 있습니다:
x86_64i686aarch64
AF_ALG 및 algif_aead에 대한 커널 지원./usr/bin/su입니다.외부 Python 종속성은 필요하지 않습니다. 스크립트는 표준 라이브러리 모듈만 사용합니다.
도움말 표시:
python3 copy-fail.py --help
기본 대상(/usr/bin/su)으로 실행:
python3 copy-fail.py
다른 SUID 바이너리를 대상으로 사용:
python3 copy-fail.py --target /usr/bin/newgrp
root로 특정 명령 실행:
python3 copy-fail.py --exec /bin/bash
자동 터미널 설정 비활성화:
python3 copy-fail.py --no-setup
프로젝트 버전 표시:
python3 copy-fail.py --version
기본 흐름을 실행하기 전에 스크립트는 다음으로 AF_ALG 소켓을 생성하고 바인딩하려고 시도합니다:
authencesn(hmac(sha256),cbc(aes))
algif_aead를 사용할 수 없으면 프로그램은 계속하지 않고 종료됩니다.
테스트 스위트는 --help 및 --version과 같은 비활성 CLI 경로만 다룹니다. PoC 흐름을 실행하지 않습니다.
python3 -m unittest discover -s tests
copy-fail.py: 완전한 PoC 구현 및 CLI.tests/test_cli.py: 안전한 CLI 스모크 테스트.SECURITY.md: 보안 정책 및 보고 범위.DISCLAIMER.md: 승인된 사용 고지.CHANGELOG.md: 릴리스 기록.CONTRIBUTING.md: 기여 지침.LICENSE: MIT 라이선스.MIT 라이선스 — Copyright (c) 2026 Juguitos
| 옵션 | 설명 |
|---|
-t, --target PATH | 대상 SUID 바이너리. 기본값: /usr/bin/su. |
-e, --exec CMD | root로 실행할 명령. 전체 경로로 제공해야 합니다. |
--no-setup | 자동 터미널 환경 설정을 비활성화합니다. |
--version | 프로젝트 버전을 표시합니다. |
-h, --help | 프로그램 도움말을 표시합니다. |
| 옵션 | 설명 |
|---|
-t, --target PATH | 대상 SUID 바이너리. 기본값: /usr/bin/su. |
-e, --exec CMD | root로 실행할 명령. 전체 경로로 제공해야 합니다. |
--no-setup | 자동 터미널 환경 설정을 비활성화합니다. |
--version | 프로젝트 버전을 표시합니다. |
-h, --help | 프로그램 도움말을 표시합니다. |