Description
Quasar Framework is a framework for building high-performance Vue.js user interfaces. Prior to 2.22.0, the public extend() utility in ui/src/utils/extend/extend.js recursively copied attacker-controlled object keys during extend(true, target, source) deep merges without rejecting an own __proto__ property. The merge could descend into the prototype object and write attacker-controlled properties to Object.prototype in the same JavaScript process. Applications that passed user-controlled or partially user-controlled objects to extend() could experience logic bypass, unsafe default-option injection, denial of service, or other application-specific impact when polluted properties were later consumed. This issue is fixed in version 2.22.0.
Published: 2026-08-13
Score: 5.6 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The extend() utility in Quasar Framework performs deep merges by recursively copying keys from a source object into a target, but it does not reject an own __proto__ property. This allows an attacker to inject keys into Object.prototype within the same JavaScript process. Polluted prototype properties can subsequently be read or executed by the application, enabling logic bypass, unsafe default-option injection, or denial of service. The vulnerability is classified as CWE‑1321.

Affected Systems

Quasar Framework, all versions prior to 2.22.0. Applications that consume the public extend() function and pass user‑controlled or partially user‑controlled objects to it are affected.

Risk and Exploitability

The CVSS score is 5.6, indicating a moderate severity. No EPSS score is available and the issue is not listed in the CISA KEV catalog. The likely attack vector is application‑level, where user input is merged into internal objects via extend(); exploitation requires that the attacker can influence the source object passed to the function. If the application merges untrusted data, prototype pollution could lead to significant logic circumvention or denial of service, depending on downstream use of Object.prototype properties.

Generated by OpenCVE AI on August 13, 2026 at 19:41 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Quasar Framework to version 2.22.0 or later, which removes the vulnerable extend() implementation.
  • Validate or sanitize any data passed to extend() to ensure it does not contain a __proto__ key before calling the function.
  • If an upgrade is not feasible, avoid using extend() with user‑controlled data; instead, use a merge routine that explicitly blocks prototype modifications or replace extend() usage with a safer alternative.

Generated by OpenCVE AI on August 13, 2026 at 19:41 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-3r53-75j5-3g7j Quasar: Prototype pollution in the extend() utility
History

Fri, 14 Aug 2026 10:00:00 +0000

Type Values Removed Values Added
First Time appeared Quasarframework
Quasarframework quasar
Vendors & Products Quasarframework
Quasarframework quasar

Thu, 13 Aug 2026 19:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 13 Aug 2026 18:15:00 +0000

Type Values Removed Values Added
Description Quasar Framework is a framework for building high-performance Vue.js user interfaces. Prior to 2.22.0, the public extend() utility in ui/src/utils/extend/extend.js recursively copied attacker-controlled object keys during extend(true, target, source) deep merges without rejecting an own __proto__ property. The merge could descend into the prototype object and write attacker-controlled properties to Object.prototype in the same JavaScript process. Applications that passed user-controlled or partially user-controlled objects to extend() could experience logic bypass, unsafe default-option injection, denial of service, or other application-specific impact when polluted properties were later consumed. This issue is fixed in version 2.22.0.
Title Quasar Framework: Prototype pollution in Quasar extend() utility
Weaknesses CWE-1321
References
Metrics cvssV3_1

{'score': 5.6, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L'}


Subscriptions

Quasarframework Quasar
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-13T18:41:21.421Z

Reserved: 2026-08-13T14:04:09.604Z

Link: CVE-2026-73647

cve-icon Vulnrichment

Updated: 2026-08-13T18:40:58.763Z

cve-icon NVD

Status : Received

Published: 2026-08-13T18:18:20.450

Modified: 2026-08-13T19:17:36.870

Link: CVE-2026-73647

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-14T09:30:59Z

Weaknesses
  • CWE-1321

    Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')