La aplicación phpList v3.0.6 es vulnerable a una inyección CSV. Un atacante puede inyectar código malicioso en el parámetro de correo electrónico al registrar a un usuario para ejecutar código remoto en su computadora. Como se muestra en la siguiente captura de pantalla, la aplicación no valida la entidad correctamente.
Cuando la aplicación envía la variable, los caracteres especiales no se codifican en el frontend y los campos de entrada del lado del servidor no se validan. Esto permite ingresar caracteres especiales como «=cmd| ‘ /C calc ‘A0′».
Como se muestra a continuación, la aplicación no modifica la cadena de entrada y permite descargar el contenido en un archivo CSV.
La casilla de ID debe estar desmarcada para que el payload sea interpretado correctamente, de modo que tome la cadena del correo electrónico como el primer valor.
En la siguiente captura de pantalla se observa cómo la aplicación permite la descarga del archivo CSV malicioso.
Cuando el usuario abre el documento CSV, Excel mostrará un mensaje de alerta de seguridad. Sin embargo, si el usuario habilita las macros, el payload se ejecutará automáticamente.