Vulnerabilidad CVE-2021-4034

Vulnerabilidad CVE-2021-4034

Publicado: 20/2/2025

Escrito por: Nadine Rozell

Señal roja de precaución sobre una imagen de una laptop con una mano en el trackpad

¿Qué es la vulnerabilidad CVE-2021-4034?

CVE-2021-4034 (PwnKit) es una vulnerabilidad de corrupción de memoria en la utilidad pkexec de Polkit. Polkit es un conjunto de herramientas a nivel de aplicación para controlar privilegios en todo el sistema en sistemas operativos tipo Unix. pkexec es un programa SUID-root que permite a un usuario autorizado ejecutar comandos como otro usuario, incluido el todopoderoso usuario root. La vulnerabilidad permite que cualquier usuario local sin privilegios obtenga privilegios root completos, lo que le da, en la práctica, las llaves del reino.

¿Cuándo se descubrió?

La vulnerabilidad fue descubierta por investigadores de Qualys y dada a conocer el 25 de enero de 2022. ¿Lo más alarmante? El error había pasado desapercibido durante más de 12 años, lo que significa que una gran cantidad de sistemas eran vulnerables desde un inicio. Los parches se publicaron rápidamente, pero el largo tiempo de exposición hace que esta sea una falla crítica que hay que verificar.

Productos y versiones afectados

Producto

Versiones afectadas

Versiones corregidas/Parches

Polkit

Todas las versiones desde 2009

Parches disponibles para todas las distribuciones de Linux principales (p. ej., Ubuntu, Debian, CentOS, Red Hat)

Descripción técnica de CVE-2021-4034

La vulnerabilidad PwnKit es un caso clásico de manejo incorrecto de entradas. La herramienta pkexec no procesa correctamente el número de argumentos de línea de comandos que recibe. Al crear un conjunto específico de argumentos, un atacante puede engañar a pkexec para que ejecute una variable de entorno arbitraria como un comando. Debido a que pkexec es un binario SUID-root, ese comando se ejecuta con privilegios root. El exploit es confiable, independiente de la arquitectura y funciona en instalaciones predeterminadas de la mayoría de las distribuciones de Linux.

Tácticas, técnicas y procedimientos (TTPs)

Un atacante primero necesita obtener acceso inicial a una máquina objetivo como usuario con pocos privilegios. Esto podría ser mediante otro exploit, una contraseña débil o una aplicación web comprometida. Una vez que logra ese punto de apoyo, ejecuta el exploit PwnKit de forma local. Es un comando de una sola vez. Esto escala de inmediato sus privilegios a root, lo que le permite desactivar herramientas de seguridad, instalar puertas traseras persistentes, robar datos confidenciales o moverse hacia otros sistemas de la red.

Indicadores de compromiso

La detección puede ser complicada, ya que un exploit exitoso se parece a un uso legítimo de pkexec. Sin embargo, los registros pueden mostrar que pkexec se invoca con argumentos inusuales o vacíos. Podrías ver entradas en los registros del sistema que indican "The value for the SHELL variable was not found." Una buena solución EDR puede marcar la cadena anómala de ejecución de procesos. Ejecutar el comando pkexec --version también puede indicarte si estás usando una versión vulnerable.

Pruebas de concepto y exploits conocidos

Las pruebas de concepto para PwnKit se hicieron públicas casi de inmediato después de la divulgación. Son simples, muy confiables y están ampliamente disponibles. Actores maliciosos, incluidos grupos de ransomware y APT, integraron rápidamente PwnKit en sus kits de herramientas como un método preferido para la escalada de privilegios en sistemas Linux.

¿Cómo detectar la vulnerabilidad CVE-2021-4034?

La manera más confiable de detectar esta vulnerabilidad es revisar la versión instalada de Polkit. Puedes hacerlo usando el administrador de paquetes de tu distribución (p. ej., apt show polkitd en Debian/Ubuntu, rpm -q polkit en Red Hat/CentOS). Escáneres de vulnerabilidades como Nessus o Qualys también cuentan con complementos específicos para detectar PwnKit. En el endpoint, puedes buscar las entradas de registro reveladoras o usar un script local de verificación de exploits para probar la falla.

Impacto y riesgo de la vulnerabilidad CVE-2021-4034

El impacto es grave. Obtener acceso root es el objetivo final de un atacante en un solo sistema. Esto le otorga control total. A partir de ahí, puede hacer cualquier cosa: implementar ransomware, exfiltrar una base de datos completa o usar la máquina comprometida como plataforma de lanzamiento para más ataques dentro de tu red. Para cualquier organización que ejecute servidores Linux, esta vulnerabilidad representa un riesgo crítico para la integridad de los datos y la disponibilidad del sistema.

Estrategias de mitigación y remediación

Aplica el parche de inmediato. Esto no es un simulacro. Todas las distribuciones principales de Linux han lanzado versiones parcheadas de Polkit. Ejecuta las actualizaciones de tu sistema (sudo apt update && sudo apt upgrade o sudo yum update). Si definitivamente no puedes parchear un sistema de inmediato, puedes aplicar una mitigación temporal quitando el bit SUID del binario pkexec (sudo chmod 0755 /usr/bin/pkexec). Esto evitará que el exploit funcione, pero puede afectar aplicaciones legítimas que dependen de pkexec, así que aplicar el parche siempre es la mejor opción.

Preguntas frecuentes sobre la vulnerabilidad CVE-2021-4034

CVE-2021-4034, o PwnKit, es una vulnerabilidad de escalada de privilegios local en la herramienta pkexec en Linux. Permite que cualquier usuario local se convierta en usuario root al explotar una falla de corrupción de memoria en la forma en que pkexec maneja los argumentos de línea de comandos.

No infecta un sistema, sino que explota una falla que ya existe. Un atacante con acceso de bajo nivel a una máquina Linux ejecuta un comando especialmente diseñado contra pkexec. Este comando engaña a la herramienta para que ejecute código con privilegios de root, dándole al atacante control total.

Sí. Aunque los parches están ampliamente disponibles, los sistemas Linux sin parchear siguen siendo comunes, especialmente en entornos grandes y complejos o con dispositivos embebidos. Los atacantes lo saben y siguen usando PwnKit como una forma confiable de escalar privilegios después de obtener un punto de apoyo inicial.

La defensa número uno es aplicar parches. Actualiza tus sistemas Linux para asegurarte de tener la versión corregida de Polkit. Usa escáneres de vulnerabilidades para identificar los sistemas que se hayan pasado por alto. Como solución temporal, puedes quitar los permisos SUID de pkexec, pero esto debe ser solo una medida provisional.

Protege lo que importa

Protege endpoints, correo electrónico y empleados con el poder de nuestro SOC 24/7. Prueba Huntress gratis y despliega en minutos para empezar a combatir las amenazas.
Probar Huntress gratis