5.9
MEDIUM CVSS 3.1
CVE-2026-59296
Micrometer StatsD and Logging meter registries line-protocol and log injection vulnerability
Description

Using untrusted, non-normalized input as-is for metrics data (such as metric names, tag keys, or tag values) is a dangerous antipattern that general-purpose instrumentation should never perform. Micrometer 1.17.0 Micrometer 1.16.0 - 1.16.6 Micrometer 1.15.0 - 1.15.12 Micrometer 1.14.0 - 1.14.16 Micrometer 1.9.18 and earlier

INFO

Published Date :

Aug. 21, 2026, 11:17 a.m.

Last Modified :

Oct. 16, 2026, 3:10 p.m.

Remotely Exploit :

Yes !
Affected Products

The following products are affected by CVE-2026-59296 vulnerability. Even if cvefeed.io is aware of the exact versions of the products that are affected, the information is not represented in the table below.

No affected product recoded yet

CVSS Scores
The Common Vulnerability Scoring System is a standardized framework for assessing the severity of vulnerabilities in software and systems. We collect and displays CVSS scores from various sources for each CVE.
Score Version Severity Vector Exploitability Score Impact Score Source
CVSS 134c704f-9b21-4f2e-91b3-4a467353bcc0
CVSS 3.1 MEDIUM dcf2e128-44bd-42ed-91e8-88f912c1401d
CVSS 3.1 MEDIUM [email protected]
CVSS 3.1 MEDIUM MITRE-CVE
Solution
Update micrometer libraries and sanitize all user-controlled input used for metrics.
  • Update micrometer-registry-statsd and micrometer-core libraries.
  • Sanitize newline characters in metric names and tags.
  • Validate all user-controlled input before instrumentation.
  • Avoid user input for metric names and tags.
References to Advisories, Solutions, and Tools

Here, you will find a curated list of external links that provide in-depth information, practical solutions, and valuable tools related to CVE-2026-59296.

URL Resource
https://spring.io/security/cve-2026-59296
CWE - Common Weakness Enumeration

While CVE identifies specific instances of vulnerabilities, CWE categorizes the common flaws or weaknesses that can lead to vulnerabilities. CVE-2026-59296 is associated with the following CWEs:

Common Attack Pattern Enumeration and Classification (CAPEC)

Common Attack Pattern Enumeration and Classification (CAPEC) stores attack patterns, which are descriptions of the common attributes and approaches employed by adversaries to exploit the CVE-2026-59296 weaknesses.

CAPEC-3: Using Leading 'Ghost' Character Sequences to Bypass Input Filters Using Leading 'Ghost' Character Sequences to Bypass Input Filters CAPEC-6: Argument Injection Argument Injection CAPEC-7: Blind SQL Injection Blind SQL Injection CAPEC-8: Buffer Overflow in an API Call Buffer Overflow in an API Call CAPEC-9: Buffer Overflow in Local Command-Line Utilities Buffer Overflow in Local Command-Line Utilities CAPEC-10: Buffer Overflow via Environment Variables Buffer Overflow via Environment Variables CAPEC-13: Subverting Environment Variable Values Subverting Environment Variable Values CAPEC-14: Client-side Injection-induced Buffer Overflow Client-side Injection-induced Buffer Overflow CAPEC-24: Filter Failure through Buffer Overflow Filter Failure through Buffer Overflow CAPEC-28: Fuzzing Fuzzing CAPEC-34: HTTP Response Splitting HTTP Response Splitting CAPEC-42: MIME Conversion MIME Conversion CAPEC-43: Exploiting Multiple Input Interpretation Layers Exploiting Multiple Input Interpretation Layers CAPEC-45: Buffer Overflow via Symbolic Links Buffer Overflow via Symbolic Links CAPEC-46: Overflow Variables and Tags Overflow Variables and Tags CAPEC-47: Buffer Overflow via Parameter Expansion Buffer Overflow via Parameter Expansion CAPEC-51: Poison Web Service Registry Poison Web Service Registry CAPEC-52: Embedding NULL Bytes Embedding NULL Bytes CAPEC-53: Postfix, Null Terminate, and Backslash Postfix, Null Terminate, and Backslash CAPEC-64: Using Slashes and URL Encoding Combined to Bypass Validation Logic Using Slashes and URL Encoding Combined to Bypass Validation Logic CAPEC-67: String Format Overflow in syslog() String Format Overflow in syslog() CAPEC-71: Using Unicode Encoding to Bypass Validation Logic Using Unicode Encoding to Bypass Validation Logic CAPEC-72: URL Encoding URL Encoding CAPEC-76: Manipulating Web Input to File System Calls Manipulating Web Input to File System Calls CAPEC-78: Using Escaped Slashes in Alternate Encoding Using Escaped Slashes in Alternate Encoding CAPEC-79: Using Slashes in Alternate Encoding Using Slashes in Alternate Encoding CAPEC-80: Using UTF-8 Encoding to Bypass Validation Logic Using UTF-8 Encoding to Bypass Validation Logic CAPEC-83: XPath Injection XPath Injection CAPEC-84: XQuery Injection XQuery Injection CAPEC-101: Server Side Include (SSI) Injection Server Side Include (SSI) Injection CAPEC-105: HTTP Request Splitting HTTP Request Splitting CAPEC-108: Command Line Execution through SQL Injection Command Line Execution through SQL Injection CAPEC-120: Double Encoding Double Encoding CAPEC-135: Format String Injection Format String Injection CAPEC-250: XML Injection XML Injection CAPEC-267: Leverage Alternate Encoding Leverage Alternate Encoding CAPEC-273: HTTP Response Smuggling HTTP Response Smuggling

