---
description: >-
  Dans ce write-up, nous verrons comment compléter Ignite de TryHackMe, Un
  challenge CTF de niveau débutant qui requiert plusieurs techniques : nmap,
  CMS, élévation de privilège
---

# Tryhackme CTF Write-Up : Ignite

<mark style="color:yellow;">**Enumération**</mark>

Commençons par un scan Nmap pour voir les ports ouverts puis un second sur ceux ouverts pour voir les services qui tournent dessus ainsi que le script par défaut de nmap sur ces ports

Dans ce scan nous trouvons que un port est ouvert :

* 80 : Un serveur Apache httpd 2.4.18



<figure><img src="https://3839766064-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxQeXO8rMJOSwaAmFiOY8%2Fuploads%2FvM1Z09e7XUwG2a8lClwx%2FScreenshot_1.png?alt=media&#x26;token=45565701-d4c1-4970-b944-ac572e480252" alt=""><figcaption></figcaption></figure>

Le scan avancé nous donnera l'existence d'un dossier non indexé, /fuel



Rendons-nous d'abord sur le site



<figure><img src="https://3839766064-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxQeXO8rMJOSwaAmFiOY8%2Fuploads%2FF0PqlezpqVst2DVSrHOv%2FScreenshot_2.png?alt=media&#x26;token=6a8b2d2f-8d41-46ed-9997-e89e19ff1041" alt=""><figcaption></figcaption></figure>

Nous apprenons que nous sommes sur un CMS, Fuel CMS de sa version 1.4



<figure><img src="https://3839766064-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxQeXO8rMJOSwaAmFiOY8%2Fuploads%2F2vVxYbbbdpTrB4KRX0yX%2FScreenshot_3.png?alt=media&#x26;token=6454c888-d2b7-483a-be89-8d09e22433c0" alt=""><figcaption></figcaption></figure>

Nous retrouvons le dossier /full, avec des credentials de base admin:admin

regardons s'ils ont étaient changés



<figure><img src="https://3839766064-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxQeXO8rMJOSwaAmFiOY8%2Fuploads%2FPYK0MrfhIumpFCiz6DvQ%2FScreenshot_4.png?alt=media&#x26;token=9a420e64-997b-4ff5-ba29-f60d818fd51a" alt=""><figcaption></figcaption></figure>

Nous avons donc accès au CMS en tant qu'admin, mais rien d'intéressant à première vue, je continue donc l'exploration en cherchant un exploit pour Fuel CMS



<figure><img src="https://3839766064-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxQeXO8rMJOSwaAmFiOY8%2Fuploads%2F0plMPZsZNSyYcySsKHMU%2FScreenshot_5.png?alt=media&#x26;token=615d7b81-9efc-4a21-a748-3548cf5a1075" alt=""><figcaption></figcaption></figure>

Nous trouvons cette vulnérabilité en python, exploitons-là&#x20;



<figure><img src="https://3839766064-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxQeXO8rMJOSwaAmFiOY8%2Fuploads%2FKw64wIRT3DYMHvYKQbZ4%2FScreenshot_6.png?alt=media&#x26;token=bad5d25b-d6c8-413a-9086-7ba5f5248b16" alt=""><figcaption></figcaption></figure>

en effet, nous pouvons taper des commandes de base, mais nous ne pouvons pas nous déplacer au dela du dossier du cms,

Essayons de mettre un reverse-shell avec netcat, je configure le listener et avec cette commande



<figure><img src="https://3839766064-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxQeXO8rMJOSwaAmFiOY8%2Fuploads%2Ff84wQ27oO38J04PpeLVt%2FScreenshot_7.png?alt=media&#x26;token=e368a35c-1864-40a2-8fa0-3ea942dc6deb" alt=""><figcaption></figcaption></figure>

nous obtenons un reverse-shell avec le compte www-data,

<figure><img src="https://3839766064-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxQeXO8rMJOSwaAmFiOY8%2Fuploads%2FOIoEkg7oWlkvCKGc5u5C%2FScreenshot_8.png?alt=media&#x26;token=b290bf7c-e3e4-43eb-99e5-c4cdd919c588" alt=""><figcaption></figcaption></figure>

Nous pouvons récupérer le flag user et passer à l'élévation de privilège



<mark style="color:yellow;">**Elevation de privilèges :**</mark>&#x20;

Je configure un serveur python sur ma machine et transfert linpeas.sh sur la machine victime&#x20;



<figure><img src="https://3839766064-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxQeXO8rMJOSwaAmFiOY8%2Fuploads%2FHLWTTzYgGOYdJRdXeB4C%2FScreenshot_9.png?alt=media&#x26;token=032c618d-9436-4616-ade0-2f6f850be241" alt=""><figcaption></figcaption></figure>

N'oubliez pas de lui mettre les bonnes permissions et lancez-le



<figure><img src="https://3839766064-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxQeXO8rMJOSwaAmFiOY8%2Fuploads%2FLopTcLeQUtgUkFeRzWPu%2FScreenshot_10.png?alt=media&#x26;token=44e7a7dd-8c86-4410-a7a6-cb27453efbf9" alt=""><figcaption></figcaption></figure>

Nous trouvons dans le scan, des credentials d'un fichier php d'une database, appartenant au compte root, essayons de nous connecter en tant que root avec ce mot de passe

Avant ça, rendons notre shell interactif pour avoir accès à la commande `su`&#x20;

`python -c 'import pty;pty.spawn("/bin/bash")'`&#x20;

<figure><img src="https://3839766064-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxQeXO8rMJOSwaAmFiOY8%2Fuploads%2FShzptdDI1XRxvDMYR3Vj%2FScreenshot_11.png?alt=media&#x26;token=ee587aec-a907-48c2-acad-4e4ef9a2eb11" alt=""><figcaption></figcaption></figure>

Nous arrivons à nous connecter en tant que root, et nous pouvons récupérer le flag root :)



J'espère que vous aurez appris quelque chose et apprécié mon write-up

N'hésitez pas à faire la room sur tryhackme : [https://tryhackme.com/room/ignite](https://tryhackme.com/room/ignite)

mon profil tryhackme : [https://tryhackme.com/p/Frozzinours](https://tryhackme.com/p/Frozzinours)
