Vous êtes sur la page 1sur 11

Escalade des privilEges :

Ennumeration & exploitation

Le 15-12-2023 Shr3dr

1
Tableau de contenu

Escalade des privileges ……………………………. Page 3

Esc privileges sous linux …………………………. Page 4


A- Exploitation de suid ……………………. Page 4
1- Exemple nmap ………………………………… Page 6
2- Exemple python ………………………………. Page 7
b- abusing cronjobs ……………………….… Page 8

Outils automatise ……………………………………. Page 10

A- PrivescCheck ………………………………. Page 10

b- linpeas …………………………………….. Page 11

2
I L’escalade des privilèges

L'escalade de privilèges est une tactique utilisée par les adversaires pour obtenir
des permissions de plus haut niveau sur un système ou un réseau. Cela se fait
souvent après qu'un adversaire a obtenu un accès initial à un système avec des
privilèges de niveau inférieur, Les permissions élevées peuvent être nécessaires aux
adversaires pour atteindre des objectifs tels que voler des données, installer des
logiciels malveillants ou perturber les opérations.

L'escalade de privilèges est une étape cruciale dans de nombreuses attaques


d'adversaires. En obtenant des privilèges de plus haut niveau, les adversaires peuvent
accéder à des systèmes et à des données plus sensibles, et ils peuvent effectuer des
actions plus destructives.

 Dans le cadre MITRE ATT&CK, l'escalade de privilèges est considérée comme


une technique d'exploitation.

L'exploitation est la phase du kill chain où l'adversaire exécute du code malveillant


sur le système de la victime.

Le cadre MITRE ATT&CK répertorie un certain nombre de techniques que les


adversaires peuvent utiliser pour escalader les privilèges, notamment :

 Exploitation des vulnérabilités : L'adversaire peut exploiter des vulnérabilités


dans les logiciels pour obtenir des permissions de plus haut niveau.

 Utilisation de comptes par défaut : L'adversaire peut utiliser des comptes par
défaut qui n'ont pas été correctement sécurisés pour obtenir des permissions
de plus haut niveau.

 Ingénierie sociale : L'adversaire peut tromper les utilisateurs pour qu'ils leur
accordent des permissions de plus haut niveau.

3
Dans la section pratique de cette présentation, nous allons faire un ZOOM IN sur que
lques méthodes qu'un advairsaire peut utiliser pour augmenter ses privilèges
dans un système, qu'il s'agisse de linux ou de Windows.

l Linux Privilege escalation

a- Exploiting the SUID

Un fichier avec SUID s’exécute toujours avec les permissions de l'utilisateur qui
possède le fichier, indépendamment de celui qui passe la commande

Si un fichier a le numéro de permission SUID on trouve le nombre 4 est le premier


nombre si on consulte les permissions d’un fichier.

Dans cet exemple on a utilisé la commande <stat> sur l’exécutable sudo qui se
trouve dans le chemin /usr/bin/sudo

Pour trouver ce genre des fichiers dans notre system on peut exécuter la commande
suivante :

4
Ou bien :

Notre résultat peut contenir plusieurs fichiers, mais ce qui nous intéresse pour
l’instant est l’exécutable nmap

La manière d’exploitation de chaque exécutable se varie entre un et l’autre pour cela on peut
consulter ce site web https://gtfobins.github.io pour un guide détaillé.

GTFOBins est une liste légitime de binaires Unix qui peuvent être utilisés pour contourner
les restrictions de sécurité locales, évoluer ou maintenir des privilèges élevés, transférer des
fichiers, obtenir un Shell inversé, et faciliter les autres tâches post-exploitation

5
GTFOBins offre un large manuel d’exploitation de chaque exécutable sous linux,
envirent 383 binaire et fonction il suffit de chercher par le nom

En cliquant sur nmap on aura plus de détails

Maintenant vous allez voir comment on peut avoir un Shell avec les permissions d’un
utilisateur root avec deux simples commandes et sans savoir le mot de passe de ce
dernier tout en exploitant un exécutable qui est totalement légitime

6
Apres avoir un accès initial à un système, l’attaquant commence à énumérer le
system cherchant des vulnérabilités à exploiter ou des configurations non sécurisées,
même ce processus est besoin des privilèges élevées pour mettre la main sur des
informations ou données critiques.

Prenant dans cette deuxième exemple ce fichier que seulement l’utilisateur root peut
lire ou écrire.

Ainsi que python a le bit S qui permet de l’exécuter avec des permissions de
l’utilisateur qui le possède (root)

Avec le même principe on peut utiliser l’exécutable python pour exécuter des
commandes qui va nous permet de lire le contenu de ce fichier.

7
On peut même modifier le contenu.

b- Cronjobs abusing

Cron représente une utilité très importante dans un environnement linux, En


permettant la planification des taches comme la sauvegarde ou le librement de
stockage jusqu’aux mise a jours etc. ce qui facilite l’administration des systèmes en
automatisant l’exécution des applications, scripts et des commandes system.

Chaque application ou script configuré à s’exécuter répétitivement avec Cron est


considéré comme un Cronjob.

Cron utilise un fichier spécial nommé Crontab pour stocker les configurations des
Cronjobs

Ce fichier doit être accessible est modifié seulement par l’administrateur de system,
car avoir l’Access a ce type des fichiers peut conduire à l’exécution des codes
malveillantes avec des privilèges élevées.

La plupart des serveurs peuvent contenir un script qui prend charge du backup des
fichiers, et fréquemment automatisé avec les Cronjobs.

Si les permissions son mal configurées que quelqu’un peut lire ou modifier le
contenu de ce script, un attaquant peut l’utiliser pour augmenter ses privilèges.

8
Supposant que ce script s’exécute chaque jour à 12 :00

Dans cet exemple on va insérer cette ligne de commande afin qu’elle s’exécute au
moment de l’exécution du script.

Si la ligne stagiaire ALL=NOPASSWD:ALL est insérée dans le fichier /etc/sudoers,


l’utilisateur stagiaire peut exécuter n’import quel commandes avec Sudo sans enter
un mot de passe, ce qui signifie qu’il peut Controller tout le system.

9
II Outils automatisé
Le processus d’élévation des privilèges dépend sur plusieurs facteurs et
caractéristiques, certaine mise à jour de sécurité, la version du kernel, les pilots
installe ou des applications vulnérables dans le system, la phase de découverte vise a
collecter tous ces informations et plus pour réussir l’attaque et avoir le control total
sur le system, Ce qui rend ce processus très long et consomme plus de temps.

Pour cela un auditeur ou un attaquant peut utiliser des outils qui automatise la
collecte des informations sur le system et extraire certain vecteur qui peut conduire a
une escalade des privilèges.

a- PrivescCheck
Source : https://github.com/itm4n/PrivescCheck
Sous Windows il’ y a PrivescCheck, un script PowerShell qui collecte des
informations system et vérifie s’il y a des vecteurs d’escalade de privilèges.

Peut-être utilisé comme ça :

A la fin d’exécution le script nous offre plusieurs informations avec un résumé simplifié

10
b- LinPeas

Sous Linux On peut utiliser l’outil LinPeas qui peut scanner le system en cherchant des
vecteurs d’escalade des privilèges dans les fichiers, les permissions, la version de kernel, les
processus, les packages installe, etc. ...

Apres avoir télécharger l’outil, On peut l’utiliser simplement comme ça

Source : https://github.com/carlospolop/PEASS-ng/releases

11

Vous aimerez peut-être aussi