CVE-2026-40179 in Prometheusinformation

Résumé

par VulDB • 31/05/2026

Prometheus est un système de surveillance open-source et une base de données de séries temporelles. Les versions 3.0 à 3.5.1 et 3.6.0 à 3.11.1 présentent des vulnérabilités de type cross-site scripting (XSS) stockées dans plusieurs composants de l'interface web de Prometheus, où les noms de métriques et les valeurs des étiquettes (labels) sont injectés dans innerHTML sans être échappés. Dans l'interface Mantine UI et l'ancienne interface React UI, les infobulles des graphiques sur la page Graph affichent les noms de métriques contenant du HTML/JavaScript sans les assainir (sanitization). Dans l'ancienne interface React UI, les résultats de la recherche floue de l'explorateur de métriques utilisent dangerouslySetInnerHTML sans échappement, et les infobulles des cellules de la heatmap interpolent les valeurs des étiquettes sans les assainir. Avec Prometheus v3.x par défaut pour la validation des noms de métriques et d'étiquettes en UTF-8, des caractères tels que , et " sont désormais valides dans les noms de métriques et les étiquettes. Un attaquant capable d'injecter des métriques via une cible de scrape compromise, un point de terminaison remote write ou un récepteur OTLP peut exécuter du JavaScript arbitraire dans le navigateur de tout utilisateur de Prometheus qui consulte la métrique dans l'interface Graph, permettant potentiellement l'exfiltration de configuration, la suppression de données ou l'arrêt de Prometheus en fonction des indicateurs activés. Ce problème a été corrigé dans les versions 3.5.2 et 3.11.2. Si les développeurs ne peuvent pas mettre à jour immédiatement, les contournements suivants sont recommandés : s'assurer que le récepteur remote write (--web.enable-remote-write-receiver) et le récepteur OTLP (--web.enable-otlp-receiver) ne sont pas exposés à des sources non fiables ; vérifier que toutes les cibles de scrape sont fiables et ne sont pas sous le contrôle de l'attaquant ; éviter d'activer les points de terminaison d'administration ou de mutation de l'API (par exemple, --web.enable-admin-api ou --web.enable-lifecycle) dans les environnements où des données non fiables peuvent être ingérées ; et s'abstenir de cliquer sur des liens non fiables, en particulier ceux contenant des fonctions telles que label_replace, car ils peuvent générer des noms et valeurs d'étiquettes empoisonnés.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Responsable

GitHub M

Réserver

09/04/2026

Divulgation

16/04/2026

Modérer

accepté

Entrée

VDB-357845

CPE

prêt

EPSS

0.00259

KEV

non

Activités

très faible

Sources

Want to stay up to date on a daily basis?

Enable the mail alert feature now!