Description
Symfony UX is a JavaScript ecosystem for Symfony. From 2.8.0 until 2.36.0 and 3.1.0, when a #[LiveProp] is typed as DateTimeInterface and no explicit format is configured, Symfony\UX\LiveComponent\LiveComponentHydrator::hydrateObjectValue() falls back to new $className($value), allowing client-supplied relative strings such as now, tomorrow, or +10 years to move a writable, format-less date prop past time-based business logic checks. This issue is fixed in versions 2.36.0 and 3.1.0.
Published: 2026-07-17
Score: 6.9 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

Symfony UX is a JavaScript ecosystem for Symfony. From 2.8.0 until 2.36.0 and 3.1.0, when a #[LiveProp] is typed as DateTimeInterface and no explicit format is configured, Symfony\\UX\\LiveComponent\\LiveComponentHydrator::hydrateObjectValue() falls back to new $className($value), allowing client‑supplied relative strings such as now, tomorrow, or +10 years to move a writable, format‑less date prop past time‑based business logic checks. This is an example of CWE-20: Improper Input Validation. This issue is fixed in versions 2.36.0 and 3.1.0.

Affected Systems

The issue exists in the symfony/ux library for versions 2.8.0 up to, but not including, 2.36.0 and up to, but not including, 3.1.0. Any Symfony application that uses LiveComponent date properties typed as DateTimeInterface without specifying an explicit format is affected. The vulnerability is fixed in releases 2.36.0 and 3.1.0. No other vendors or product versions are affected.

Risk and Exploitability

The CVSS score of 6.9 indicates moderate severity, and suggests a very low probability of real‑world exploitation. The flaw is not listed in the CISA KEV catalog. Attackers can exploit this flaw by injecting relative date strings through any user‑controlled input that reaches the hydration code for a LiveProp without a format constraint. Based on the description, it is inferred that the attack vector is client‑side input that is bound to a LiveProp without a format constraint.

Generated by OpenCVE AI on August 1, 2026 at 08:20 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the symfony/ux library to version 2.36.0 or later (including 3.1.0).
  • Ensure that all DateTimeInterface‑typed LiveProps specify an explicit format (e.g., format: 'Y-m-d H:i:s').
  • Audit any custom hydration or instantiation logic to prevent direct creation of DateTime objects from unvalidated strings.

Generated by OpenCVE AI on August 1, 2026 at 08:20 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-89g7-22c8-3j23 ux-live-component: Format-less date LiveProps parsed with the permissive DateTime constructor
History

Tue, 21 Jul 2026 02:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Fri, 17 Jul 2026 18:00:00 +0000

Type Values Removed Values Added
First Time appeared Symfony
Symfony ux
Vendors & Products Symfony
Symfony ux

Fri, 17 Jul 2026 16:30:00 +0000

Type Values Removed Values Added
Description Symfony UX is a JavaScript ecosystem for Symfony. From 2.8.0 until 2.36.0 and 3.1.0, when a #[LiveProp] is typed as DateTimeInterface and no explicit format is configured, Symfony\UX\LiveComponent\LiveComponentHydrator::hydrateObjectValue() falls back to new $className($value), allowing client-supplied relative strings such as now, tomorrow, or +10 years to move a writable, format-less date prop past time-based business logic checks. This issue is fixed in versions 2.36.0 and 3.1.0.
Title Symfony UX: Format-less date LiveProps parsed with the permissive DateTime constructor
Weaknesses CWE-20
References
Metrics cvssV4_0

{'score': 6.9, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-21T01:41:46.730Z

Reserved: 2026-05-28T03:42:34.340Z

Link: CVE-2026-49208

cve-icon Vulnrichment

Updated: 2026-07-21T01:41:43.215Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-01T08:30:03Z

Weaknesses
  • CWE-20

    Improper Input Validation