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-2017-10271 — Guide de laboratoire étape par étape pour exploiter CVE-2017-10271 (RCE par désérialisation XMLDecoder de WebLogic) avec construction manuelle de charge utile, bypass aveugle de RCE et techniques de post-exploitation incluant la vérification des privilèges et l'exfiltration de données. | Kitploit
Outils/GitHubGitHub/dungsocool/cve-2017-10271
Escalade de PrivilègesAnalyse des VulnérabilitésExploitationExploitation d'Applications WebExfiltration de DonnéesPost-ExploitationTests d'IntrusionApprentissage et Éducation

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

Guide de laboratoire étape par étape pour exploiter CVE-2017-10271 (RCE par désérialisation XMLDecoder de WebLogic) avec construction manuelle de charge utile, bypass aveugle de RCE et techniques de post-exploitation incluant la vérification des privilèges et l'exfiltration de données.

Exploitation de Binaires
Labs et Pratique
GitHubdungsocool/cve-2017-10271

CVE-2017-10271

Voir le dépôt
12il y a 4 moisPas encore vérifié
Partager

LAB 2 - CVE-2017-10271 : Analyse de la désérialisation XMLDecoder de WebLogic

I. Analyse du système

Analyse des journaux système

image.png

  • Service détecté : Oracle WebLogic Server (AdminServer appartenant à base_domain s'exécutant en mode développement).
  • Port de connexion : 7001.
  • Protocoles supportés : http, t3, iiop, ldap, snmp.
  • Évaluation de la surface d'attaque :
    • Le service expose le protocole t3 sur le port 7001. Cette configuration par défaut présente un risque élevé si la version de WebLogic n'est pas corrigée contre les vulnérabilités liées à la désérialisation d'objets Java via RMI (Remote Method Invocation).
    • L'interface de la console d'administration web s'exécute sur le protocole http sur le port 7001, ce qui la rend sensible au scan de répertoires pour les points d'accès sensibles tels que /console/login/LoginForm.jsp.

Une fois les ports ouverts de la cible identifiés, nous utiliserons nmap pour scanner le port afin de déterminer son service en cours.

image.png

Ainsi, la cible exécute un service HTTP avec la version Oracle WebLogic Server 10.3.6.0 - un serveur d'applications Java d'entreprise bien connu, célèbre pour une série de CVE critiques (telles que désérialisation, contournement d'authentification). Cependant, cette information seule ne suffit pas pour conclure à quelle vulnérabilité spécifique le système est vulnérable. Nous devons scanner plus profondément les composants du service web associés.

Nous allons procéder à identifier ses points d'accès sensibles à l'aide de l'outil dirsearch. Comme WebLogic fonctionne sur la plateforme Java, les fichiers .jsp et .xml sont les cibles les plus sensibles. Nous nous concentrerons sur les points d'accès renvoyant un code d'état 200.

dirsearch -u http://192.168.3.137:7001/ -e jsp,xml,html

image.png

  • /console/login/LoginForm.jsp : Le portail de connexion pour l'interface web de la console d'administration WebLogic. C'est une cible importante pour les scénarios de force brute d'identifiants par défaut ou les vulnérabilités de contournement d'authentification (comme CVE-2020-14882).
  • /bea_wls_internal/ : Le répertoire d'application web interne par défaut de WebLogic Server. Ce composant permet d'accéder aux fichiers système statiques et d'interagir avec eux.
  • /wls-wsat/CoordinatorPortType : C'est la découverte la plus critique. La présence de ce chemin avec un code d'état 200 OK confirme que le composant Web Services Atomic Transactions (wls-wsat) est activé et prêt à recevoir des données.
  • /uddiexplorer et /uddi/uddilistener : Il s'agit du composant UDDI Explorer (Universal Description, Discovery, and Integration) intégré par défaut dans WebLogic Server pour la gestion et l'enregistrement des services web. Ce composant est extrêmement célèbre pour la vulnérabilité SSRF (Server-Side Request Forgery) - CVE-2014-4210. Un attaquant peut exploiter l'interface de recherche de registres publics d'UDDI au point d'accès /uddiexplorer/SearchPublicRegistries.jsp pour forcer le serveur WebLogic à envoyer des requêtes HTTP arbitraires vers le réseau interne backend.

⇒ Réflexion : La coexistence de /wls-wsat (risque d'exécution de code à distance via XMLDecoder) et /uddiexplorer (risque SSRF) indique que la surface d'attaque de ce serveur WebLogic est extrêmement large.

Après avoir identifié deux surfaces d'attaque indépendantes coexistantes sur le serveur WebLogic 10.3.6.0, nous analysons les deux directions :

  1. Vulnérabilité SSRF (CVE-2014-4210) au niveau de /uddiexplorer :
    • Impact moyen : Permet d'envoyer des requêtes HTTP indirectes depuis le serveur pour scanner des ports dans le réseau local ou interagir avec des services internes (comme Redis).
    • Limitations : N'accorde pas directement le contrôle au niveau du système d'exploitation (OS Level). L'escalade de SSRF vers RCE dépend fortement de la présence d'autres services mal configurés dans le réseau interne.
  2. Vulnérabilité de désérialisation XMLDecoder (CVE-2017-10271) au niveau de /wls-wsat :
    • Impact : Critique. Permet l'exécution de code à distance arbitraire (RCE) directement sur le serveur avec les privilèges du processus en cours.

⇒ Décision : Dans le modèle de la chaîne d'attaque cybernétique, l'exécution de code à distance (RCE) est toujours l'objectif ultime car elle fournit un contrôle direct et complet du système (compromission totale du système). Une fois la capacité d'exécution de code à distance acquise, l'exploitation de la SSRF via l'application UDDI devient redondante. En effet, à partir d'un shell RCE, nous pouvons effectuer activement des requêtes sur le réseau interne de manière directe, flexible et plus puissante (en utilisant des commandes système comme curl, wget) sans être restreints par les paramètres de l'interface UDDI.

Par conséquent, en termes de logique de priorisation de l'exploitation, nous décidons d'exclure la voie secondaire (SSRF au niveau de /uddiexplorer) et de nous concentrer entièrement sur la recherche : l'exécution de code à distance (RCE) via la vulnérabilité de désérialisation XMLDecoder au niveau de /wls-wsat/CoordinatorPortType.

Analyse du mécanisme de vulnérabilité et tests

La vulnérabilité racine de CVE-2017-10271 se produit car la classe WorkContextXmlInputAdapter de WebLogic utilise l'objet java.beans.XMLDecoder pour analyser les données dans la balise <work:WorkContext>. Par défaut, cette classe XMLDecoder instancie automatiquement toute classe Java définie sous forme de balise XML. À partir de là, nous effectuons la vérification basée sur une interaction comportementale système étape par étape.

Pour vérifier rapidement l'état actif réel de ce servlet, envoyez une requête de sonde HTTP GET standard :

curl -i -s http://192.168.3.137:7001/wls-wsat/CoordinatorPortType

La réponse renvoie HTTP/1.1 200 OK ainsi que la classe d'implémentation CoordinatorPortTypePortImpl, confirmant que le servlet a été chargé avec succès dans la mémoire JVM.

Vérification du traitement des données POST

Étant donné que les servlets de services web sont conçus pour traiter les données SOAP XML via la méthode POST, nous procédons à des tests comparatifs avec deux requêtes POST pour démontrer le pipeline de traitement des données du système :

1. Requête POST SOAP standard

Nous envoyons une enveloppe SOAP XML standard (avec des espaces de noms complets mais sans contenu d'exécution) pour tester la capacité d'analyse normale de l'analyseur.

curl -i -s -X POST "http://192.168.3.137:7001/wls-wsat/CoordinatorPortType" \
-H "Content-Type: text/xml;charset=UTF-8" \
-d "<soapenv:Envelope xmlns:soapenv='http://schemas.xmlsoap.org/soap/envelope/'>soapenv:Header/soapenv:Body/</soapenv:Envelope>"

image.png

  • Résultat : Le système passe sans problème à travers l'analyseur et indique seulement une erreur au niveau de la couche de logique du service backend (Cannot find dispatch method).

Analyse :

Le serveur possède un lecteur XML fonctionnel sur le port POST, prêt à recevoir et décoder toute la structure d'arbre XML envoyée par l'utilisateur. Cela confirme que le pipeline de données allant du client jusqu'à la mémoire de WebLogic est entièrement opérationnel.

Télécharger l’outil