5

Linux Privilege Escalation : Python Library Hijacking

3 min read

Visits: 3383

4.3
(13)

Dans cet article, nous allons passer d’un utilisateur lambda sans droits à l’utilisateur root à l’aide d’un script python et de la technique “python library hijacking“.


Python Library Hijacking :

Le contexte de cet exemple est très simple, nous avons un utilisateur simple_user qui après vérification peut lancer le script example.py à l’aide de sudo :

Cependant ce n’est pas aussi facile que ça étant donné que nous n’avons pas les droits d’écriture sur ce dernier !


Mais comment faire pour bypass dans ce cas là ?

Il faut regarder en détail notre fameux script, qui à titre d’exemple importe le module random et génère une liste de nombre entre 10 et 30 et nous l’affiche :

La méthode de cet article repose sur le fait que nous allons pouvoir écrire notre propre module random mais qui sera bien sûr malicieux et nous permettra donc de passer root.


En effet, en créant un fichier random.py dans le chemin /home/simple_user/ python va prioriser l’exécution de ce module à la place du chemin habituel que l’on peut retrouver avec la commande :

python3 -c 'import sys; print("\n".join(sys.path))'

C’est donc parti pour la création de notre “module” dans /home/simple_user/ :

Une fois le module os importé nous mettons le bit SUID sur le binaire bash.


Il est désormais temps d’exécuter le script afin qu’il fasse appel à notre module :

sudo /usr/bin/python3 /home/simple_user/example.py

Après vérification du fichier /bin/bash nous pouvons voir la réussite du processus !

Il suffit à présent d’exécuter la commande :

/bin/bash -p

Quelle note mérite cet article ?

Average rating 4.3 / 5. Vote count: 13

No votes so far! Be the first to rate this post.

S’abonner
Notification pour
guest
5 Commentaires
Le plus ancien
Le plus récent Le plus populaire
Commentaires en ligne
Afficher tous les commentaires
LeMecQuiCodeEnC
Invité
LeMecQuiCodeEnC
3 années il y a

Très bon article ! Une de mes privesc préféré !

comores11
Invité
comores11
3 années il y a

très bon article !

Edra
Invité
Edra
3 années il y a
<h1>Wsh<h1>
Machou
Invité
Machou
2 années il y a

Fonctionne pas en mutu, ils bloquent sudo 🙂