We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).

Results are limited to the first 15 repositories due to potential performance issues.

The following list is the news that have been mention CVE-2026-59296 vulnerability anywhere in the article.

The following table lists the changes that have been made to the CVE-2026-59296 vulnerability over time.

Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.

  • CVE Translated by [email protected]

    Oct. 16, 2026

    Action Type Old Value New Value
    Changed Translation Title: Micrometer de Spring, Description: Usar entrada no confiable y no normalizada tal cual para datos de métricas (como nombres de métricas, claves de etiquetas o valores de etiquetas) es un antipatrón peligroso que la instrumentación de propósito general nunca debería realizar. Cuando se utiliza dicha instrumentación insegura, la aplicación se vuelve vulnerable a ataques de inyección y suplantación porque micrometer-registry-statsd y micrometer-core no sanean los caracteres de nueva línea (\n, \r) por defecto antes de esta corrección. * Para el registro StatsD en micrometer-registry-statsd (cuando se utiliza la variante Datadog o Etsy), debido a que el protocolo StatsD está delimitado por nueva línea, esto permite la inyección de protocolo de línea (suplantación de métricas cruzadas). * Para LoggingMeterRegistry en micrometer-core, debido a que la salida de métricas se imprime línea por línea en los archivos de registro, esto permite tanto la suplantación de métricas (si los raspadores o analizadores de métricas de registro posteriores ingieren las líneas de registro como métricas separadas) como la suplantación general de registros. Específicamente, una aplicación es vulnerable cuando se cumplen todas las siguientes condiciones: * La aplicación utiliza una versión vulnerable de io.micrometer:micrometer-registry-statsd o io.micrometer:micrometer-core. * La aplicación utiliza la variante Datadog o Etsy del registro StatsD, o utiliza LoggingMeterRegistry. * La aplicación instrumenta medidores utilizando entrada controlada por el usuario y no validada para nombres de métricas, claves de etiquetas o valores de etiquetas. Cuando es vulnerable, un atacante puede escapar de la métrica o línea de registro actual inyectando terminadores de línea. Esto les permite suplantar métricas arbitrarias (por ejemplo, carga del sistema, métricas JVM estándar u otras métricas de negocio) en todo el espacio de nombres del registro de métricas (ya sea directamente a través del protocolo StatsD o a través de raspadores/analizadores de métricas de registro posteriores), así como inyectar entradas de registro arbitrarias para suplantar registros de registro generales. Title: Micrometer de Spring, Description: Usar entrada no confiable y no normalizada tal cual para datos de métricas (como nombres de métricas, claves de etiquetas o valores de etiquetas) es un antipatrón peligroso que la instrumentación de propósito general nunca debería realizar. Cuando se utiliza dicha instrumentación insegura, la aplicación se vuelve vulnerable a ataques de inyección y suplantación porque micrometer-registry-statsd y micrometer-core no sanean los caracteres de nueva línea (\n, \r) por defecto antes de esta corrección. * Para el registro StatsD en micrometer-registry-statsd (cuando se utiliza la variante Datadog o Etsy), debido a que el protocolo StatsD está delimitado por nueva línea, esto permite la inyección de protocolo de línea (suplantación de métricas cruzadas). * Para LoggingMeterRegistry en micrometer-core, debido a que la salida de métricas se imprime línea por línea en los archivos de registro, esto permite tanto la suplantación de métricas (si los raspadores o analizadores de métricas de registro posteriores ingieren las líneas de registro como métricas separadas) como la suplantación general de registros. Específicamente, una aplicación es vulnerable cuando se cumplen todas las siguientes condiciones: * La aplicación utiliza una versión vulnerable de io.micrometer:micrometer-registry-statsd o io.micrometer:micrometer-core. * La aplicación utiliza la variante Datadog o Etsy del registro StatsD, o utiliza LoggingMeterRegistry. * La aplicación instrumenta medidores utilizando entrada controlada por el usuario y no validada para nombres de métricas, claves de etiquetas o valores de etiquetas. Cuando es vulnerable, un atacante puede escapar de la métrica o línea de registro actual inyectando terminadores de línea. Esto les permite suplantar métricas arbitrarias (por ejemplo, carga del sistema, métricas JVM estándar u otras métricas de negocio) en todo el espacio de nombres del registro de métricas (ya sea directamente a través del protocolo StatsD o a través de raspadores/analizadores de métricas de registro posteriores), así como inyectar entradas de registro arbitrarias para suplantar registros de registro generales.
  • CVE Translated by [email protected]

    Oct. 16, 2026

    Action Type Old Value New Value
    Added Translation Title: Micrometer de Spring, Description: Usar entrada no confiable y no normalizada tal cual para datos de métricas (como nombres de métricas, claves de etiquetas o valores de etiquetas) es un antipatrón peligroso que la instrumentación de propósito general nunca debería realizar. Cuando se utiliza dicha instrumentación insegura, la aplicación se vuelve vulnerable a ataques de inyección y suplantación porque micrometer-registry-statsd y micrometer-core no sanean los caracteres de nueva línea (\n, \r) por defecto antes de esta corrección. * Para el registro StatsD en micrometer-registry-statsd (cuando se utiliza la variante Datadog o Etsy), debido a que el protocolo StatsD está delimitado por nueva línea, esto permite la inyección de protocolo de línea (suplantación de métricas cruzadas). * Para LoggingMeterRegistry en micrometer-core, debido a que la salida de métricas se imprime línea por línea en los archivos de registro, esto permite tanto la suplantación de métricas (si los raspadores o analizadores de métricas de registro posteriores ingieren las líneas de registro como métricas separadas) como la suplantación general de registros. Específicamente, una aplicación es vulnerable cuando se cumplen todas las siguientes condiciones: * La aplicación utiliza una versión vulnerable de io.micrometer:micrometer-registry-statsd o io.micrometer:micrometer-core. * La aplicación utiliza la variante Datadog o Etsy del registro StatsD, o utiliza LoggingMeterRegistry. * La aplicación instrumenta medidores utilizando entrada controlada por el usuario y no validada para nombres de métricas, claves de etiquetas o valores de etiquetas. Cuando es vulnerable, un atacante puede escapar de la métrica o línea de registro actual inyectando terminadores de línea. Esto les permite suplantar métricas arbitrarias (por ejemplo, carga del sistema, métricas JVM estándar u otras métricas de negocio) en todo el espacio de nombres del registro de métricas (ya sea directamente a través del protocolo StatsD o a través de raspadores/analizadores de métricas de registro posteriores), así como inyectar entradas de registro arbitrarias para suplantar registros de registro generales.
  • CVE Modified by [email protected]

    Aug. 27, 2026

    Action Type Old Value New Value
    Changed Description Using untrusted, non-normalized input as-is for metrics data (such as metric names, tag keys, or tag values) is a dangerous antipattern that general-purpose instrumentation should never perform. When such unsafe instrumentation is used, the application becomes vulnerable to injection and spoofing attacks because micrometer-registry-statsd and micrometer-core do not sanitize newline characters (\n, \r) by default prior to this fix. * For the StatsD registry in micrometer-registry-statsd (when using the Datadog or Etsy flavor), because the StatsD protocol is newline-delimited, this allows for line-protocol injection (cross-metric spoofing). * For LoggingMeterRegistry in micrometer-core, because metric output is printed line-by-line to log files, this allows for both metric spoofing (if downstream log-metrics scrapers or parsers ingest the log lines as separate metrics) and general log spoofing. Specifically, an application is vulnerable when all the following are true: * The application uses a vulnerable version of io.micrometer:micrometer-registry-statsd or io.micrometer:micrometer-core. * The application uses the Datadog or Etsy flavor of the StatsD registry, or uses LoggingMeterRegistry. * The application instruments meters using user-controlled, unvalidated input for metric names, tag keys, or tag values. When vulnerable, an attacker can break out of the current metric or log line by injecting line terminators. This allows them to spoof arbitrary metrics (e.g., system load, standard JVM metrics, or other business metrics) across the metrics registry namespace (either directly via StatsD protocol or via downstream log-metric scrapers/parsers), as well as inject arbitrary log entries to spoof general log records. Using untrusted, non-normalized input as-is for metrics data (such as metric names, tag keys, or tag values) is a dangerous antipattern that general-purpose instrumentation should never perform. Micrometer 1.17.0 Micrometer 1.16.0 - 1.16.6 Micrometer 1.15.0 - 1.15.12 Micrometer 1.14.0 - 1.14.16 Micrometer 1.9.18 and earlier
    Added Affected Affected value modified. <a href="https://github.com/CVEProject/cvelistV5/blob/main/cves/2026/59xxx/CVE-2026-59296.json">CVE-2026-59296</a>
    Added Reference https://spring.io/security/cve-2026-59296
    Removed Reference https://spring.io/security/cve-2026-59296
  • CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0

    Aug. 21, 2026

    Action Type Old Value New Value
    Added CWE CWE-74
  • CVE Modified by 134c704f-9b21-4f2e-91b3-4a467353bcc0

    Aug. 21, 2026

    Action Type Old Value New Value
    Added SSVC {'id': 'CVE-2026-59296', 'role': 'CISA Coordinator', 'options': [{'exploitation': 'none'}, {'automatable': 'no'}, {'technicalImpact': 'partial'}], 'version': '2.0.3', 'timestamp': '2026-08-21T11:55:29.457945Z'}
  • New CVE Received by [email protected]

    Aug. 21, 2026

    Action Type Old Value New Value
    Added Affected [{'vendor': 'VMware', 'product': 'Spring Micrometer', 'versions': [{'status': 'affected', 'version': '1.17.0 - 1.17.0'}, {'status': 'affected', 'version': '1.16.0 - 1.16.6'}, {'status': 'affected', 'version': '1.15.0 - 1.15.12'}, {'status': 'affected', 'version': '1.14.0 - 1.14.16'}, {'status': 'affected', 'version': '1.9.18 and earlier'}, {'status': 'unaffected', 'version': '1.17.0.1', 'versionType': 'enterprise support only'}, {'status': 'unaffected', 'version': '1.17.1', 'versionType': 'oss'}, {'status': 'unaffected', 'version': '1.16.6.1', 'versionType': 'enterprise support only'}, {'status': 'unaffected', 'version': '1.16.7', 'versionType': 'oss'}, {'status': 'unaffected', 'version': '1.15.13', 'versionType': 'enterprise support only'}, {'status': 'unaffected', 'version': '1.14.17', 'versionType': 'enterprise support only'}, {'status': 'unaffected', 'version': '1.9.19', 'versionType': 'enterprise support only'}], 'defaultStatus': 'affected'}]
    Added Description Using untrusted, non-normalized input as-is for metrics data (such as metric names, tag keys, or tag values) is a dangerous antipattern that general-purpose instrumentation should never perform. When such unsafe instrumentation is used, the application becomes vulnerable to injection and spoofing attacks because micrometer-registry-statsd and micrometer-core do not sanitize newline characters (\n, \r) by default prior to this fix. * For the StatsD registry in micrometer-registry-statsd (when using the Datadog or Etsy flavor), because the StatsD protocol is newline-delimited, this allows for line-protocol injection (cross-metric spoofing). * For LoggingMeterRegistry in micrometer-core, because metric output is printed line-by-line to log files, this allows for both metric spoofing (if downstream log-metrics scrapers or parsers ingest the log lines as separate metrics) and general log spoofing. Specifically, an application is vulnerable when all the following are true: * The application uses a vulnerable version of io.micrometer:micrometer-registry-statsd or io.micrometer:micrometer-core. * The application uses the Datadog or Etsy flavor of the StatsD registry, or uses LoggingMeterRegistry. * The application instruments meters using user-controlled, unvalidated input for metric names, tag keys, or tag values. When vulnerable, an attacker can break out of the current metric or log line by injecting line terminators. This allows them to spoof arbitrary metrics (e.g., system load, standard JVM metrics, or other business metrics) across the metrics registry namespace (either directly via StatsD protocol or via downstream log-metric scrapers/parsers), as well as inject arbitrary log entries to spoof general log records.
    Added CVSS V3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N
    Added Reference https://spring.io/security/cve-2026-59296
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days. Following chart shows the EPSS score history of the vulnerability.