Escalamiento de privilegios locales en pkexec de Polkit

Bolt-On Security the Linux Way - TechNewsWorld

Una vulnerabilidad de corrupción de memoria (CVE-2021-4034) fue encontrada en Polkit, el cual es un componente para los sistemas Linux y Unix que deja a procesos no privilegiados realizar procesos que necesitan permisos de «super usuario», sin que estos tengan que ejecutarse como root, mientras que «sudo», no necesita que todo el proceso sea ejecutado con privilegios del sistema, permitiendo un mayor control sobre los permisos.

El origen de esta falla es desde hace más de 12 años, y parece proceder del primer commit publicado de pkexec. Esto quiere decir que todas las versiones de Polkit se encuentran afectadas. Una función desconocida del archivo /usr/bin/pkexec es afectada por esta vulnerabilidad. Por la manipulación de un input desconocido se causa una vulnerabilidad de clase escalada de privilegios.

Los investigadores encontraron un error de memoria fuera de los límites, en el código pkexec que permite a los atacantes pasar variables de entorno peligrosas como LD_PRELOAD al flujo de ejecución. LD_PRELOAD es una variable opcional que le dice a un programa una ruta personalizada donde debe buscar bibliotecas u objetos compartidos y cargarlos antes que cualquier otra biblioteca durante la ejecución.

Más detalles técnicos de la vulnerabilidad PwnKit, se encuentra en la página de Qualys, quienes realizaron el primer informe.

La mayoría de los distribuidores de Linux están trabajando en un parche que estiman saldrá pronto. Ubuntu ya lanzó un parche que corrige la vulnerabilidad para las versiones ESM 14.04 y 16.04 y para las versiones 18.04, 20.04 y 21.10. La recomendación para todos los administradores de sistema es dar prioridad a la aplicación de los parches de los autores en su repositorio de Gitlab.

Más información:

  • https://blog.qualys.com/vulnerabilities-threat-research/2022/01/25/pwnkit-local-privilege-escalation-vulnerability-discovered-in-polkits-pkexec-cve-2021-4034
  • https://gitlab.freedesktop.org/polkit/polkit/-/commit/a2bf5c9c83b6ae46cbd5c779d3055bff81ded683
  • https://ubuntu.com/security/CVE-2021-4034
  • https://access.redhat.com/security/cve/CVE-2021-4034
  • https://www.helpnetsecurity.com/2022/01/26/cve-2021-4034/