Skip to content
Heist/ feed
Back to feed
Medium

Symfony UX: Denial of service in symfony/ux-live-component via unbounded batch action requests

Type: advisorySources: OSV

Symfony UX is a JavaScript ecosystem for Symfony. From 2.5.0 until 2.36.0 and 3.1.0, Symfony\UX\LiveComponent\Controller\BatchActionController::__invoke() iterates over the client-supplied actions array and issues a full HttpKernel sub-request for each entry; because the array size is never bounded, an authenticated client can submit a single _batch request containing thousands of actions and exhaust CPU, memory, and database connections on the application server. This issue is fixed in versions 2.36.0 and 3.1.0.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-49209
Confirmed fixed CVEs
Not specified
Updated in this feed
6 Nov 2026, 02:39 UTC · Revision 1

Source evidence

Symfony UX: Denial of service in symfony/ux-live-component via unbounded batch action requests

core-osv · Original source

Published 17 Jul 2026, 16:02 UTC

Symfony UX is a JavaScript ecosystem for Symfony. From 2.5.0 until 2.36.0 and 3.1.0, Symfony\UX\LiveComponent\Controller\BatchActionController::__invoke() iterates over the client-supplied actions array and issues a full HttpKernel sub-request for each entry; because the array size is never bounded, an authenticated client can submit a single _batch request containing thousands of actions and exhaust CPU, memory, and database connections on the application server. This issue is fixed in versions 2.36.0 and 3.1.0.

osv:CVE-2026-49209
Complete source record
{
  "id": "941ca0e3046611271c89681eca33986fc70621e642805d9e6f5b75e7c81c7a5e",
  "url": "https://osv.dev/vulnerability/CVE-2026-49209",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Symfony UX: Denial of service in symfony/ux-live-component via unbounded batch action requests",
    "summary": "Symfony UX is a JavaScript ecosystem for Symfony. From 2.5.0 until 2.36.0 and 3.1.0, Symfony\\UX\\LiveComponent\\Controller\\BatchActionController::__invoke() iterates over the client-supplied actions array and issues a full HttpKernel sub-request for each entry; because the array size is never bounded, an authenticated client can submit a single _batch request containing thousands of actions and exhaust CPU, memory, and database connections on the application server. This issue is fixed in versions 2.36.0 and 3.1.0.",
    "evidence": "osv:CVE-2026-49209",
    "products": [],
    "severity": "medium",
    "structured": {
      "id": "CVE-2026-49209",
      "aliases": [
        "CVE-2026-49209",
        "GHSA-mm82-c99c-h2cf"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/symfony/ux",
              "type": "GIT",
              "events": [
                {
                  "introduced": "240028f49fcbe5a9ba16334a19a3bb120b5c22fc"
                },
                {
                  "fixed": "5ccec9746faa28d79a87138042174c3853d5702b"
                },
                {
                  "introduced": "3cef8e0d9557bbde60c3f1bfd2cbb1004af7fc9a"
                },
                {
                  "fixed": "95e878d5257f13d6d652ca95e3ef6bb0934d674f"
                },
                {
                  "fixed": "4c883fdb0f0e7ea577f851bd457024f7e88788c9"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "cpe": "cpe:2.3:a:symfony:ux:*:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "2.5.0"
                      },
                      {
                        "fixed": "2.36.0"
                      }
                    ],
                    "source": "CPE_RANGE"
                  },
                  {
                    "cpe": "cpe:2.3:a:symfony:ux:3.0.0:*:*:*:*:*:*:*",
                    "range": [
                      {
                        "introduced": "3.0.0"
                      },
                      {
                        "last_affected": "3.0.0"
                      }
                    ],
                    "source": "CPE_STRING"
                  },
                  {
                    "range": [
                      {
                        "fixed": "95e878d5257f13d6d652ca95e3ef6bb0934d674f"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "5ccec9746faa28d79a87138042174c3853d5702b"
                      }
                    ],
                    "source": "REFERENCES_TAG",
                    "original_tag": "v2.36.0"
                  },
                  {
                    "range": [
                      {
                        "fixed": "4c883fdb0f0e7ea577f851bd457024f7e88788c9"
                      }
                    ],
                    "source": "REFERENCES_TAG",
                    "original_tag": "v3.1.0"
                  }
                ]
              }
            }
          ],
          "versions": [
            "3.0.0",
            "v2.35.0",
            "v3.0.0",
            "v2.34.0",
            "v2.33.0",
            "v2.32.0",
            "v2.31.0",
            "v2.30.0",
            "v2.29.2",
            "v2.29.1",
            "v2.29.0",
            "v2.28.2",
            "v2.28.1",
            "v2.28.0",
            "v2.27.0",
            "v2.26.0",
            "v2.26.1",
            "v2.25.2",
            "v2.25.1",
            "v2.25.0",
            "v2.24.0",
            "v2.23.0",
            "v2.22.1",
            "v2.22.0",
            "v2.21.0",
            "v2.9.1",
            "v2.20.0",
            "v2.19.3",
            "v2.19.2",
            "v2.19.0",
            "v2.19.1",
            "v2.18.1",
            "v2.18.0",
            "v2.17.0",
            "v2.16.0",
            "v2.14.0",
            "v2.15.0",
            "v2.14.2",
            "v2.14.1",
            "v2.13.1",
            "v2.13.3",
            "v2.13.2",
            "v2.13.0",
            "v2.12.0",
            "v2.11.1",
            "v2.11.2",
            "v2.11.0",
            "v2.10.0",
            "v2.8.1",
            "v2.9.0",
            "v2.8.0",
            "v2.7.1",
            "v2.7.0",
            "v2.6.1",
            "v2.6.0",
            "v2.5.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-49209.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:46.172143297Z",
      "provider": "osv",
      "references": [
        "https://github.com/symfony/ux/releases/tag/v2.36.0",
        "https://github.com/symfony/ux/releases/tag/v3.1.0",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/49xxx/CVE-2026-49209.json",
        "https://github.com/symfony/ux/security/advisories/GHSA-mm82-c99c-h2cf",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-49209",
        "https://github.com/symfony/ux/commit/95e878d5257f13d6d652ca95e3ef6bb0934d674f"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-770"
        ],
        "cna_assigner": "GitHub_M",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/49xxx/CVE-2026-49209.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-49209",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 514351,
  "published_at": "2026-07-17T16:02:06.498+00:00"
}