CVE-2026-83021 : exécution de code à distance non authentifiée dans le web container d'Oracle WebLogic Server
SCORE DE MENACE HERMES & EFFONDREMENT DU PÉRIMÈTRE WEBLOGIC
Cible :Oracle WebLogic Server — Web Container principal, Request Dispatcher & sous-système ClassLoader Le score CVSS v3.1 et le Hermes Threat Score attribuent tous deux à CVE-2026-83021 la note maximale de 10.0 / EXTREME 100. Oracle WebLogic Server propulse des milliers d'applications d'entreprise hautement critiques. La vulnérabilité réside dans le cœur du pipeline de traitement des requêtes HTTP du Web Container. Un attaquant non authentifié peut exploiter des failles de normalisation d'URI et de routage de servlets pour obtenir une exécution de code immédiate sans interaction utilisateur.
SÉVÉRITÉ AGENTIQUE HASS & COMPROMISSION DU CONTENEUR JAVA
Cible :Serveur d'applications Java EE d'entreprise, conteneur de servlets & réseau de cluster La compromission du Web Container WebLogic permet aux attaquants de déployer des applications WAR malveillantes, d'injecter du bytecode dans les classloaders JVM et de capturer les identifiants en transit sur le cluster.
CVE-2026-83021: Unauthenticated Remote Code Execution in Oracle WebLogic Server Web ContainerVULNÉRABILITÉ
Software platform affected by security vulnerabilities and agentic attack patterns.
🔍 Pourquoi cette relation ? (Preuves & Provenance)
“Confirmed security vulnerability in Oracle WebLogic Server documented in Hermes dossier.”
- [vulnerability_report]
- [government_confirmation]CISA verified active exploitation in the wild and mandated federal remediation deadline in KEV entry. — Source : Cybersecurity & Infrastructure Security Agency (CISA): CISA Adds CVE-2026-59822 to Known Exploited Vulnerabilities Catalog (Fiabilité : VERY_HIGH)
1. Contexte technique & matrice des versions affectées
Section intitulée « 1. Contexte technique & matrice des versions affectées »| Paramètre | Spécification technique | Impact opérationnel |
|---|---|---|
| Identifiant CVE | CVE-2026-83021 | Bulletin Oracle CSPU Septembre 2026 |
| Classe de vulnérabilité | Exécution de code à distance (CWE-287 / CWE-20 / CWE-94) | Traversée de chemin et invocation de servlets privilégiées |
| Composant affecté | WebLogic Web Container (weblogic.servlet) | Pipeline de traitement des requêtes HTTP sur ports 7001 / 7002 |
| Protocole / port | HTTP / HTTPS (Ports par défaut 7001, 7002, 80, 443) | Exposé sur les passerelles web et proxys d’entreprise |
| Authentification requise | Aucune (PR:N) | Requête HTTP directe sans session ni cookie |
| Interaction utilisateur | Aucune (UI:N) | Exécution automatisée à la réception de la requête |
| Impact sur le périmètre | Étendu (S:C) | S’étend à l’ensemble du cluster de domaine et aux bases de données |
| Privilèges obtenus | Contrôle total du serveur hôte | Exécution de code arbitraire avec le compte oracle/weblogic |
| Versions affectées | 12.2.1.4.0, 14.1.1.0.0, 14.1.2.0.0 | Branches de production actives de WebLogic Server |
| Cible de remédiation | Patch Set Update (PSU) de septembre 2026 | Installer le PSU via OPatch et restreindre les endpoints |
2. Anatomie de la vulnérabilité & cause racine
Section intitulée « 2. Anatomie de la vulnérabilité & cause racine »Le Web Container de WebLogic est chargé d’analyser les URI des requêtes HTTP, de les associer aux contextes de servlets enregistrés et d’appliquer les contraintes de sécurité (security-constraint dans web.xml).
Avant le correctif de septembre 2026 :
- Une divergence critique existait entre la manière dont le Web Container normalisait les chemins URL contenant des paramètres matriciels, des séquences d’encodage de traversée (
..%2f) et des points-virgules doublement encodés (%253b). - Les filtres de sécurité vérifiant si une ressource nécessite une authentification examinaient l’URI non normalisée, concluant à tort que la ressource demandée était publique.
- Le dispatcher interne de servlets nettoyait ensuite ces caractères pour router la requête vers sa cible réelle, atteignant ainsi des servlets d’administration internes sans exiger de session authentifiée.
- L’attaquant peut exploiter ce comportement pour déployer des web shells JSP ou appeler directement des classes internes pour exécuter des commandes système.
3. Schéma de l’attaque & mécanique de militarisation
Section intitulée « 3. Schéma de l’attaque & mécanique de militarisation »sequenceDiagram autonumber actor Attaquant as Attaquant distant (Non authentifié) participant WLS as Entrée WebLogic (Port 7001) participant Conteneur as Web Container (Normalisation URI) participant Dispatcher as Dispatcher interne de servlets participant FS as Système de fichiers (tmp/_WL_user/)
Attaquant->>WLS: Envoi de requête POST avec contournement de chemin (CVE-2026-83021) WLS->>Conteneur: Évaluation des contraintes sur l'URI non normalisée Conteneur->>Conteneur: Contournement du filtre d'authentification (considéré comme ressource publique) Conteneur->>Dispatcher: Routage normalisé vers la servlet de déploiement interne Dispatcher->>FS: Dépôt du web shell JSP dans le docroot (/tmp/_WL_user/...) FS-->>Attaquant: Retour HTTP 200 OK (Chemin du shell confirmé) Attaquant->>FS: Requête vers le web shell (/bea_wls_internal/shell.jsp?cmd=whoami) FS-->>Attaquant: Exécution de commandes sous le compte 'oracle'4. Ingénierie de détection & chasse aux menaces
Section intitulée « 4. Ingénierie de détection & chasse aux menaces »title: Tentative RCE par contournement d'URI WebLogicid: cve-2026-83021-wls-rce-frstatus: productiondescription: Détecte les modèles de traversée de chemin et paramètres matriciels ciblant les servlets WebLogic.references: - https://www.oracle.com/security-alerts/cspusep2026.htmlauthor: Équipe DFIR Hermes Codexdate: 2026-09-17modified: 2026-09-22logsource: category: webserver product: oracle_weblogicdetection: selection: cs-method: 'POST' cs-uri-stem|contains: - 'bea_wls_internal' - 'console' cs-uri-stem|re: '(%2e%2e|%253b|\.\.;|/\.\./)' condition: selectionfalsepositives: - Aucun faux positif attendu pour cette signature spécifiquelevel: criticaltags: - attack.initial_access - attack.t1190 - attack.persistence - attack.t1505.003alert http any any -> any [7001,7002,80,443] ( msg:"HERMES MENACE - Tentative RCE Web Container Oracle WebLogic (CVE-2026-83021)"; flow:to_server,established; content:"POST"; http_method; pcre:"/(%2e%2e%253b|\.\.;.*bea_wls_internal|%252e%252e)/i"; threshold:type limit, track by_src, count 1, seconds 60; reference:cve,2026-83021; reference:url,www.oracle.com/security-alerts/cspusep2026.html; classtype:attempted-admin; sid:202683021; rev:2;)5. Triage forensique & playbook de réponse à incident
Section intitulée « 5. Triage forensique & playbook de réponse à incident »- Analyse des journaux d’accès HTTP WebLogic :
Examiner les fichiers sous
$DOMAIN_HOME/servers/<server_name>/logs/access.log:Fenêtre de terminal grep -E "(%2e|%3b|\.\.;|bea_wls_internal)" $DOMAIN_HOME/servers/*/logs/access.log - Recherche de web shells déposés :
Sonder les répertoires temporaires et d’extraction de WebLogic :
Fenêtre de terminal find $DOMAIN_HOME/servers/*/tmp/_WL_user/ -name "*.jsp" -mtime -14 -lsfind $DOMAIN_HOME/servers/*/stage/ -name "*.war" -mtime -14 -ls - Analyse de la lignée de processus :
Vérifier les processus enfants anormaux engendrés par le serveur Java WebLogic :
Fenêtre de terminal pstree -p $(pgrep -f "weblogic.Server")
6. Remédiation, correctifs & durcissement
Section intitulée « 6. Remédiation, correctifs & durcissement »-
Action immédiate T0 (< 24h) — appliquer le patch set update (PSU) Oracle de septembre 2026 : Installer le correctif officiel via OPatch :
Fenêtre de terminal cd $ORACLE_HOME/WLS_PATCH_SEP2026opatch applyRedémarrer l’ensemble des AdminServers, ManagedServers et NodeManagers.
-
Mitigation T0 — restreindre l’exposition du périmètre et les accès d’administration : Si le patch ne peut pas être déployé dans l’immédiat :
- Bloquer l’accès externe aux ports
7001et7002sur les pare-feu périmétriques. - Configurer les proxys inverses (NGINX, F5 BIG-IP, Apache) pour rejeter les points-virgules et points encodés dans l’URI :
if ($request_uri ~* "(\;|\%3b|\%2e\%2e|\.\.)") {return 403;}
- Bloquer l’accès externe aux ports
-
Durcissement tactique T1 (< 7j) — désactiver le tunneling et les servlets internes : Désactiver le HTTP Tunneling dans la console d’administration WebLogic (Environnement > Serveurs > [Nom du serveur] > Protocoles > Général et décocher Activer le tunneling).