Casino Royale: 1 VulnHub (Writeup)
Skills:
Web Enumeration
Abusing PokerMax - SQLI (SQL Injection)
Manual Blind SQLI (SQL Injection) - Python Scripting
Pokermax players management
Virtual Hosting
Snowfox CMS Exploitation - Cross-Site Request Forgery (Add Admin) [CSRF]
Abusing the SMTP service to send a fraudulent email in order to exploit the CSRF
Information Leakage
XXE Attack - XML External Entity Injection (Reading internal files)
FTP Brute Force - Hydra
Uploading malicious PHP file + Bypassing Restiction
Information Leakage - Reading config files
Abusing SUID privilege [Privilege Escalation]
Reconnaissance:
Création de l'espace de travail :
Nous établirons notre espace de travail en créant trois dossiers pour stocker les contenus importants, les exploits et les résultats de la reconnaissance à l'aide de Nmap.

Reconnaissance de l'adresse IP via arp-scan :
Utilisation de la commande arp-scan pour détecter l'adresse IP de la machine:

Recherche des ports ouverts avec Nmap : Exploration des ports ouverts et exportation dans le fichier "allPorts" dans le répertoire Nmap :

Analyse des ports ouverts avec extractport : Utilisation de la fonction extractport pour afficher de manière synthétique les ports ouverts et les copier dans le presse-papiers.

Scan de la version des ports avec Nmap : Utilisation de Nmap pour scanner la version des ports et extraction des informations dans le fichier "targeted" :

Identification de la version de la machine avec WhatWeb : Utilisation de WhatWeb pour scanner le site internet et identifier la version de la machine (Ubuntu) et d'Apache :

Détection des technologies du site avec Wappalyzer :
Utilisation de l'extension Wappalyzer sur Google Chrome pour détecter les technologies utilisées sur le site internet.

Script de reconnaissance de directoire pour les ports 80 et 8081 :
Utilisation de nmap avec le script http-enum sur les ports 80 et 8081 de l'adresse IP 192.168.71.142. Le résultat est enregistré dans le fichier webScan.


Vulnerabilité Searchsploit:
Recherche de vulnérabilités avec Searchsploit
Après avoir identifié une page web "pokermax", utilisation de l'outil Searchsploit pour rechercher des vulnérabilités potentielles.

Identification d'un panneau d'authentification admin:
Découverte d'un panneau d'authentification admin. En utilisant un script JavaScript dans la console, la variable ValidUserAdmin est modifiée à "administrateur", permettant l'accès à configure.php de pokeradmin.



Vulnérabilité SQL Injection
Détection de la vulnérabilité d'injection SQL:

Identification d'une vulnérabilité d'injection SQL sur le site internet. Utilisation de BurpSuite pour intercepter le trafic.

Découverte du Nombre de Colonnes avec ORDER BY
Tentative de Listing des Tables avec UNION SELECT
Utilisation d'une Injection SQL basée sur le Temps

Automatisation avec Python pour Extraire le Nom de la Base de Données

Automatisation avec Python pour Extraire le Nom de toutes les Base de Données

Automatisation avec Python pour Extraire le Nom des tables:

Automatisation avec Python pour Extraire le Nom des colonnes:

Automatisation avec Python pour Extraire le contenue des colonnes username et password:

Détection de la Nécessité de Virtual Hosting sur le Site Web Admin Manage:
En retournant sur le site web "admin manage", une indication suggère que le site nécessite le virtual hosting.


Identification de l'Email de l'Admin du CMS:
Sur le site, l'email de l'admin du CMS est "[email protected]". Les instructions indiquent d'envoyer un email par le port 25 avec le sujet contenant le nom du "manage player".

Identification du CMS Snow Fox :
L'analyse du nouveau site révèle qu'il utilise un CMS appelé Snow Fox.

Vulnérabilité CSRF:
Recherche sur SearchExploit pour le CMS Snow Fox, qui révèle une vulnérabilité CSRF.

Fichier HTML Vulnérable :
Tentative d'Attaque CSRF pour Créer un Compte Admin via Snow Fox CMS
Se connecter via telnet sur le port SMTP 25.

Envoyer un email à "[email protected]" avec le liens de notrre serveur python3 HTTP avec le fichier.html vulnérable.

Connexion avec le Compte Admin du CMS :
Tentative de connexion avec les nouveaux identifiants, résultant en la création d'un compte admin sur Snow Fox CMS.

Suite à l'exploitation de la vulnérabilité CSRF, un compte admin du CMS Snow Fox a été créé.

Identification d'une Piste dans la Description d'un Utilisateur
Dans la description d'un utilisateur du CMS, une piste supplémentaire indique un répertoires à suivre.

Vulnérabilité XXE (XML External Entity Injection) :

Analyse du Code Source (Structure XML) Intercepté avec BurpSuite


Tentative d'Attaque XXE (XML External Entity Injection)
Modification de la méthode de la requête de GET à POST.

Essai d'injection d'un modèle XXE dans la requête POST.
Observation de la manière dont le serveur interprète le modèle XXE.

Pour accéder aux fichiers système, nous devrions créer une nouvelle entité, par exemple, "myFile", de la manière suivante :
<!DOCTYPE foo [<!ENTITY myFile SYSTEM "file:///etc/passwd">]>
Ensuite, dans une variable, nous devrions poster le résultat avec "&myFile" comme ceci :

Identification d'un utilisateur "ftpUserULTRA

FTP Brute Force - Hydra:
Attaque de Force Brute sur le Protocole FTP avec Hydra

Utilisation d'hydra pour lancer une attaque de force brute sur le protocole FTP avec l'utilisateur "ftpUserULTRA".

Identification réussie du mot de passe "bankbank".

Exploration des Capacités de Listage de Répertoires sur le répertoires /ultra-access-view:
Observation de la capacité de lister les répertoires sur la route /ultra-access-view.

Ajout d'un Fichier cmd.php pour une Reverse Shell:
Tentative d'ajout au serveur, mais échec en raison de la configuration FTP restrictive.

Téléchargement du Fichier cmd.php sans Extension
Téléchargement du fichier cmd.php sans extension en contournant la restriction FTP.

Renommage du Fichier avec Extension 3 pour Contourner les Restrictions:
Renommage du fichier en ajoutant l'extension "3" car le serveur accepte uniquement les fichiers avec l'extension "php".

Refus d'Accès au Fichier après le Renommage:
Le serveur refuse l'accès au fichier, indiquant que les droits nécessaires sont manquants.

Interprétation du Fichier cmd.php après Autorisation
Le fichier cmd.php est finalement interprété après l'obtention des droits d'accès nécessaires.

Exécution d'une Reverse Shell pour Accéder à la Machine:
Réussite de l'accès à la machine avec succès.

Traitement du Terminal pour Surmonter les Privilèges
Élévation de privilèges
Surmontage des privilèges pour rechercher des fichiers avec des droits SUID :

Exécution d'un binaire cherchant un fichier "run.sh" dans le répertoire /tmp sans route spécifique.

Création du fichier "run.sh" dans /tmp avec le contenu suivant pour obtenir un shell root :

FLAG CAPTURED :)

Mis à jour
Ce contenu vous a-t-il été utile ?