Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

FluxContactConfidentialité© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2023-7028 — Exploit pour la prise de contrôle de compte GitLab via CVE-2023-7028, démontrant le contournement de la réinitialisation de mot de passe en injectant l'e-mail de l'attaquant pour recevoir le jeton de réinitialisation. | Kitploit
Outils/GitHubGitHub/thanhlam-attt/cve-2023-7028
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionAuthentification
GitHubthanhlam-attt/cve-2023-7028

CVE-2023-7028

Exploit pour la prise de contrôle de compte GitLab via CVE-2023-7028, démontrant le contournement de la réinitialisation de mot de passe en injectant l'e-mail de l'attaquant pour recevoir le jeton de réinitialisation.

Voir le dépôt
2111il y a 2 ansPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Introduction

  • GitLab est un gestionnaire de dépôts de code hébergé sur le web, largement adopté, offrant une plateforme complète pour la gestion du code source, l'intégration, la maintenance et la collaboration dans les projets de développement logiciel.
  • CVE-2023-7028 est une vulnérabilité permettant à un attaquant de prendre le contrôle d'un compte utilisateur (Account TakeOver) via le formulaire reset password.
  • La vulnérabilité affecte les versions suivantes de GitLab :
    • 16.1 à 16.1.5
    • 16.2 à 16.2.8
    • 16.3 à 16.3.6
    • 16.4 à 16.4.4
    • 16.5 à 16.5.5
    • 16.6 à 16.6.3
    • 16.7 à 16.7.1

Analyse de la vulnérabilité

  • La vulnérabilité se situe dans le formulaire reset password, plus précisément au niveau du point de terminaison API POST /users/password de GitLab. L'attaquant exploite la faille dans le champ email en contournant la vérification du format incorrect, ce qui lui permet d'insérer son propre email. GitLab envoie alors le reset token à l'email de l'attaquant.
  • Analyse de la vulnérabilité :
    • Sur la base de ce code fourni par GitLab, nous observons ce qui suit :

      1

      • La partie traitant la demande de réinitialisation du mot de passe se trouve dans le fichier spec/controllers/passwords_controller_spec.rb, qui permet de saisir plusieurs emails à partir de l'entrée, mais sans aucun mécanisme de vérification d'email pour confirmer qu'il s'agit bien de l'email de l'utilisateur.

      • Le serveur exige uniquement authenticity_token (un jeton caché anti-CSRF) de la part de l'attaquant dans la soumission du formulaire pour envoyer la demande de réinitialisation du mot de passe.

        2

      → Nous pouvons donc insérer notre propre email pour recevoir le reset token de réinitialisation du mot de passe de l'email de la victime, et ainsi prendre le contrôle du compte utilisateur.

Exploitation de la vulnérabilité

  • En interceptant la demande de réinitialisation du mot de passe, nous obtenons ce qui suit :

    3

    • Le formulaire comprend un authenticity_token utilisé pour se protéger contre le CSRF ; le nom de l'email de l'utilisateur dont le mot de passe est réinitialisé est placé dans la variable user[email].
  • Ajoutez l'email de l'attaquant avec le payload suivant &user[email][]=victim_email&user[email][]=attacker_email et envoyez la demande :

    4

    → En vérifiant l'email de l'attaquant, nous constatons que le jeton de réinitialisation du mot de passe a été envoyé et qu'il est possible d'y accéder pour modifier le mot de passe.

    5

    6

Télécharger l’outil