
CVE-2023-0386에 대한 개념 증명 익스플로잇으로, Linux OverlayFS 로컬 권한 상승 취약점입니다. 복사-업(copy-up) 과정에서 잘못된 파일 기능 처리로 인해 권한이 없는 사용자가 루트 액세스 권한을 얻을 수 있음을 보여줍니다.
이 저장소는 CVE-2023-0386에 대한 개념 증명(PoC)을 제공합니다: https://nvd.nist.gov/vuln/detail/CVE-2023-0386
팀원: Bǎnicǎ Dragoș-Marius 및 Borsos Matheas-Roland
다음은 동영상입니다: https://www.youtube.com/watch?v=Ikux1rjIYP0
이 저장소는 Linux 커널 OverlayFS 하위 시스템의 로컬 권한 상승 취약점인 CVE-2023-0386에 대한 개념 증명(PoC) 익스플로잇을 포함합니다.
이 취약점은 로컬의 권한이 없는 사용자가 OverlayFS copy-up 작업 중 파일 기능(capabilities) 및 소유권의 잘못된 처리를 악용하여 권한을 root로 상승시킬 수 있게 합니다. PoC는 신중하게 조작된 OverlayFS 설정이 nosuid 마운트에서 복사된 경우에도 상승된 권한을 유지하는 실행 파일을 생성할 수 있음을 보여줍니다.
OverlayFS는 여러 디렉터리 트리를 단일 통합 뷰로 결합하는 유니온 파일 시스템입니다. 주로 다음에서 사용됩니다:
OverlayFS는 다음으로 구성됩니다:
하위 계층의 파일이 수정되면 OverlayFS는 copy-up 작업을 수행합니다: 파일이 상위 계층으로 복사된 후 그곳에서 수정됩니다.
취약점은 OverlayFS가 copy-up 중 파일 메타데이터를 처리하는 방식에 있으며, 특히 다음을 포함합니다:
CAP_SETUID)nosuid 마운트 옵션과의 상호 작용영향을 받는 커널 버전에서:
nosuid 하위 계층에서 파일을 복사할 때 기능을 제대로 제거하지 못합니다.이는 nosuid 마운트가 권한 상승을 방지한다는 보안 가정을 깨뜨립니다.
CVE-2023-0386_POC/
├── exp.c # Main exploit logic
├── fuse.c # User-space filesystem helper (FUSE)
├── getshell.c # Privilege escalation payload
├── ovlcap/ # OverlayFS capability test utilities
│ ├── Makefile
│ └── ...
├── Makefile # Top-level build instructions
└── README.md
nosuid 하위 계층을 시뮬레이션합니다.gccmakelibfuse-dev (또는 동등 패키지)libcap-dev (또는 동등 패키지)git clone https://github.com/dragosbanica/CVE-2023-0386_POC.git
cd CVE-2023-0386_POC
make all
두 개의 터미널을 열고 첫 번째 터미널에 다음을 입력하세요:
./fuse ./ovlcap/lower ./gc
두 번째 터미널에 다음을 입력하세요:
./exp