Atténuation de la vulnérabilité de divulgation de la mémoire CitrixBleed 2 (CVE‑2025‑5777) sur NetScaler avec App & API Protector
Le vendredi 4 juillet 2025, des informations d'exploitation concernant une vulnérabilité de divulgation de la mémoire qui affecte les terminaux Citrix NetScaler ADC et Gateway ont été dévoilées publiquement. Il s'agit d'une faille de pré-authentification qui permet aux attaquants de créer des requêtes malveillantes qui divulguent la mémoire non initialisée des terminaux NetScaler affectés.
Les clients de Citrix ont d'abord été informés de cette vulnérabilité le 17 juin 2025. Depuis, les entreprises de recherche ont révélé des activités autour de la faille, des indicateurs de compromission et une démonstration de faisabilité de l'exploitation. Même si vous avez rapidement corrigé vos terminaux affectés, il est important de vérifier votre exposition maintenant que la démonstration de faisabilité a été rendue publique. Cette faille peut avoir des conséquences désastreuses. En effet, les terminaux affectés peuvent être configurés en tant que VPN, proxy ou serveurs virtuels AAA. Les jetons de session et autres données sensibles peuvent être exposés, ce qui peut conduire à un accès non autorisé aux applications internes, aux VPN, aux réseaux de centres de données et aux réseaux internes.
Terminaux et versions concernés :
- NetScaler ADC et NetScaler Gateway 14.1 AVANT 14.1-43.56
- NetScaler ADC et NetScaler Gateway 13.1 AVANT 13.1-58.32
- NetScaler ADC 13.1-FIPS et NDcPP AVANT 13.1-37.235-FIPS et NDcPP
- NetScaler ADC 12.1-FIPS AVANT 12.1-55.328-FIPS
Depuis la divulgation de l'exploitation, nous avons constaté une augmentation spectaculaire du trafic des outils de détection des failles et d'autres acteurs malveillants en quête de cibles vulnérables. Les clients App & API Protector sont protégés par la règle rapide 3000967, spécialement conçue pour résoudre cette CVE.
Veuillez noter qu'il existe d'autres CVE Citrix, notamment :
CVE‑2025‑6543 : il s'agit d'une attaque par débordement de tampon non authentifié dans Citrix NetScaler ADC/Gateway (mode VPN/AAA) qui peut perturber le flux de contrôle, provoquer un déni de service, ou même entraîner l'exécution de code à distance. Toutefois, aucune démonstration de faisabilité n'est encore publiquement disponible.
CVE‑2025‑5349 : cette vulnérabilité est due à une faille de contrôle d'accès incorrect affectant l'interface de gestion NetScaler, ce qui peut mener à des actions administratives non autorisées. Aucune démonstration de faisabilité n'est publiquement disponible à ce jour.
Informations sur cette vulnérabilité
Le code sous-jacent de Citrix NetScaler est écrit en C ou C++, et la vulnérabilité apparaît au sein de la fonction d'authentification, qui traite les paramètres de connexion.
La cause première est l'utilisation d'une variable de connexion non initialisée (destinée à contenir les détails du nom d'utilisateur) combinée à une mauvaise gestion de la mémoire, à un manque de validation des entrées et à l'absence de gestion des erreurs dans la logique d'authentification Citrix NetScaler. Étant donné que C et C++ n'initialisent pas automatiquement les variables à zéro, null ou toute autre valeur spécifiée, les variables non initialisées peuvent pointer vers un espace mémoire aléatoire sur la pile et permettre aux attaquants d'accéder à des données imprévues/sensibles résidant dans cet espace mémoire (essentiellement des données résiduelles provenant d'opérations ou de traitements passés).
La vulnérabilité cible le chemin d'URL /p/u/doAuthentication.do et ne nécessite aucune authentification, ce qui la rend particulièrement accessible aux pirates puisqu'elle n'exige aucune condition préalable. Cette combinaison de failles a permis aux pirates non authentifiés de divulguer du contenu sensible de la mémoire, et certains acteurs malveillants ont déjà commencé à l'exploiter en conditions réelles. La portée et l'impact complets des victimes et organisations concernées restent encore incertains.
Exploitation de la vulnérabilité
Une requête POST légitime pour effectuer l'authentification inclut des noms de paramètres très attendus tels que login, passwd et des paramètres supplémentaires avec des valeurs correspondantes (Figure 1).
Lors d'une tentative d'exploitation, il y a également une charge utile de taille notable contrôlée par les attaquants dans l'en-tête User-Agent ainsi qu'un corps HTTP, qui peut n'inclure que la chaîne de connexion (Figure 2). Cela rend l'exploitation plus facile et moins risquée.
Pourquoi l'appelle-t-on CitrixBleed ?
Le terme « CitrixBleed » est utilisé car la mémoire peut être divulguée à plusieurs reprises en envoyant la même charge utile. Chaque tentative divulgue une nouvelle partie de la mémoire de la pile, ce qui « purge » (en anglais « bleed ») efficacement les informations sensibles. L'en-tête User-Agent allongé est utilisé pour injecter une séquence reconnaissable dans la pile. En inondant la mémoire avec une chaîne aléatoire suffisamment longue, telle que THR-WAF-RESEARCH répétée plusieurs fois, l'attaquant peut s'assurer que les octets de la pile non initialisés sont divulgués. Ces marqueurs distinctifs apparaissent à l'intérieur des balises XML <InitialValue>…</InitialValue> dans le corps de réponse HTTP. Cela confirme la divulgation et expose des fragments de la mémoire qui contiennent généralement des données sensibles, comme des variables de session, des jetons, des mots de passe, des noms d'utilisateur, ou des valeurs de configuration.
Tout comme la première vulnérabilité CitrixBleed (CVE‑2023‑4966) dévoilée en 2023, qui divulguait du contenu de la mémoire via un en-tête d'hôte incorrect, CitrixBleed 2 (CVE‑2025‑5777) divulgue également du contenu de la mémoire, mais cette fois-ci via l'utilisation d'une variable non initialisée. Le premier problème a été atténué par les serveurs fantômes d'Akamai par défaut, grâce à un système strict de validation des en-têtes d'hôte, tandis que CitrixBleed 2 nécessite une règle ASE (Adaptive Security Engine) dédiée.
Voici un récapitulatif simple des étapes de l'exploitation :
1) Reconnaissance : rechercher des instances Citrix NetScaler ADC/Gateway exposées.
2) Énumération : vérifier si la cible exécute une version vulnérable.
3) Exploitation : envoyer une requête spécialement conçue à /p/u/doAuthentication.do avec un en-tête User-Agent long (aucune authentification requise).
4) Divulgation : le terminal répond en divulguant du contenu de la mémoire de la pile dans les balises XML <initialValue>.
5) Phase de purge : répéter les étapes 3 à 4 afin de provoquer des fuites continues de mémoire de la pile (Citrixbleed 2) du même terminal cible.
6) Après l'exploitation : les attaquants utilisent les données divulguées à des fins malveillantes, par exemple pour s'authentifier à l'aide de jetons de session ayant été divulgués.
Atténuation à l'aide d'App & API Protector
En réponse à CitrixBleed 2, l'équipe de recherche sur les menaces WAF a déployé une nouvelle règle rapide le 7 juillet 2025, configurée avec l'action par défaut « Alert » (alerte) :
3000967 - détection d'une divulgation de la mémoire sur Citrix NetScaler (CVE-2025-5777)
Une fois qu'il a été confirmé que la règle était correcte, l'action de règle rapide recommandée a été définie sur l'action par défaut « Deny » (refuser) le 8 juillet 2025.
Informations de l'exploitation
Le 8 juillet, nous avons observé plus de 200 000 requêtes POST ciblant le chemin d'URL /p/u/doAuthentication.do sur plusieurs noms d'hôte et provenant de diverses adresses IP. Cela semble être des tentatives d'analyse à grande échelle visant à identifier les instances NetScaler vulnérables. La Figure 4 illustre un exemple de requête que nous avons détectée au cours de cette activité :
Conclusion
Le groupe Security Intelligence (SIG) d'Akamai continuera de surveiller, générer des rapports et créer des mesures d'atténuation des menaces telles que celles-ci pour nos clients et la communauté de sécurité dans son ensemble. Pour rester au fait des dernières actualités du groupe Security Intelligence d'Akamai, consultez notre page d'accueil de recherche et suivez-nous sur les réseaux sociaux.