
# CVE-2026-21436 개념 증명 익스플로잇 Solus OS eopkg 패키지 관리자의 경로 탐색(path traversal) 취약점을 입증하며, 패키지 설치 중 임의 파일 쓰기를 허용합니다.
Solus OS 패키지 관리자인 eopkg <= 4.3.4는 .eopkg 확장자를 가진 패키지 설치 중 패키지 내용에 absolute path를 포함한 파일을 지정된 디렉터리에 직접 기록합니다.
패키지를 특정 디렉터리에 설치하기 위해 사용되는 --destdir 매개변수를 사용하더라도, 패키지 내부의 ../(traversal) 문자를 통해 이 제한을 우회할 수 있으며, 공격자가 준비한 파일을 시스템의 임의 디렉터리에 기록할 수 있습니다. eopkg 도구가 패키지 설치 중 root 권한으로 실행되기 때문에, 시스템의 기존 파일을 덮어쓰는 것도 가능합니다.
취약점이 발생하는 원인은 eopkg가 패키지를 추출할 때 Python의 .extract() 메서드와 filter 매개변수를 사용하지 않거나, 어떤 방식으로든 파일 경로를 검증하지 않기 때문입니다.
$ git clone https://github.com/osmancanvural/CVE-2026-21436/
$ cd CVE-2026-21436
.eopkg 확장자를 가진 파일을 다운로드합니다.install.tar.xz 아카이브 내용을 폴더에 추출합니다.tarcontent$ python3 archiveCreator.py
malicious-install.tar.xz 파일의 이름을 install.tar.xz로 변경하고 원본 패키지 내부의 파일과 교체합니다./tmp/hello.txt 파일이 생성된 것을 확인할 수 있습니다.참고: 대상 디렉터리와 파일 내용을 변경하려면 archiveCreator.py 파일과 tarcontent 폴더를 편집할 수 있습니다.