El equipo de investigación de Qualys ha descubierto una vulnerabilidad de corrupción de memoria (CVE-2021-4034) en pkexec de polkit, un programa SUID-root que se instala por defecto en todas las distros principales de GNU/Linux. Esta vulnerabilidad, fácilmente explotable, permite que cualquier usuario sin privilegios obtenga los privilegios completos de root en un host vulnerable aprovechando esta vulnerabilidad en su configuración por defecto.
La versión actual de pkexec no maneja correctamente el conteo de parámetros de llamada y termina intentando ejecutar variables de entorno como comandos. Un atacante puede aprovechar esto elaborando las variables de entorno de tal manera que induzca a pkexec a ejecutar código arbitrario. Cuando se ejecuta con éxito, el ataque puede causar una escalada de privilegios local, dando a los usuarios sin privilegios derechos de root en la máquina de destino.
El principal riesgo para los clientes es la posibilidad de que un usuario sin privilegios obtenga privilegios administrativos en los sistemas afectados. El atacante debe tener acceso al sistema objetivo para llevar a cabo el ataque.
Todas las versiones de Polkit a partir de 2009 son vulnerables.
Os dejo el PoC del fallo.
Aviso:
Si no hay parches disponibles para su sistema operativo, puede eliminar el bit SUID de pkexec como mitigación temporal.