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

Goal: 1000 CNY · Raised: 1310 CNY

100%

CVE-2023-30943 PoC — Moodle: tinymce loaders susceptible to arbitrary folder creation

Source
Associated Vulnerability
Title:Moodle: tinymce loaders susceptible to arbitrary folder creation (CVE-2023-30943)
Description:The vulnerability was found Moodle which exists because the application allows a user to control path of the older to create in TinyMCE loaders. A remote user can send a specially crafted HTTP request and create arbitrary folders on the system.
Description
A Python-based tool to detect the CVE-2023-30943 vulnerability in Moodle, which allows unauthorized folder creation via specially crafted requests in TinyMCE loaders.
Readme
# CVE-2023-30943 Vulnerability Scanner

This tool detects a vulnerability in Moodle as described in the [NVD](https://nvd.nist.gov/vuln/detail/CVE-2023-30943).

## Description

Moodle contains a vulnerability due to the way it handles TinyMCE loaders. The application allows a user to dictate the folder creation path. A remote attacker can exploit this by sending a crafted HTTP request, enabling arbitrary folder creation on the system.

## Installation

1. Ensure you have Python 3.10 installed.
2. Clone or download this repository.
3. Install the required libraries:
```bash
pip install -r requirements.txt
```

## Usage

### Basic Commands:

Scan a single URL for vulnerability:
```bash
python3.10 exploit.py -u [TARGET_URL]
```

Scan multiple URLs from a file:
```bash
python3.10 exploit.py -f [FILE_CONTAINING_URLs]
```

### Using Leakix:

If you want to fetch URLs from Leakix based on leaks, you must first:

1. Modify the `LEAKIX_API_KEY` variable in the script `exploit.py` with your Leakix API Key.
2. If you have a Pro API key, you can use the `--bulk` mode:
```bash
python3.10 exploit.py --leakpy --bulk
```
3. For non-Pro users, specify the number of pages you want to retrieve using the `--pages` argument:
```bash
python3.10 exploit.py --leakpy --pages [NUMBER_OF_PAGES]
```

### Other Options:

- Save results to an output file:
```bash
python3.10 exploit.py -u [TARGET_URL] -o [OUTPUT_FILENAME]
```

- To see a full list of command-line options:
```bash
python3.10 exploit.py -h
```
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 →