> For the complete documentation index, see [llms.txt](https://beafn28.gitbook.io/beafn28/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://beafn28.gitbook.io/beafn28/cve-and-poc/poc-cve-2025-34040-arbitrary-file-upload-to-rce-zhiyuan-oa.md).

# PoC - CVE-2025-34040 - Arbitrary File Upload to RCE (Zhiyuan OA)

{% embed url="<https://www.exploit-db.com/exploits/52490>" %}

#### Resumen

Desarrollé una Proof of Concept (PoC) que demuestra una vulnerabilidad de **subida arbitraria de archivos con path traversal** en la plataforma **Zhiyuan OA**, registrada como **CVE-2025-34040**.

La vulnerabilidad se origina en una validación insuficiente de los parámetros `realFileType` y `fileId` dentro del endpoint `wpsAssistServlet`, lo que permite escribir archivos fuera de los directorios previstos.

La PoC demuestra cómo, mediante la manipulación controlada de peticiones multipart, es posible subir archivos ejecutables (por ejemplo, JSP) al webroot y lograr **ejecución remota de código (RCE)**.

El exploit fue publicado y verificado en Exploit Database (**EDB-ID 52490**).

#### Detalle técnico

* **Producto afectado:** Zhiyuan OA
* **Versiones afectadas:** 5.0, 5.1–5.6sp1, 6.0–6.1sp2, 7.0–7.1sp1, 8.0–8.0sp2
* **CVE:** CVE-2025-34040
* **Componente vulnerable:** `wpsAssistServlet` (file upload handler)
* **Vector de ataque:** Path Traversal + Arbitrary File Upload
* **Tipo de vulnerabilidad:** Unrestricted File Upload + Directory Traversal
* **CWE:** CWE-22, CWE-434
* **Impacto:** Remote Code Execution (RCE)
* **Plataforma:** Web / Java

#### Descripción de la PoC

La PoC explota una validación incorrecta en la carga de archivos multipart, permitiendo controlar la ruta destino mediante el parámetro `realFileType`.

El exploit realiza las siguientes acciones:

* Manipulación del parámetro `realFileType` con secuencias `../`
* Escritura de archivos fuera del directorio permitido
* Subida de un archivo ejecutable (JSP) al webroot
* Acceso directo al archivo subido mediante el servidor web
* Ejecución de código en el servidor

No requiere autenticación en configuraciones expuestas.

#### Comportamiento demostrado

* Escritura arbitraria de archivos en el sistema
* Bypass de restricciones de directorio
* Ejecución de código remoto (RCE)
* Persistencia mediante webshells
* Compromiso completo del servidor

#### Entorno de pruebas

* **Aplicación:** Zhiyuan OA
* **Versiones afectadas:** múltiples versiones hasta 8.0sp2
* **Plataforma:** Java Web Application
* **Escenario:** Laboratorio controlado

#### Impacto

Un atacante remoto no autenticado puede:

* Subir y ejecutar código arbitrario
* Comprometer completamente el servidor
* Acceder a datos sensibles
* Realizar movimiento lateral dentro de la red
* Establecer persistencia

La vulnerabilidad presenta un impacto **crítico (CVSS 4.0: 10.0)** debido a:

* Sin autenticación requerida
* Baja complejidad
* Ejecución directa de código

#### Mitigaciones recomendadas

* Aplicar parches oficiales del vendor
* Validar estrictamente rutas y nombres de archivo
* Restringir tipos de archivo permitidos
* Implementar controles de subida seguros
* Aislar el webroot de directorios de escritura
* Monitorizar cargas de archivos sospechosas

#### Referencias

* **Exploit:** <https://www.exploit-db.com/exploits/52490>
* **CVE:** <https://nvd.nist.gov/vuln/detail/CVE-2025-34040>

{% hint style="danger" %}
Esta PoC ha sido desarrollada únicamente con fines educativos y de investigación.\
No debe ejecutarse contra sistemas en producción ni sin autorización expresa.\
Seguir siempre prácticas de responsible disclosure.
{% endhint %}
