L’attaque Khunt sur Oracle : quand 1 500 correctifs ne suffisent pas
Lors de la publication de juillet 2026, Oracle a déployé près de 1 500 correctifs critiques. Pourtant, cette vague massive n’a pas suffi à bloquer la tentative de vol d’identifiants orchestrée par le groupe Khunt. Cet incident met en lumière une faille de conception majeure dans nos approches de sécurité : la dépendance exclusive à la patching comme dernier rempart.
En bref
- Échec du patching réactif : Les correctifs publiés le 21 juillet 2026 n’auraient pas empêché l’exfiltration d’identifiants par Khunt.
- Vecteur d’attaque : Exploitation d’une faille logique et d’un défaut de séparation des privilèges dans les composants Oracle WebLogic et Database Cloud.
- Profil de la menace : Khunt opère comme une APT (Advanced Persistent Threat) ciblant les environnements cloud hybrides et les identités de service.
- Conséquence : Vol de tokens SSO, accès persistant aux bases de données sensibles et tentatives de pivoting latéral.
- Leçon clé : La sécurité doit être proactive (détection d’anomalies, segmentation stricte) plutôt que purement réactive (mise à jour des CVE).
Anatomie de l’attaque : au-delà des CVE connues
L’incident Khunt illustre parfaitement la limite des listes de vulnérabilités publiées. Contrairement aux attaques opportunistes qui balayent le web à la recherche de CVE non corrigées, les acteurs étatiques ou les groupes de cybercrime avancés comme Khunt exploitent souvent des failles logiques, des mauvaises configurations par défaut ou des défauts d’architecture qui ne génèrent pas de numéro CVE distinct, ou dont la correction est trop complexe pour être intégrée dans un simple patch binaire.
Dans ce cas précis, l’attaque s’est concentrée sur les flux d’authentification entre les composants Oracle Identity Cloud Service (IDCS) et les instances Oracle Database. Khunt a réussi à intercepter des jetons de session valides avant même que les correctifs de sécurité applicative ne soient déployés. Le mécanisme reposait sur une confusion de contexte d’authentification (Context Confusion).
Les composants Oracle, dans certaines versions antérieures à juillet 2026, permettaient à un service interne de relayer une requête d’authentification avec un niveau de privilège supérieur à celui du client initial, sous couvert d’une validation interne « trustée ». Khunt a exploité cette logique pour :
- Se connecter à un endpoint public avec des droits limités.
- Déclencher une requête interne vers le module de gestion des identités.
- Forcer la génération d’un token d’administration temporaire.
- Exfiltrer ce token via une requête HTTP sortante autorisée (whitelisting des sorties réseau).
Aucun correctif de « buffer overflow » ou de « SQL injection » classique ne pouvait bloquer ce flux, car la requête était syntaxiquement valide et respectait les règles de base de l’API. C’est une faille d’architecture, pas une faille de code classique.
La faiblesse des identités de service et des tokens SSO
Le cœur de la vulnérabilité exploitée par Khunt réside dans la gestion des identités de service (Service Accounts) et des tokens SSO. Dans de nombreuses architectures Oracle Enterprise, les applications utilisent des comptes de service à privilèges élevés pour interagir avec la base de données. Ces comptes sont souvent statiques et possèdent des tokens à longue durée de vie pour faciliter l’intégration.
Khunt a ciblé ces tokens via une technique de Token Replay combinée à l’exploitation des métadonnées d’en-tête HTTP. Voici le schéma technique simplifié de l’attaque :
- Interception passive : Khunt positionne un proxy man-in-the-middle (MITM) sur le réseau interne ou exploite une application tierce qui relaie les requêtes vers Oracle.
- Extraction du Token : Au lieu de casser le mot de passe, ils capturent le
Authorization: Bearer <token>d’une requête légitime. - Élévation de privilèges : En manipulant les en-têtes
X-Forwarded-ForetX-Oracle-Identity-Context, ils forcent le serveur à traiter la requête comme provenant d’un administrateur local. - Persistance : Une fois l’accès obtenu, ils injectent des règles de vue (Views) dans la base de données qui masquent les requêtes d’administrateur réels, créant un état de « double identité ».
Ce type d’attaque est quasi invisible dans les logs standards car les requêtes portent des jetons valides et proviennent d’IPs apparemment autorisées. Les 1 500 correctifs publiés par Oracle visaient principalement des failles de type « Remote Code Execution » (RCE) ou « Denial of Service » (DoS), mais rien pour renforcer la validation cryptographique du contexte d’identité à ce niveau spécifique.
Pourquoi le patching seul échoue
La publication de 1 500 correctifs en une seule vague est une pratique standard pour Oracle, qui regroupe souvent ses mises à jour trimestrielles ou mensuelles. Cependant, cette approche présente trois déficiences majeures face aux APT comme Khunt :
- Le délai d’application : Entre la découverte de la faille par l’attaquant et le déploiement du patch par l’administrateur, il existe une fenêtre d’exploitation (souvent de 48h à 4 semaines). Khunt opère dans cette fenêtre.
- La complexité de l’analyse d’impact : Avec 1 500 correctifs, les équipes IT passent des jours à tester. Pendant ce temps, l’attaquant a déjà compromis les identités.
- L’absence de correction des mauvaises pratiques : Un patch corrige le code, mais il ne corrige pas la configuration. Si l’administrateur autorise les sorties réseau libres ou utilise des comptes de service à privilèges élevés sans rotation, le patch est inefficace contre une attaque logique.
L’incident de juillet 2026 démontre que la sécurité ne peut pas être un processus « batch » trimestriel. Elle doit être continue et contextuelle.
Stratégie de défense : au-delà de l’installation du patch
Pour protéger les environnements Oracle contre ce type de menace, les consultants IT doivent adopter une approche en couches. L’installation des correctifs de juillet 2026 est nécessaire mais insuffisante. Voici les actions concrètes à implémenter immédiatement.
1. Durcissement des identités de service
Supprimez l’utilisation de comptes de service statiques à privilèges élevés. Remplacez-les par des OAuth 2.0 Client Credentials avec des scopes restreints (principe du moindre privilège).
- Action : Audit des comptes
SYS,SYSTEMet des schémas applicatifs. - Config : Limitez la durée de vie des tokens à 15 minutes maximum.
- Commande (SQL) : Vérifiez les privilèges excessifs.
SELECT grantee, privilege, admin_option FROM dba_sys_privs WHERE grantee IN ('APP_USER', 'SERVICE_ACCOUNT');
2. Segmentation réseau stricte (Micro-segmentation)
Khunt a pu exfiltrer les données car les sorties réseau étaient trop permissives.
- Action : Bloquez toutes les connexions sortantes des serveurs Oracle vers Internet, sauf vers les proxies de sécurité autorisés.
- Config (Firewall) :
# Exemple de règle iptables pour bloquer les sorties non autorisées # Autoriser uniquement le trafic vers le proxy interne (10.0.0.5) iptables -A OUTPUT -p tcp --dport 443 -d 10.0.0.5 -j ACCEPT iptables -A OUTPUT -p tcp --dport 443 -j DROP
3. Détection d’anomalies sur les flux d’authentification
Installez des agents de détection qui analysent le pattern d’accès, pas juste la validité du token.
-
Indicateurs à surveiller :
- Accès à des objets sensibles (tables
HR,FINANCE) depuis des IP inhabituelles. - Taux de requêtes anormalement élevé sur les endpoints d’authentification.
- Utilisation de tokens d’administrateur par des comptes de service applicatifs.
- Accès à des objets sensibles (tables
-
Outil recommandé : Intégration des logs Oracle Audit avec un SIEM (Splunk, Elastic) et application de règles de corrélation.
4. Rotation automatique des secrets
Les identités volées par Khunt restent valides tant qu’elles ne sont pas révoquées. La rotation manuelle est trop lente.
- Action : Utilisez un gestionnaire de secrets (HashiCorp Vault, AWS Secrets Manager) pour générer des credentials dynamiques pour les connexions JDBC/ODBC.
- Processus :
- L’application demande un secret temporaire à Vault.
- Vault génère un identifiant unique avec un TTL de 1h.
- L’application se connecte à Oracle avec cet identifiant.
- Oracle autorise l’accès et le compte est supprimé après expiration.
Bonnes pratiques pour consultants IT
En tant qu’experts, vous devez conseiller vos clients sur les points suivants pour éviter de subir les prochaines attaques de type Khunt :
- Refusez la sécurité « check-box » : Ne considérez jamais la tâche comme terminée juste parce que les CVE sont corrigées. Demandez toujours : « Que se passe-t-il si l’attaquant possède déjà un token valide ? »
- Audit des dépendances tierces : Les attaques sur Oracle viennent souvent via des applications web tierces qui se connectent à la base. Auditiez les applications qui utilisent les drivers JDBC/ODBC.
- Principe de moindre privilège radical : Un compte de service d’application ne doit JAMAIS avoir le privilège
DBAouALTER SYSTEM. Si votre application a besoin de créer des tables, utilisez un compte dédié avec uniquement le privilègeCREATE TABLEsur le schéma spécifique. - Surveillance des requêtes SQL : Activez l’audit des requêtes DML (Insert, Update, Delete) sur les tables sensibles. Une requête
SELECT *massive est un indicateur clair d’exfiltration. - Simulation d’attaques (Red Teaming) : Faites auditer vos environnements Oracle par des équipes spécialisées qui simulent des attaques de type « Context Confusion » et « Token Theft ». Les scans de vulnérabilités classiques (Nessus, Qualys) ne détecteront pas ces failles logiques.
Points cles
L’incident Khunt de juillet 2026 est un rappel brutal que la sécurité des systèmes d’information ne se résume pas à l’installation de correctifs. Face à des acteurs sophistiqués qui exploitent les failles logiques et les configurations par défaut, la défense doit être contextuelle, dynamique et basée sur le comportement.
Les 1 500 correctifs d’Oracle sont une base nécessaire, mais ce n’est pas une solution suffisante. La véritable protection réside dans la segmentation réseau stricte, la gestion dynamique des identités et la détection active des anomalies. En tant que consultants IT, votre valeur ajoutée ne se mesure plus à votre capacité à appliquer des patches, mais à votre capacité à architecturer des systèmes où l’attaquant, même avec un accès initial, ne peut ni s’élever en privilèges ni exfiltrer des données sans être détecté immédiatement.
La sécurité moderne est une discipline de la confiance zéro (Zero Trust). Chaque requête, chaque token, chaque connexion doit être vérifiée dans son contexte, pas seulement dans sa validité technique. C’est cette philosophie qui permet de résister aux attaques que les listes de CVE ne peuvent pas prédire.
Source : ChannelNews