Skip to content
Heist/ feed
Back to feed
High

Apache Struts: Disproportionate response size when rendering BigDecimal request parameters

Type: advisorySources: OSV

Asymmetric resource consumption (amplification) vulnerability in Apache Struts. When a request parameter is bound to an arbitrary-precision decimal (java.math.BigDecimal) property that is then rendered through the Struts tag library, the framework can produce a response many orders of magnitude larger than the request, allowing an unauthenticated remote attacker to exhaust server CPU and outbound network capacity with sustained low-volume traffic. Applications that do not bind request parameters to BigDecimal properties, or never render such a property through the Struts tag library, are not affected. This issue affects Apache Struts: from 2.5.14 through 2.5.33, from 6.0.0 through 6.11.0, from 7.0.0 through 7.3.0. Users are recommended to upgrade to version 6.12.0 or 7.4.0, which fixes the issue.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-104712
Confirmed fixed CVEs
Not specified
Updated in this feed
3 Nov 2026, 14:27 UTC · Revision 1

Source evidence

Apache Struts: Disproportionate response size when rendering BigDecimal request parameters

core-osv · Original source

Published 5 Oct 2026, 18:35 UTC

Asymmetric resource consumption (amplification) vulnerability in Apache Struts. When a request parameter is bound to an arbitrary-precision decimal (java.math.BigDecimal) property that is then rendered through the Struts tag library, the framework can produce a response many orders of magnitude larger than the request, allowing an unauthenticated remote attacker to exhaust server CPU and outbound network capacity with sustained low-volume traffic. Applications that do not bind request parameters to BigDecimal properties, or never render such a property through the Struts tag library, are not affected. This issue affects Apache Struts: from 2.5.14 through 2.5.33, from 6.0.0 through 6.11.0, from 7.0.0 through 7.3.0. Users are recommended to upgrade to version 6.12.0 or 7.4.0, which fixes the issue.

osv:CVE-2026-104712
Complete source record
{
  "id": "e806d78064aeff976035491905f68f2a2fd2f851968fdd7d8d00634e623880f4",
  "url": "https://osv.dev/vulnerability/CVE-2026-104712",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Apache Struts: Disproportionate response size when rendering BigDecimal request parameters",
    "summary": "Asymmetric resource consumption (amplification) vulnerability in Apache Struts. When a request parameter is bound to an arbitrary-precision decimal (java.math.BigDecimal) property that is then rendered through the Struts tag library, the framework can produce a response many orders of magnitude larger than the request, allowing an unauthenticated remote attacker to exhaust server CPU and outbound network capacity with sustained low-volume traffic. Applications that do not bind request parameters to BigDecimal properties, or never render such a property through the Struts tag library, are not affected. This issue affects Apache Struts: from 2.5.14 through 2.5.33, from 6.0.0 through 6.11.0, from 7.0.0 through 7.3.0. Users are recommended to upgrade to version 6.12.0 or 7.4.0, which fixes the issue.",
    "evidence": "osv:CVE-2026-104712",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2026-104712",
      "aliases": [
        "CVE-2026-104712"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/apache/struts",
              "type": "GIT",
              "events": [
                {
                  "introduced": "04db84135866b136aa4366234e81a0e4aa7bc7ca"
                },
                {
                  "last_affected": "ca8d57c538136983a0180ac508ebcfabaf73f839"
                },
                {
                  "introduced": "68fb49c10e083dce829476778eec726fc90c8c38"
                },
                {
                  "fixed": "07aea27ba59aa8c4d9fda05bfeec3bf80f2a0473"
                },
                {
                  "introduced": "1d95543fbf2c873d5dab1773f951c38e3220b4e5"
                },
                {
                  "fixed": "7ba6ef01a9215e8ce6ce5a9e82f5b418714f2920"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:apache:struts:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "2.5.14"
                      },
                      {
                        "last_affected": "2.5.33"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "cpe": "cpe:2.3:a:apache:struts:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "6.0.0"
                      },
                      {
                        "fixed": "6.12.0"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "cpe": "cpe:2.3:a:apache:struts:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "7.0.0"
                      },
                      {
                        "fixed": "7.4.0"
                      }
                    ],
                    "source": "CPE_RANGE"
                  }
                ]
              }
            }
          ],
          "versions": [
            "STRUTS_6_8_0",
            "STRUTS_6_7_4",
            "STRUTS_6_7_3",
            "STRUTS_7_0_3",
            "STRUTS_6_7_2",
            "STRUTS_7_0_2",
            "STRUTS_6_7_1",
            "STRUTS_7_0_1",
            "STRUTS_6_7_0",
            "STRUTS_7_0_0",
            "STRUTS_6_6_1",
            "STRUTS_6_6_0",
            "STRUTS_6_5_0",
            "STRUTS_6_4_0",
            "STRUTS_2_5_33",
            "STRUTS_6_3_0_1",
            "STRUTS_6_2_0",
            "STRUTS_2_5_32",
            "STRUTS_6_3_0",
            "STRUTS_2_5_31",
            "STRUTS_6_1_1",
            "STRUTS_6_1_0",
            "STRUTS_6_0_3",
            "STRUTS_6_0_2",
            "STRUTS_6_0_1",
            "STRUTS_6_0_0",
            "STRUTS_2_5_30",
            "STRUTS_2_5_29",
            "STRUTS_2_5_28_3",
            "STRUTS_2_5_28_2",
            "STRUTS_2_5_28_1",
            "STRUTS_2_5_28",
            "STRUTS_2_5_27",
            "STRUTS_2_5_26",
            "STRUTS_2_5_25",
            "STRUTS_2_5_24",
            "STRUTS_2_5_23",
            "STRUTS_2_5_22",
            "STRUTS_2_5_21",
            "STRUTS_2_5_20",
            "STRUTS_2_5_19",
            "STRUTS_2_5_18",
            "STRUTS_2_5_17",
            "STRUTS_2_5_16",
            "STRUTS_2_5_15",
            "STRUTS_2_5_14_1",
            "STRUTS_2_5_14"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-104712.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:29.400246704Z",
      "provider": "osv",
      "references": [
        "https://repo.maven.apache.org/maven2",
        "https://cwiki.apache.org/confluence/display/WW/S2-076",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/104xxx/CVE-2026-104712.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-104712"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-405"
        ],
        "cna_assigner": "apache",
        "unresolved_ranges": [
          {
            "extracted_events": [
              {
                "range": [
                  {
                    "introduced": "2.5.14"
                  },
                  {
                    "last_affected": "2.5.33"
                  },
                  {
                    "introduced": "6.0.0"
                  },
                  {
                    "last_affected": "6.11.0"
                  },
                  {
                    "introduced": "7.0.0"
                  },
                  {
                    "last_affected": "7.3.0"
                  }
                ],
                "source": "AFFECTED_FIELD",
                "strategy": "StandardRange"
              }
            ]
          }
        ],
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/104xxx/CVE-2026-104712.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-104712",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 496370,
  "published_at": "2026-10-05T18:35:41.767+00:00"
}