Share
## https://sploitus.com/exploit?id=6381794A-FDDA-555D-8FD8-262117D3F2C8
# CVE-2021-4034
PoC de Polkit
## 驴En qu茅 consiste Polkit?
Policy Toolkit (o Polkit) desde que se lanz贸 en 2009 permite a cualquier atacante sin permisos de root obtener de f谩cilmente acceso administrativo sobre cualquier sistema de Linux con el paquete de Polkit. Desafortunademente, (o no) est谩 instalado de forma predeterminada en la mayor铆a de las distribuciones Linux. Con lo cual, ha hecho que esta vulnerabilidad sea extendida.

Afortunadamente, (o no) esta vulnerabilidad no se puede explotar de forma remota lo que hace que sea una vulnerabilidad de escalada de privilegios locales (LPE).

## 驴Pero qu茅 es Polkit?
Polkit forma parte en la mayor铆a de los sistemas de autorizaci贸n de Linux. Cuando se realiza cualquier acci贸n que requiere un permiso administrativo. Polkit determina si tiene los permisos necesarios para poder ejecutar la acci贸n. Est谩 integrado en systemd (reemplazo de init). De hecho, a Systemd se le conoce como "sudo de systemd", seg煤n THM.
Cuando interactuamos con polkit podemos usar pkexec (programa que contiene la vulnreablidad Pwnkit). Como ejemplo, cuando intentamos ejecutar ```useradd``` con pkexec en una sesion GUI nos sale una ventana en la que nos pide los credenciales. En CLI podemos obtener algo similar a esto:
``` bash         
user@user:~$ pkexec useradd test1
==== AUTHENTICATING FOR org.freedesktop.policykit.exec ===
Authentication is needed to run '/usr/sbin/useradd' as the super user
Authenticating as: user,,, (user)
Password:
```
## Remedaci贸n
Obviamente, Canonical ya ha lanzado versiones parcheadas de este paquete en el administrador de paquetes APT. Si en alguna distribuci贸n no se han publicado versiones parcheadas, simplemente se elimina el bit de SUID de pkexec.
```bash
sudo chmod 0777 'which pkexec'
```