Los investigadores han revelado detalles de dos vulnerabilidades de seguridad críticas en Control Web Panel que podrían abusarse como parte de una cadena de explotación para lograr la ejecución remota de código autenticado previamente en los servidores afectados de CWP.
El problema, rastreado como CVE-2021-45467, se refiere a un caso de vulnerabilidad de inclusión de archivos, que ocurre cuando se engaña a una aplicación web para que exponga o ejecute archivos arbitrarios en el servidor web.
Control Web Panel, anteriormente CentOS Web Panel, es un software de panel de control de Linux de código abierto que se utiliza para implementar entornos de alojamiento web.
Específicamente, el problema surge cuando dos de las páginas PHP no autenticadas utilizadas en la aplicación, «/user/login.php» y «/user/index.php«, no logran validar adecuadamente una ruta a un archivo de script, según Octagon Networks. Paulos Yibelo, quien descubrió y reportó las fallas.
Esto significa que para explotar la vulnerabilidad, todo lo que un atacante tiene que hacer es alterar la declaración de inclusión, que se usa para incluir el contenido de un archivo PHP en otro archivo PHP, para inyectar código malicioso desde un recurso remoto y obtener código. ejecución.
Curiosamente, si bien la aplicación tenía protecciones para marcar los intentos de cambiar a un directorio principal (indicado por «..») como un «intento de piratería», no hizo nada para evitar que el intérprete de PHP aceptara una cadena especialmente diseñada como «. $00». y logrando efectivamente un bypass completo.
Esto no solo permite que un mal actor acceda a puntos finales de API restringidos, sino que se puede usar junto con una vulnerabilidad de escritura de archivo arbitrario (CVE-2021-45466) para obtener la ejecución remota completa del código en el servidor de la siguiente manera:
- Envíe una carga útil de inclusión de archivos alimentada por bytes nulos para agregar una clave de API maliciosa
- Use la clave API para escribir en un archivo (CVE-2021-45466)
- Use el paso 1 para incluir el archivo que acabamos de escribir (CVE-2021-45467)
Luego de la divulgación responsable, los mantenedores de CWP abordaron las fallas junto con las actualizaciones enviadas a principios de este mes.