
Exploit de prueba de concepto para CVE-2023-33404: vulnerabilidad de carga de archivos autenticada en BlogEngine.NET CMS 3.3.8.0 y anteriores, que permite la ejecución remota de código a través de una ruta de carga codificada.
Un usuario que tiene el derecho EditOwnPosts en BlogEngine.NET CMS (versión 3.3.8.0 y anteriores) tiene la capacidad de subir un archivo malicioso a una ubicación codificada.
Una solicitud POST al endpoint /api/upload con los parámetros "action=video", como se muestra en la captura de pantalla a continuación, desencadena un proceso de carga de archivos.

La aplicación primero verifica si el usuario tiene derechos EditOwnPosts para proceder con la carga del video; de lo contrario, la aplicación genera un error.
Como se muestra en la captura de pantalla a continuación, en las líneas 101 y 105, la aplicación establece una ubicación codificada para los archivos que se están subiendo. Después de eso, llama a una función llamada UploadVideo (en la línea 107).

La función UploadVideo verifica si el directorio de destino existe, lo crea si no existe y guarda el archivo en el directorio.

Como se muestra en la captura de pantalla a continuación, mueve el archivo malicioso al directorio codificado. Solicitar el archivo que se subió conduce a RCE.
