
Prova de conceito de exploit para CVE-2021-4034, uma escalada local de privilégios no pkexec do polkit, demonstrando a exploração com auxiliares simples em C e um script de shell.
Pesquisadores da Qualys encontraram uma vulnerabilidade de escalonamento local de privilégios bastante interessante
no pkexec do Polkit: writeup, tweet. Essa vulnerabilidade
existe e é explorável nas principais distribuições Linux há bastante tempo.
Correções de segurança foram publicadas, então decidi escrever uma PoC muito simples para
mostrar como é trivial explorar isso. O código neste repositório deve ser bem
autoexplicativo após ler o write-up vinculado. Agradecimentos também a
@Drago1729 pela ideia e pela ajuda.
Como fazer:
pkexec, por exemplo, de policykit-1 <= 0.105-31 nos
repositórios Debian ou até mesmo compilada a partir do código-fonte.
Você pode tê-la instalada localmente ou apenas copiar o executável pkexec sozinho
diretamente neste diretório (certifique-se de que seja executável e setuid root)../expl.sh e aproveite.NOTA: expl.sh primeiro procurará por pkexec no diretório de trabalho atual,
e depois recorrerá ao $PATH. Como pkexec geralmente é um executável setuid-root,
talvez seja melhor executar isso em uma VM e não na sua máquina, sabe...
Demonstração:

Valeu, @mebeim :)