
Un exploit PoC para CVE-2022-33891 - Apache Spark UI Ejecución remota de código (RCE)
La interfaz de usuario de Apache Spark es susceptible a una vulnerabilidad de inyección de comandos remotos identificada como CVE-2022-33891. Este fallo surge debido al manejo inadecuado de la autenticación de usuarios y el control de acceso, específicamente cuando las Listas de Control de Acceso (ACL) están habilitadas. Con las ACL activadas a través de la opción de configuración spark.acls.enable, se supone que un filtro de autenticación valida si un usuario tiene los permisos necesarios para ver o modificar la aplicación. Sin embargo, existe una vulnerabilidad dentro de HttpSecurityFilter que permite la suplantación al proporcionar un nombre de usuario arbitrario.
Cuando las ACL están habilitadas, una ruta de código específica dentro de HttpSecurityFilter no logra verificar adecuadamente las identidades de los usuarios. Esta omisión permite que un atacante eluda el mecanismo de autenticación y llegue a una función de verificación de permisos. Esta función construye y ejecuta inadvertidamente un comando de shell de Unix basado en la entrada proporcionada por el usuario, lo que lleva a la ejecución de código arbitrario en el servidor que aloja la interfaz de usuario de Apache Spark.
La vulnerabilidad afecta las siguientes versiones de Apache Spark:
Se ha desarrollado una Prueba de Concepto (PoC) para demostrar la explotabilidad de esta vulnerabilidad. Esta PoC está destinada estrictamente a fines educativos y de investigación de seguridad, para ayudar a comprender y mitigar este fallo.
La PoC proporcionada es solo para fines educativos y de hacking ético. El uso de la PoC para ataques contra aplicaciones web o servidores sin consentimiento mutuo previo es ilegal. El autor no asume ninguna responsabilidad y no es responsable por cualquier mal uso o daño causado por este material. Se insta a los usuarios a utilizar esta información de manera responsable y ética.