
이 스크립트는 이론적인 sudo 취약점(예: CVE-2025-32463)을 악용하여 권한 상승(Privilege Escalation) 기법을 시연하는 개념 증명(PoC)입니다. 해당 PoC는 -R(chroot) 기능과 사용자 지정 NSS 구성(nsswitch.conf)을 악용하여 sudo가 조작된 .so 라이브러리를 로드하도록 강제합니다.
이 스크립트는 'sudo'의 이론적 취약점(예: CVE-2025-32463)을 악용하는 권한 상승(privilege escalation) 기법을 시연하는 개념 증명(PoC)입니다.
이 PoC는 '-R'(chroot) 기능과 사용자 정의 nsswitch.conf 설정을 악용하여 'sudo'가 조작된 .so 라이브러리를 로드하도록 강제합니다.
주의: 이 스크립트는 연구 목적 또는 통제된 환경에서의 테스트 용도로만 사용하십시오. 프로덕션 시스템이나 소유하지 않거나 관리하지 않는 머신에서 실행해서는 안 됩니다.
원본 스크립트 대비 주요 변경 사항은 .so 라이브러리를 base64 형식으로 스크립트 내부에 직접 통합한 것입니다.
이전: .so 라이브러리는 파일 시스템에 외부 파일로 존재해야 했으며 다음 명령으로 복사되었습니다: cp "$SCRIPT_DIR/woot1337.so.2" libnss_/woot1337.so.2
현재: .so 라이브러리는 텍스트(base64) 형식으로 스크립트에 포함되어 있으며, 실행 시 임시 파일 시스템에 동적으로 기록됩니다:
cat << 'EOF' | base64 -d > libnss_/woot1337.so.2
(base64 내용)
EOF
스크립트는 다음과 같은 구조를 생성합니다:
/tmp/sudowoot.stage.xxxxxx/ ├── woot/ │ └── etc/ │ ├── nsswitch.conf (조작된 설정) │ └── group (/etc/group의 복사본) └── libnss_/ └── woot1337.so.2 (base64에서 디코딩된 .so 라이브러리)
스크립트를 실행 가능하게 만들려면:
chmod +x sudo-chwoot.sh
표준 실행:
./sudo-chwoot.sh
- 루트 셸을 시작합니다(익스플로잇이 성공한 경우)
명령어와 함께 실행:
./sudo-chwoot.sh id
- 'id'를 루트로 실행합니다(익스플로잇이 성공한 경우)
사용자 정의 .so 라이브러리를 스크립트에 통합하려면 먼저 base64로 변환하십시오:
base64 woot1337.so.2 > woot1337.so.2.b64
그런 다음 .b64 파일의 내용을 스크립트의 다음 섹션에 붙여넣으십시오:
cat << 'EOF' | base64 -d > libnss_/woot1337.so.2
(여기에 base64 내용 붙여넣기)
EOF
NSS와 chroot를 통해 동적으로 로드되는 .so 라이브러리를 사용하면 권한이 상승된 상태에서 임의 코드가 실행될 수 있습니다. 이러한 유형의 익스플로잇은 테스트 환경에서만 사용해야 하며, 명시적인 허가 없이 실제 시스템에서 사용해서는 안 됩니다.
이 스크립트는 교육 및 연구 목적으로만 제공됩니다. 저자는 코드의 부적절한 사용이나 발생할 수 있는 어떠한 손해에 대해서도 책임을 지지 않습니다. 인지와 허가를 바탕으로 실험실 환경에서만 사용하십시오.