
Preuve de concept pour CVE-2021-4034, une élévation de privilèges locale dans pkexec de polkit, démontrant l'exploitation avec de simples aides en C et un script shell.
Les chercheurs de Qualys ont découvert une faille d'élévation de privilèges locale plutôt sympa
dans pkexec de Polkit : analyse, tweet. Cette vulnérabilité
existe et est exploitable sur les principales distributions Linux depuis assez longtemps.
Des correctifs de sécurité ont été publiés, j'ai donc décidé d'écrire un PoC très simple pour
montrer à quel point il est trivial de l'exploiter. Le code de ce dépôt devrait être
très explicite après avoir lu l'analyse liée. Merci aussi à
@Drago1729 pour l'idée et l'aide.
Comment faire :
pkexec, par ex. policykit-1 <= 0.105-31 dans
les dépôts Debian ou même compilée à partir des sources.
Vous pouvez l'avoir installée localement ou simplement copier l'exécutable pkexec seul
directement dans ce répertoire (assurez-vous qu'il est exécutable et setuid root)../expl.sh et profitez.REMARQUE : expl.sh cherchera d'abord pkexec dans le répertoire de travail courant,
puis se rabattra sur $PATH. Comme pkexec est généralement un exécutable setuid-root,
lancez-le peut-être dans une VM et pas sur votre machine, vous savez...
Démo :

Merci, @mebeim :)