Craquer le service caché

HydraHydraBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce défi, vous utiliserez Hydra pour déchiffrer les identifiants d'un service caché s'exécutant sur un serveur distant. Le service est protégé par l'authentification HTTP Basic (authentification HTTP de base). Votre objectif est de découvrir à la fois le nom d'utilisateur et le mot de passe pour accéder aux données cachées.

Pour ce faire, vous configurerez d'abord l'environnement en créant les répertoires nécessaires et les listes de mots (wordlists) contenant des noms d'utilisateur et des mots de passe potentiels. Ensuite, vous créerez un simple serveur HTTP avec une authentification de base en utilisant Python. Enfin, vous utiliserez Hydra pour forcer (brute-force) les identifiants en utilisant les listes de mots créées et accéder aux données secrètes.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL hydra(("Hydra")) -.-> hydra/HydraGroup(["Hydra"]) hydra/HydraGroup -.-> hydra/target_ip("Target IP Specification") hydra/HydraGroup -.-> hydra/target_service("Target Service Selection") hydra/HydraGroup -.-> hydra/output_saving("Output File Saving") subgraph Lab Skills hydra/target_ip -.-> lab-550719{{"Craquer le service caché"}} hydra/target_service -.-> lab-550719{{"Craquer le service caché"}} hydra/output_saving -.-> lab-550719{{"Craquer le service caché"}} end

Crack the Hidden Service

Un service secret s'exécute sur un serveur distant, protégé par l'authentification HTTP Basic (authentification HTTP de base). Pouvez-vous utiliser Hydra pour découvrir le nom d'utilisateur et le mot de passe corrects afin d'accéder aux données cachées ?

Tasks

  • Utilisez Hydra pour attaquer par force brute (brute-force) le service HTTP sur localhost port 8000, en utilisant les listes de noms d'utilisateur et de mots de passe fournies.
  • Identifiez les identifiants corrects à partir de la sortie d'Hydra et enregistrez le mot de passe dans le fichier found_password.txt.

Requirements

  1. Vous devez exécuter la commande hydra dans le répertoire /home/labex/project/wordlists.
  2. Utilisez le fichier de liste de noms d'utilisateur nommé usernames.txt et le fichier de liste de mots de passe nommé passwords.txt.
  3. Ciblez le service HTTP s'exécutant sur localhost au port 8000.
  4. Utilisez le module http-get / dans Hydra pour effectuer l'attaque.
  5. Enregistrez le mot de passe correct dans le fichier found_password.txt à /home/labex/project/found_password.txt.

Examples

Sortie Hydra réussie :

[DATA] attacking http-get://localhost:8000/
[8000][http-get] host: localhost   login: [USERNAME]   password: [PASSWORD]
1 of 1 target successfully completed, 1 valid password found

Remplacez [USERNAME] et [PASSWORD] par les identifiants réels trouvés par Hydra.

Hints

  • N'oubliez pas de spécifier le numéro de port correct en utilisant l'option -s.
  • Le mot de passe correct ne se trouve pas dans le fichier passwords.txt. Vous devrez trouver un autre moyen de déchiffrer le mot de passe.
  • Envisagez de créer votre propre liste de mots de passe avec des mots de passe courants.
✨ Vérifier la solution et pratiquer

Summary

Dans ce défi, l'objectif est de déchiffrer l'authentification HTTP Basic (authentification HTTP de base) protégeant un service caché s'exécutant sur un serveur distant. En utilisant Hydra, vous avez découvert à la fois le nom d'utilisateur et le mot de passe requis pour accéder au service.

Le défi consiste à mettre en place un environnement simulé, notamment en créant des répertoires pour les listes de mots (wordlists) et le serveur HTTP, en générant des listes de noms d'utilisateur et de mots de passe, et en créant un serveur HTTP basé sur Python qui nécessite une authentification. Hydra est ensuite utilisé pour attaquer par force brute (brute-force) les identifiants en utilisant les listes de mots créées contre le serveur HTTP en cours d'exécution sur le port 8000.