
CVE-2025-56399에 대한 PoC - alexusmai/laravel-file-manager (≤3.3.1)에서의 제한 없는 파일 업로드로 인한 RCE. 탐지, CSRF 추출 및 파일 업로드 자동화.
CWE-434: 위험한 유형의 파일 제한 없는 업로드
CVSS 점수: 8.5 (높음)
이 도구는 CVE-2025-56399의 개념 증명(PoC) 을 제공합니다. 이는 alexusmai/laravel-file-manager (버전 ≤ 3.3.1)의 중요한 취약점입니다.
이 취약점은 인증된 공격자가 조작된 파일을 업로드하고, 클라이언트 측 유효성 검사를 우회한 후 PHP 확장자로 이름을 변경하여 원격 코드 실행(RCE) 을 달성할 수 있게 합니다.
이 스크립트는 전체 과정을 자동화합니다:
| 속성 | 값 |
|---|---|
| 취약점 유형 | 제한 없는 파일 업로드 → RCE |
| CWE | CWE-434 |
| CVSS 점수 | 8.5 (높음) |
| 공격 벡터 | 네트워크 |
| 공격 복잡성 | 낮음 |
| 필요 권한 | 낮음 (인증됨) |
| 사용자 상호작용 | 활성 |
/file-manager)에 접근.png 파일 업로드.php로 변경git clone https://github.com/Jenderal92/laravel-filemanager-unrestricted-upload.git
cd laravel-filemanager-unrestricted-upload
pip install -r requirements.txt
요구 사항
· Python 2.7 · requests · colorama
📖 사용법
python2 lfm.py list.txt
입력 형식 (list.txt)
https://target1.com
https://target2.com
http://target3.com
출력
· valid.txt – 검증된 셸 URL 목록 (접근 시 ?shinday=1 추가)
예제 출력:
https://target.com/storage/shxt_123456.php?shinday=1
🧪 익스플로이트 작동 방식
/file-manager/tinymce
· /file-manager/ckeditor
· /file-manager/tinymce5
· /file-manager/summernote
· /admin/file-manager/tinymce
alexusmai/laravel-file-manager의 기본 경로는 /file-manager입니다. 필요한 경우 스크립트의 경로 목록에 추가할 수 있습니다.<meta name="csrf-token"> 또는 _token 입력 필드에서 토큰 추출./file-manager/initialize를 호출하여 디스크 구성 검색..htaccess 업로드 (제한 우회) 후 GIF MIME 유형으로 페이로드(shxt_<타임스탬프>.php) 업로드.?shinday=1이 문자열 Shinday를 반환하는지 확인; 유효하면 에 저장.📂 페이로드 세부 정보
업로드된 PHP 파일은 단일 파일 웹 셸로 다음을 수행합니다:
· 시스템 정보 표시 (php_uname)
· 파일 업로드 양식 제공 (추가 도구 업로드용)
· 매개변수 ?shinday=1에 응답하여 전체 셸 인터페이스 표시
· 그 외에는 탐지 회피를 위해 유효한 GIF89a 이미지 출력
셸 접근:
https://target.com/path/to/shxt_123456.php?shinday=1
🛡️ 완화 조치
이 취약점으로부터 보호하려면:
Route::group(['middleware' => ['auth', 'admin']], function () {
// File Manager routes
});
composer remove alexusmai/laravel-file-manager
.htaccess 파일 배치:
<FilesMatch "\.(php|phtml|php3|php4|php5|phar)$">
Deny from all
</FilesMatch>
📦 영향을 받는 버전
| 패키지 | 영향을 받는 버전 |
|---|---|
| alexusmai/laravel-file-manager | ≤ 3.3.1 |
🔗 참고 자료
· CVE-2025-56399 - NVD · GitHub Advisory · Snyk 취약점 데이터베이스 · VulDB 항목 · alexusmai/laravel-file-manager
📜 고지 사항
경고: 이 도구는 교육 및 승인된 보안 테스트 목적으로만 사용됩니다. 사용함으로써 다음에 동의하는 것으로 간주됩니다:
· 소유하였거나 명시적 테스트 권한이 있는 시스템만 테스트 · 악의적인 목적으로 사용하지 않음 · 모든 관련 법률 준수
저자는 오용이나 손해에 대해 어떠한 책임도 지지 않습니다.
더 많은 고지 사항은 Jenderal92의 표지에서 확인할 수 있습니다. 여기에서 확인하세요 !!!
valid.txt