CVE-2023-26487 | Date: (C)2023-03-07 (M)2023-11-13 |
Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs.`lassoAppend' function accepts 3 arguments and internally invokes `push` function on the 1st argument specifying array consisting of 2nd and 3rd arguments as `push` call argument. The type of the 1st argument is supposed to be an array, but it's not enforced. This makes it possible to specify any object with a `push` function as the 1st argument, `push` function can be set to any function that can be access via `event.view` (no all such functions can be exploited due to invalid context or signature, but some can, e.g. `console.log`). The issue is that`lassoAppend` doesn't enforce proper types of its arguments. This issue opens various XSS vectors, but exact impact and severity depends on the environment (e.g. Core JS `setImmediate` polyfill basically allows `eval`-like functionality). This issue was patched in 5.23.0.
CVSS Score and Metrics +CVSS Score and Metrics -CVSS V3 Severity: | CVSS V2 Severity: |
CVSS Score : 6.1 | CVSS Score : |
Exploit Score: 2.8 | Exploit Score: |
Impact Score: 2.7 | Impact Score: |
|
CVSS V3 Metrics: | CVSS V2 Metrics: |
Attack Vector: NETWORK | Access Vector: |
Attack Complexity: LOW | Access Complexity: |
Privileges Required: NONE | Authentication: |
User Interaction: REQUIRED | Confidentiality: |
Scope: CHANGED | Integrity: |
Confidentiality: LOW | Availability: |
Integrity: LOW | |
Availability: NONE | |
| |