Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
moodle-blackboard-img — Moodle 5.2.3 - 높음 - 원격 - 경로 - Blackboard img src가 가져오기 트리 외부의 파일을 복사함 | Kitploit
도구/GitHubGitHub/abraxas/moodle-blackboard-img
Vulnerability AnalysisExploitationWeb Application ExploitationInformation GatheringWeb SecurityPenetration TestingLabs & Practice
GitHubabraxas/moodle-blackboard-img

moodle-blackboard-img

Moodle 5.2.3 - 높음 - 원격 - 경로 - Blackboard img src가 가져오기 트리 외부의 파일을 복사함

저장소 보기
23일 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Abraxas Labs - moodle-blackboard-img

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  moodle-blackboard-img

moodle-blackboard-img

Moodle LMS 5.2.3 - Moodle

분류: 파일 읽기 도달 범위: 원격

qformat_blackboard_six_base::text_field는 img src를 PARAM_PATH 없이 $this->filebase에 결합합니다. 그런 다음 store_file_for_text_field가 해당 경로를 사용자 초안 파일 영역으로 복사합니다. 같은 계열의 get_filecontent는 이미 clean_param($path, PARAM_PATH)로 격리하고 있습니다. MSA-26-0012는 데이터베이스 활동 가져오기를 PARAM_FILE로 격리했습니다. Blackboard img src는 그 대상에 포함되지 않았습니다.

Blackboard zip을 가져올 수 있는 교사가 <img src="https://raw.githubusercontent.com/html/config.php">를 심습니다. 초안 "이미지"는 config.php입니다. 학생은 가져올 수 없습니다.

ID아직 CVE 없음
CWECWE-22 / CWE-73
CVSSMedium: 6.5 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
제품Moodle
영향 받는 버전5.2.3 태그 v5.2.3 (344232c15336c71b80f9aca8359ce0e0a9f3d116)
인증교사 (문제 은행 / 레슨 Blackboard 가져오기)
라이선스GNU Affero GPL v3.0
랩127.0.0.1 전용

공격자가 할 수 있는 일

작성자: 문제 은행(또는 레슨)에 Blackboard zip을 가져올 수 있는 교사. 일반적인 목표는 PHP 사용자로서의 config.php(DB 비밀번호)입니다. 두 번째 잔여 취약점을 연쇄하지 않는 한 RCE는 아닙니다. LPE도 아닙니다.

권한메서드 / 싱크정찰 / 무결성 / 가용성랩 검증 또는 추론
img src의 ../를 통해 PHP 사용자가 열 수 있는 파일 읽기text_field가 $this->filebase . '/' . $path를 결합; store_file_for_text_field가 초안 영역으로 복사정찰 (파일 바이트)랩 검증. 초안 바이트가 /var/www/html/config.php와 일치하며 MOODLE-BLACKBOARD-IMG-WITNESS를 포함
해당 초안을 "이미지"로 다운로드초안 itemid + 재작성된 @@PLUGINFILE@@ 파일명정찰랩 검증. GET /draft가 298바이트를 반환했고 sha256이 config.php와 동일
나중에 가져온 문제를 열 수 있는 사람동일한 초안 / pluginfile정찰추론. 랩은 교사 초안 일치에서 중단됨
학생 가져오기동일한 zip, role=student해당 없음랩 검증 차단됨. HTTP 403 teacher-only
clean_param($path, PARAM_PATH)를 통한 동일 경로가젯 jail=1해당 없음랩 검증 차단됨. 일치 없음, witness 없음, 경로가 filebase 아래에 유지됨
PHP RCE / OS LPE해당 없음해당 없음차단됨. 이 잔여 취약점은 파일 바이트를 초안으로 복사합니다. 실행하지는 않습니다

Blackboard 가져오기가 없는 기본 Moodle은 이 버그에 해당하지 않습니다. MSA-22-0016은 baseurl만 정리했습니다.

동일 핀의 다른 잔여 취약점: enrol_database SQLi, grades feedback IDOR, hidden grade items.

발견 방법

MSA-26-0042/0043 이후 moodle/moodle v5.2.3을 핀했습니다. MSA-26-0012는 데이터베이스 활동 가져오기를 격리했습니다. get_filecontent()는 이미 PARAM_PATH를 알고 있었지만 text_field()는 여전히 원시 결합을 수행했기 때문에 다음으로 Blackboard를 살펴보았습니다.

이미 기록된 잘못된 방향: 학생 가져오기를 유출로 간주(403임); 복사된 파일이 PHP이기 때문에 RCE라고 부름(초안은 바이트를 저장할 뿐 include하지 않음); MSA-22-0016이 작업을 완료했다고 가정(baseurl만 해당). 리버스 셸. 연극.

랩

핀의 text_field / store_file_for_text_field를 충실히 재현한 가젯이며, 전체 Moodle PHP 앱이 아닙니다. how=gadget.

python3 moodle-blackboard-img-Abraxas-Labs.py

또는

cd lab
./run.sh

오직 http://127.0.0.1:19560만 대상으로 합니다. Compose 프로젝트 moodle-blackboard-img. 실행 후 스택은 해체됩니다.

SUCCESS moodle-blackboard-img how=gadget pin=v5.2.3 teacher-import=yes draft-match-config=yes student=403 param-path-jail=yes MOODLE-BLACKBOARD-IMG-WITNESS

수정 방법

img src에 clean_param($path, PARAM_PATH)를 적용한 다음, realpath가 realpath($this->filebase) 아래에 유지되어야 합니다. get_filecontent()와 동일한 형태입니다.

참고 자료

  • github.com/moodle/moodle 태그 v5.2.3
  • formatbase.php (text_field, store_file_for_text_field)
  • format.php (get_filecontent는 이미 PARAM_PATH를 사용)
  • 인접 패치됨 (이 결합은 아님): MSA-26-0012
  • 동일 핀: moodle-enrol-database-sqli · moodle-grades-feedback-idor · moodle-grades-gradeitems
  • CWE-22

라이선스

GNU Affero GPL v3.0. LICENSE 참조. 루프백 랩 전용. 보증 없음.

도구 다운로드