Descripción
AVideo es una plataforma para compartir videos. En versiones anteriores a 8.1.0, el endpoint del instalador sin autenticación `install/checkConfiguration.php` genera `videos/configuration.php` interpolando parámetros de la solicitud, incluido `webSiteRootURL`, en literales de cadena PHP entre comillas simples sin escaparlos. Un atacante puede cerrar un literal e inyectar código PHP que se ejecuta como el usuario del servidor web cuando se carga el archivo generado, que puede solicitarse directamente. La explotación requiere que `videos/configuration.php` no exista, como ocurre en toda implementación nueva o después de que el archivo se elimina o se mueve; un archivo existente bloquea este endpoint. El `systemRootPath` suministrado debe contener index.php y una conexión con `databaseHost`, `databaseUser` y `databasePass` debe tener éxito, pero el atacante puede apuntar esos parámetros a su propio servidor de base de datos y no necesita credenciales del objetivo. La ubicación de escritura también se deriva de `systemRootPath` sin restricción de directorio base. Esto permite la ejecución de comandos arbitrarios, la lectura y sobrescritura de archivos propiedad del usuario del servidor web, código PHP persistente y el control sobre la configuración almacenada de conexión a la base de datos. Además, el endpoint interpola valores de la solicitud en sentencias INSERT de streamer y de configuración, lo que crea un punto secundario de inyección SQL. Este problema se corrigió en la versión 8.1.0.
Qué hacer
Revisa si usas el producto afectado y en qué versión, y aplica la actualización o la mitigación que indique el aviso del fabricante. CISA no ha confirmado que se esté explotando; si eso cambia, esta ficha pasa a «explotada» y te avisamos en el boletín.
Versiones afectadas
- AVideo-Encoder Afectadas: < 8.1.0
Según el registro de la vulnerabilidad en CVE.org, tal como lo publicó el fabricante. Confirma tu versión exacta en el aviso del fabricante.
Referencias
- Referencia en github.comgithub.com/WWBN/AVideo-Encoder/security/advisories/GHSA-xrj3-cqm8-r992
- Referencia en github.comgithub.com/WWBN/AVideo-Encoder/commit/0faaddebd11c087885d25a7e0513745…
- Referencia en github.comgithub.com/WWBN/AVideo-Encoder/releases/tag/v8.1.0
Ver el texto original en inglés (CVE.org)
AVideo-Encoder: unauthenticated installer PHP code injection
AVideo is a video-sharing Platform. Prior to 8.1.0, the unauthenticated installer endpoint `install/checkConfiguration.php` assembles `videos/configuration.php` by interpolating request parameters, including `webSiteRootURL`, into single-quoted PHP string literals without escaping. An attacker can terminate a literal and inject PHP that executes as the web-server user when the generated, directly requestable file is loaded. Exploitation requires `videos/configuration.php` to be absent, as on every fresh deployment or after the file is removed or moved; an existing file blocks this endpoint. The supplied `systemRootPath` must contain index.php and a connection using `databaseHost`, `databaseUser`, and `databasePass` must succeed, but the attacker can point those parameters to their own database server and needs no target credentials. The write location is also derived from `systemRootPath` without a base-directory constraint. This permits arbitrary command execution, reading and overwriting files owned by the web-server user, persistent PHP code, and control over stored database connection settings. The endpoint additionally interpolates request values into streamer and configuration INSERT statements, creating a secondary SQL-injection sink. This issue is fixed in version 8.1.0.