Vulnerabilites related to vega - vega
CVE-2025-27793 (GCVE-0-2025-27793)
Vulnerability from cvelistv5
Published
2025-03-27 14:07
Modified
2025-03-27 15:17
Severity ?
VLAI Severity ?
EPSS score ?
CWE
Summary
Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs. In Vega prior to version 5.32.0, corresponding to vega-functions prior to version 5.17.0, users running Vega/Vega-lite JSON definitions could run unexpected JavaScript code when drawing graphs, unless the library was used with the `vega-interpreter`. Vega version 5.32.0 and vega-functions version 5.17.0 fix the issue. As a workaround, use `vega` with expression interpreter.
References
▼ | URL | Tags |
---|---|---|
https://github.com/vega/vega/security/advisories/GHSA-963h-3v39-3pqf | x_refsource_CONFIRM | |
https://github.com/vega/vega/commit/694560c0aa576df8b6c5f0f7d202ac82233e6966 | x_refsource_MISC | |
https://github.com/vega/vega/releases/tag/v5.32.0 | x_refsource_MISC | |
https://vega.github.io/vega/usage/interpreter | x_refsource_MISC |
{ "containers": { "adp": [ { "metrics": [ { "other": { "content": { "id": "CVE-2025-27793", "options": [ { "Exploitation": "none" }, { "Automatable": "no" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "timestamp": "2025-03-27T15:17:13.409636Z", "version": "2.0.3" }, "type": "ssvc" } } ], "providerMetadata": { "dateUpdated": "2025-03-27T15:17:18.354Z", "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP" }, "title": "CISA ADP Vulnrichment" } ], "cna": { "affected": [ { "product": "vega", "vendor": "vega", "versions": [ { "status": "affected", "version": "\u003c 5.32.0" } ] } ], "descriptions": [ { "lang": "en", "value": "Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs. In Vega prior to version 5.32.0, corresponding to vega-functions prior to version 5.17.0, users running Vega/Vega-lite JSON definitions could run unexpected JavaScript code when drawing graphs, unless the library was used with the `vega-interpreter`. Vega version 5.32.0 and vega-functions version 5.17.0 fix the issue. As a workaround, use `vega` with expression interpreter." } ], "metrics": [ { "cvssV4_0": { "attackComplexity": "LOW", "attackRequirements": "NONE", "attackVector": "NETWORK", "baseScore": 5.3, "baseSeverity": "MEDIUM", "privilegesRequired": "NONE", "subAvailabilityImpact": "NONE", "subConfidentialityImpact": "LOW", "subIntegrityImpact": "LOW", "userInteraction": "PASSIVE", "vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N", "version": "4.0", "vulnAvailabilityImpact": "NONE", "vulnConfidentialityImpact": "NONE", "vulnIntegrityImpact": "NONE" } } ], "problemTypes": [ { "descriptions": [ { "cweId": "CWE-87", "description": "CWE-87: Improper Neutralization of Alternate XSS Syntax", "lang": "en", "type": "CWE" } ] }, { "descriptions": [ { "cweId": "CWE-79", "description": "CWE-79: Improper Neutralization of Input During Web Page Generation (\u0027Cross-site Scripting\u0027)", "lang": "en", "type": "CWE" } ] } ], "providerMetadata": { "dateUpdated": "2025-03-27T14:07:52.264Z", "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "shortName": "GitHub_M" }, "references": [ { "name": "https://github.com/vega/vega/security/advisories/GHSA-963h-3v39-3pqf", "tags": [ "x_refsource_CONFIRM" ], "url": "https://github.com/vega/vega/security/advisories/GHSA-963h-3v39-3pqf" }, { "name": "https://github.com/vega/vega/commit/694560c0aa576df8b6c5f0f7d202ac82233e6966", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega/commit/694560c0aa576df8b6c5f0f7d202ac82233e6966" }, { "name": "https://github.com/vega/vega/releases/tag/v5.32.0", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega/releases/tag/v5.32.0" }, { "name": "https://vega.github.io/vega/usage/interpreter", "tags": [ "x_refsource_MISC" ], "url": "https://vega.github.io/vega/usage/interpreter" } ], "source": { "advisory": "GHSA-963h-3v39-3pqf", "discovery": "UNKNOWN" }, "title": "Vega vulnerable to Cross-site Scripting via RegExp.prototype[@@replace]" } }, "cveMetadata": { "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "assignerShortName": "GitHub_M", "cveId": "CVE-2025-27793", "datePublished": "2025-03-27T14:07:52.264Z", "dateReserved": "2025-03-06T18:06:54.462Z", "dateUpdated": "2025-03-27T15:17:18.354Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1" }
CVE-2023-26487 (GCVE-0-2023-26487)
Vulnerability from cvelistv5
Published
2023-03-03 23:47
Modified
2025-02-25 15:01
Severity ?
VLAI Severity ?
EPSS score ?
CWE
- CWE-79 - Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Summary
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.
References
▼ | URL | Tags |
---|---|---|
https://github.com/vega/vega/security/advisories/GHSA-w5m3-xh75-mp55 | x_refsource_CONFIRM | |
https://github.com/vega/vega/commit/01adb034f24727d3bb321bbbb6696a7f4cd91689 | x_refsource_MISC | |
https://github.com/vega/vega/releases/tag/v5.23.0 | x_refsource_MISC |
{ "containers": { "adp": [ { "providerMetadata": { "dateUpdated": "2024-08-02T11:53:52.908Z", "orgId": "af854a3a-2127-422b-91ae-364da2661108", "shortName": "CVE" }, "references": [ { "name": "https://github.com/vega/vega/security/advisories/GHSA-w5m3-xh75-mp55", "tags": [ "x_refsource_CONFIRM", "x_transferred" ], "url": "https://github.com/vega/vega/security/advisories/GHSA-w5m3-xh75-mp55" }, { "name": "https://github.com/vega/vega/commit/01adb034f24727d3bb321bbbb6696a7f4cd91689", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.com/vega/vega/commit/01adb034f24727d3bb321bbbb6696a7f4cd91689" }, { "name": "https://github.com/vega/vega/releases/tag/v5.23.0", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.com/vega/vega/releases/tag/v5.23.0" } ], "title": "CVE Program Container" }, { "metrics": [ { "other": { "content": { "id": "CVE-2023-26487", "options": [ { "Exploitation": "none" }, { "Automatable": "yes" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "timestamp": "2025-02-25T14:31:39.665748Z", "version": "2.0.3" }, "type": "ssvc" } } ], "providerMetadata": { "dateUpdated": "2025-02-25T15:01:54.570Z", "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP" }, "title": "CISA ADP Vulnrichment" } ], "cna": { "affected": [ { "product": "vega", "vendor": "vega", "versions": [ { "status": "affected", "version": "\u003c 5.23.0" } ] } ], "descriptions": [ { "lang": "en", "value": "Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs.`lassoAppend\u0027 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\u0027s 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\u0027t 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.\n" } ], "metrics": [ { "cvssV3_1": { "attackComplexity": "LOW", "attackVector": "NETWORK", "availabilityImpact": "NONE", "baseScore": 6.5, "baseSeverity": "MEDIUM", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "privilegesRequired": "NONE", "scope": "UNCHANGED", "userInteraction": "NONE", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N", "version": "3.1" } } ], "problemTypes": [ { "descriptions": [ { "cweId": "CWE-79", "description": "CWE-79: Improper Neutralization of Input During Web Page Generation (\u0027Cross-site Scripting\u0027)", "lang": "en", "type": "CWE" } ] } ], "providerMetadata": { "dateUpdated": "2023-03-03T23:47:28.486Z", "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "shortName": "GitHub_M" }, "references": [ { "name": "https://github.com/vega/vega/security/advisories/GHSA-w5m3-xh75-mp55", "tags": [ "x_refsource_CONFIRM" ], "url": "https://github.com/vega/vega/security/advisories/GHSA-w5m3-xh75-mp55" }, { "name": "https://github.com/vega/vega/commit/01adb034f24727d3bb321bbbb6696a7f4cd91689", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega/commit/01adb034f24727d3bb321bbbb6696a7f4cd91689" }, { "name": "https://github.com/vega/vega/releases/tag/v5.23.0", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega/releases/tag/v5.23.0" } ], "source": { "advisory": "GHSA-w5m3-xh75-mp55", "discovery": "UNKNOWN" }, "title": "Vega has cross-site scripting vulnerability in `lassoAppend` function" } }, "cveMetadata": { "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "assignerShortName": "GitHub_M", "cveId": "CVE-2023-26487", "datePublished": "2023-03-03T23:47:28.486Z", "dateReserved": "2023-02-23T23:22:58.575Z", "dateUpdated": "2025-02-25T15:01:54.570Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1" }
CVE-2025-25304 (GCVE-0-2025-25304)
Vulnerability from cvelistv5
Published
2025-02-14 19:28
Modified
2025-02-14 19:44
Severity ?
VLAI Severity ?
EPSS score ?
CWE
- CWE-79 - Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Summary
Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs. Prior to version 5.26.0 of vega and 5.4.2 of vega-selections, the `vlSelectionTuples` function can be used to call JavaScript functions, leading to cross-site scripting.`vlSelectionTuples` calls multiple functions that can be controlled by an attacker, including one call with an attacker-controlled argument. This can be used to call `Function()` with arbitrary JavaScript and the resulting function can be called with `vlSelectionTuples` or using a type coercion to call `toString` or `valueOf`. Version 5.26.0 of vega and 5.4.2 of vega-selections fix this issue.
References
{ "containers": { "adp": [ { "metrics": [ { "other": { "content": { "id": "CVE-2025-25304", "options": [ { "Exploitation": "poc" }, { "Automatable": "yes" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "timestamp": "2025-02-14T19:43:42.653932Z", "version": "2.0.3" }, "type": "ssvc" } } ], "providerMetadata": { "dateUpdated": "2025-02-14T19:44:24.152Z", "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP" }, "title": "CISA ADP Vulnrichment" } ], "cna": { "affected": [ { "product": "vega", "vendor": "vega", "versions": [ { "status": "affected", "version": "\u003c 5.26.0" } ] } ], "descriptions": [ { "lang": "en", "value": "Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs. Prior to version 5.26.0 of vega and 5.4.2 of vega-selections, the `vlSelectionTuples` function can be used to call JavaScript functions, leading to cross-site scripting.`vlSelectionTuples` calls multiple functions that can be controlled by an attacker, including one call with an attacker-controlled argument. This can be used to call `Function()` with arbitrary JavaScript and the resulting function can be called with `vlSelectionTuples` or using a type coercion to call `toString` or `valueOf`. Version 5.26.0 of vega and 5.4.2 of vega-selections fix this issue." } ], "metrics": [ { "cvssV4_0": { "attackComplexity": "LOW", "attackRequirements": "NONE", "attackVector": "NETWORK", "baseScore": 6.9, "baseSeverity": "MEDIUM", "privilegesRequired": "NONE", "subAvailabilityImpact": "NONE", "subConfidentialityImpact": "LOW", "subIntegrityImpact": "LOW", "userInteraction": "NONE", "vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N", "version": "4.0", "vulnAvailabilityImpact": "NONE", "vulnConfidentialityImpact": "NONE", "vulnIntegrityImpact": "NONE" } } ], "problemTypes": [ { "descriptions": [ { "cweId": "CWE-79", "description": "CWE-79: Improper Neutralization of Input During Web Page Generation (\u0027Cross-site Scripting\u0027)", "lang": "en", "type": "CWE" } ] } ], "providerMetadata": { "dateUpdated": "2025-02-14T19:28:00.388Z", "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "shortName": "GitHub_M" }, "references": [ { "name": "https://github.com/vega/vega/security/advisories/GHSA-mp7w-mhcv-673j", "tags": [ "x_refsource_CONFIRM" ], "url": "https://github.com/vega/vega/security/advisories/GHSA-mp7w-mhcv-673j" }, { "name": "https://github.com/vega/vega/commit/9fb9ea07e27984394e463d286eb73944fa61411e", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega/commit/9fb9ea07e27984394e463d286eb73944fa61411e" }, { "name": "https://github.com/vega/vega/blob/b45cf431cd6c0d0c0e1567f087f9b3b55bc236fa/packages/vega-selections/src/selectionTuples.js#L14", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega/blob/b45cf431cd6c0d0c0e1567f087f9b3b55bc236fa/packages/vega-selections/src/selectionTuples.js#L14" } ], "source": { "advisory": "GHSA-mp7w-mhcv-673j", "discovery": "UNKNOWN" }, "title": "Vega allows Cross-site Scripting via the vlSelectionTuples function" } }, "cveMetadata": { "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "assignerShortName": "GitHub_M", "cveId": "CVE-2025-25304", "datePublished": "2025-02-14T19:28:00.388Z", "dateReserved": "2025-02-06T17:13:33.124Z", "dateUpdated": "2025-02-14T19:44:24.152Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1" }
CVE-2020-26296 (GCVE-0-2020-26296)
Vulnerability from cvelistv5
Published
2020-12-30 23:10
Modified
2024-08-04 15:56
Severity ?
VLAI Severity ?
EPSS score ?
CWE
- CWE-79 - Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Summary
Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs. Vega in an npm package. In Vega before version 5.17.3 there is an XSS vulnerability in Vega expressions. Through a specially crafted Vega expression, an attacker could execute arbitrary javascript on a victim's machine. This is fixed in version 5.17.3
References
▼ | URL | Tags |
---|---|---|
https://github.com/vega/vega/security/advisories/GHSA-r2qc-w64x-6j54 | x_refsource_CONFIRM | |
https://github.com/vega/vega/issues/3018 | x_refsource_MISC | |
https://github.com/vega/vega/pull/3019 | x_refsource_MISC | |
https://github.com/vega/vega/releases/tag/v5.17.3 | x_refsource_MISC | |
https://www.npmjs.com/package/vega | x_refsource_MISC |
{ "containers": { "adp": [ { "providerMetadata": { "dateUpdated": "2024-08-04T15:56:04.125Z", "orgId": "af854a3a-2127-422b-91ae-364da2661108", "shortName": "CVE" }, "references": [ { "tags": [ "x_refsource_CONFIRM", "x_transferred" ], "url": "https://github.com/vega/vega/security/advisories/GHSA-r2qc-w64x-6j54" }, { "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.com/vega/vega/issues/3018" }, { "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.com/vega/vega/pull/3019" }, { "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.com/vega/vega/releases/tag/v5.17.3" }, { "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://www.npmjs.com/package/vega" } ], "title": "CVE Program Container" } ], "cna": { "affected": [ { "product": "vega", "vendor": "vega", "versions": [ { "status": "affected", "version": "\u003c 5.17.3" } ] } ], "descriptions": [ { "lang": "en", "value": "Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs. Vega in an npm package. In Vega before version 5.17.3 there is an XSS vulnerability in Vega expressions. Through a specially crafted Vega expression, an attacker could execute arbitrary javascript on a victim\u0027s machine. This is fixed in version 5.17.3" } ], "metrics": [ { "cvssV3_1": { "attackComplexity": "LOW", "attackVector": "NETWORK", "availabilityImpact": "NONE", "baseScore": 8.7, "baseSeverity": "HIGH", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "privilegesRequired": "LOW", "scope": "CHANGED", "userInteraction": "REQUIRED", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N", "version": "3.1" } } ], "problemTypes": [ { "descriptions": [ { "cweId": "CWE-79", "description": "CWE-79: Improper Neutralization of Input During Web Page Generation (\u0027Cross-site Scripting\u0027)", "lang": "en", "type": "CWE" } ] } ], "providerMetadata": { "dateUpdated": "2020-12-30T23:10:16", "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "shortName": "GitHub_M" }, "references": [ { "tags": [ "x_refsource_CONFIRM" ], "url": "https://github.com/vega/vega/security/advisories/GHSA-r2qc-w64x-6j54" }, { "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega/issues/3018" }, { "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega/pull/3019" }, { "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega/releases/tag/v5.17.3" }, { "tags": [ "x_refsource_MISC" ], "url": "https://www.npmjs.com/package/vega" } ], "source": { "advisory": "GHSA-r2qc-w64x-6j54", "discovery": "UNKNOWN" }, "title": "XSS in Vega", "x_legacyV4Record": { "CVE_data_meta": { "ASSIGNER": "security-advisories@github.com", "ID": "CVE-2020-26296", "STATE": "PUBLIC", "TITLE": "XSS in Vega" }, "affects": { "vendor": { "vendor_data": [ { "product": { "product_data": [ { "product_name": "vega", "version": { "version_data": [ { "version_value": "\u003c 5.17.3" } ] } } ] }, "vendor_name": "vega" } ] } }, "data_format": "MITRE", "data_type": "CVE", "data_version": "4.0", "description": { "description_data": [ { "lang": "eng", "value": "Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs. Vega in an npm package. In Vega before version 5.17.3 there is an XSS vulnerability in Vega expressions. Through a specially crafted Vega expression, an attacker could execute arbitrary javascript on a victim\u0027s machine. This is fixed in version 5.17.3" } ] }, "impact": { "cvss": { "attackComplexity": "LOW", "attackVector": "NETWORK", "availabilityImpact": "NONE", "baseScore": 8.7, "baseSeverity": "HIGH", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "privilegesRequired": "LOW", "scope": "CHANGED", "userInteraction": "REQUIRED", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N", "version": "3.1" } }, "problemtype": { "problemtype_data": [ { "description": [ { "lang": "eng", "value": "CWE-79: Improper Neutralization of Input During Web Page Generation (\u0027Cross-site Scripting\u0027)" } ] } ] }, "references": { "reference_data": [ { "name": "https://github.com/vega/vega/security/advisories/GHSA-r2qc-w64x-6j54", "refsource": "CONFIRM", "url": "https://github.com/vega/vega/security/advisories/GHSA-r2qc-w64x-6j54" }, { "name": "https://github.com/vega/vega/issues/3018", "refsource": "MISC", "url": "https://github.com/vega/vega/issues/3018" }, { "name": "https://github.com/vega/vega/pull/3019", "refsource": "MISC", "url": "https://github.com/vega/vega/pull/3019" }, { "name": "https://github.com/vega/vega/releases/tag/v5.17.3", "refsource": "MISC", "url": "https://github.com/vega/vega/releases/tag/v5.17.3" }, { "name": "https://www.npmjs.com/package/vega", "refsource": "MISC", "url": "https://www.npmjs.com/package/vega" } ] }, "source": { "advisory": "GHSA-r2qc-w64x-6j54", "discovery": "UNKNOWN" } } } }, "cveMetadata": { "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "assignerShortName": "GitHub_M", "cveId": "CVE-2020-26296", "datePublished": "2020-12-30T23:10:16", "dateReserved": "2020-10-01T00:00:00", "dateUpdated": "2024-08-04T15:56:04.125Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1" }
CVE-2025-26619 (GCVE-0-2025-26619)
Vulnerability from cvelistv5
Published
2025-03-27 13:51
Modified
2025-03-27 14:21
Severity ?
VLAI Severity ?
EPSS score ?
CWE
- CWE-79 - Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Summary
Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs. In `vega` 5.30.0 and lower and in `vega-functions` 5.15.0 and lower , it was possible to call JavaScript functions from the Vega expression language that were not meant to be supported. The issue is patched in `vega` `5.31.0` and `vega-functions` `5.16.0`. Some workarounds are available. Run `vega` without `vega.expressionInterpreter`. This mode is not the default as it is slower. Alternatively, using the interpreter described in CSP safe mode (Content Security Policy) prevents arbitrary Javascript from running, so users of this mode are not affected by this vulnerability.
References
▼ | URL | Tags |
---|---|---|
https://github.com/vega/vega/security/advisories/GHSA-rcw3-wmx7-cphr | x_refsource_CONFIRM | |
https://github.com/vega/vega-lite/issues/9469 | x_refsource_MISC | |
https://github.com/vega/vega/issues/3984 | x_refsource_MISC | |
https://github.com/vega/vega/commit/8fc129a6f8a11e96449c4ac0f63de0e5bfc7254c | x_refsource_MISC |
{ "containers": { "adp": [ { "metrics": [ { "other": { "content": { "id": "CVE-2025-26619", "options": [ { "Exploitation": "poc" }, { "Automatable": "yes" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "timestamp": "2025-03-27T14:19:56.568280Z", "version": "2.0.3" }, "type": "ssvc" } } ], "providerMetadata": { "dateUpdated": "2025-03-27T14:21:44.479Z", "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP" }, "references": [ { "tags": [ "exploit" ], "url": "https://github.com/vega/vega/security/advisories/GHSA-rcw3-wmx7-cphr" } ], "title": "CISA ADP Vulnrichment" } ], "cna": { "affected": [ { "product": "vega", "vendor": "vega", "versions": [ { "status": "affected", "version": "\u003c 5.31.0" } ] } ], "descriptions": [ { "lang": "en", "value": "Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs. In `vega` 5.30.0 and lower and in `vega-functions` 5.15.0 and lower , it was possible to call JavaScript functions from the Vega expression language that were not meant to be supported. The issue is patched in `vega` `5.31.0` and `vega-functions` `5.16.0`. Some workarounds are available. Run `vega` without `vega.expressionInterpreter`. This mode is not the default as it is slower. Alternatively, using the interpreter described in CSP safe mode (Content Security Policy) prevents arbitrary Javascript from running, so users of this mode are not affected by this vulnerability." } ], "metrics": [ { "cvssV4_0": { "attackComplexity": "LOW", "attackRequirements": "NONE", "attackVector": "NETWORK", "baseScore": 5.3, "baseSeverity": "MEDIUM", "privilegesRequired": "NONE", "subAvailabilityImpact": "NONE", "subConfidentialityImpact": "LOW", "subIntegrityImpact": "LOW", "userInteraction": "PASSIVE", "vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N", "version": "4.0", "vulnAvailabilityImpact": "NONE", "vulnConfidentialityImpact": "NONE", "vulnIntegrityImpact": "NONE" } } ], "problemTypes": [ { "descriptions": [ { "cweId": "CWE-79", "description": "CWE-79: Improper Neutralization of Input During Web Page Generation (\u0027Cross-site Scripting\u0027)", "lang": "en", "type": "CWE" } ] } ], "providerMetadata": { "dateUpdated": "2025-03-27T13:51:38.442Z", "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "shortName": "GitHub_M" }, "references": [ { "name": "https://github.com/vega/vega/security/advisories/GHSA-rcw3-wmx7-cphr", "tags": [ "x_refsource_CONFIRM" ], "url": "https://github.com/vega/vega/security/advisories/GHSA-rcw3-wmx7-cphr" }, { "name": "https://github.com/vega/vega-lite/issues/9469", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega-lite/issues/9469" }, { "name": "https://github.com/vega/vega/issues/3984", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega/issues/3984" }, { "name": "https://github.com/vega/vega/commit/8fc129a6f8a11e96449c4ac0f63de0e5bfc7254c", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega/commit/8fc129a6f8a11e96449c4ac0f63de0e5bfc7254c" } ], "source": { "advisory": "GHSA-rcw3-wmx7-cphr", "discovery": "UNKNOWN" }, "title": "Vega Cross-Site Scripting (XSS) via event filter when not using CSP mode `expressionInterpeter`" } }, "cveMetadata": { "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "assignerShortName": "GitHub_M", "cveId": "CVE-2025-26619", "datePublished": "2025-03-27T13:51:38.442Z", "dateReserved": "2025-02-12T14:51:02.719Z", "dateUpdated": "2025-03-27T14:21:44.479Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1" }
CVE-2023-26486 (GCVE-0-2023-26486)
Vulnerability from cvelistv5
Published
2023-03-03 23:48
Modified
2025-02-25 15:01
Severity ?
VLAI Severity ?
EPSS score ?
CWE
- CWE-79 - Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Summary
Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs. The Vega `scale` expression function has the ability to call arbitrary functions with a single controlled argument. The scale expression function passes a user supplied argument group to getScale, which is then used as if it were an internal context. The context.scales[name].value is accessed from group and called as a function back in scale. This can be exploited to escape the Vega expression sandbox in order to execute arbitrary JavaScript. This issue has been fixed in version 5.13.1.
References
{ "containers": { "adp": [ { "providerMetadata": { "dateUpdated": "2024-08-02T11:53:54.219Z", "orgId": "af854a3a-2127-422b-91ae-364da2661108", "shortName": "CVE" }, "references": [ { "name": "https://github.com/vega/vega/security/advisories/GHSA-4vq7-882g-wcg4", "tags": [ "x_refsource_CONFIRM", "x_transferred" ], "url": "https://github.com/vega/vega/security/advisories/GHSA-4vq7-882g-wcg4" }, { "name": "https://github.com/vega/vega/releases/tag/v5.23.0", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.com/vega/vega/releases/tag/v5.23.0" }, { "name": "https://github.dev/vega/vega/blob/72b9b3bbf912212e7879b6acaccc84aff969ef1c/packages/vega-functions/src/functions/scale.js#L36-L37", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.dev/vega/vega/blob/72b9b3bbf912212e7879b6acaccc84aff969ef1c/packages/vega-functions/src/functions/scale.js#L36-L37" }, { "name": "https://github.dev/vega/vega/blob/72b9b3bbf912212e7879b6acaccc84aff969ef1c/packages/vega-functions/src/scales.js#L6", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://github.dev/vega/vega/blob/72b9b3bbf912212e7879b6acaccc84aff969ef1c/packages/vega-functions/src/scales.js#L6" }, { "name": "https://vega.github.io/editor/#/url/vega/N4IgJAzgxgFgpgWwIYgFwhgF0wBwqgegIDc4BzJAOjIEtMYBXAI0poHsDp5kTykSArJQBWENgDsQAGhAATJJhSoA2qHFIEcNCAAaAZT0ACAApsAwtJDEkAGwZwIaZQEYAujMwAnJOIgAzNk8EJ1BMAE8cLXQAoIYbFBkkR3QNNgZxTEs4AA8cT21oWzgACgByP3SoUqlDcTibGsNgKAlMHMxUJsKbB07gCvEoPus7OE7ukvLK6sNSuBHihTYmYoAdEABNAHVsmyhxAEU2AFk9AGsAdnWASmuZ5tb2von8JoGhppH7TuVXShbfF4GFBMIF-hIIECQYEAL5wmHXeEIkAw1yomFAA", "tags": [ "x_refsource_MISC", "x_transferred" ], "url": "https://vega.github.io/editor/#/url/vega/N4IgJAzgxgFgpgWwIYgFwhgF0wBwqgegIDc4BzJAOjIEtMYBXAI0poHsDp5kTykSArJQBWENgDsQAGhAATJJhSoA2qHFIEcNCAAaAZT0ACAApsAwtJDEkAGwZwIaZQEYAujMwAnJOIgAzNk8EJ1BMAE8cLXQAoIYbFBkkR3QNNgZxTEs4AA8cT21oWzgACgByP3SoUqlDcTibGsNgKAlMHMxUJsKbB07gCvEoPus7OE7ukvLK6sNSuBHihTYmYoAdEABNAHVsmyhxAEU2AFk9AGsAdnWASmuZ5tb2von8JoGhppH7TuVXShbfF4GFBMIF-hIIECQYEAL5wmHXeEIkAw1yomFAA" } ], "title": "CVE Program Container" }, { "metrics": [ { "other": { "content": { "id": "CVE-2023-26486", "options": [ { "Exploitation": "none" }, { "Automatable": "yes" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "timestamp": "2025-02-25T14:31:36.207488Z", "version": "2.0.3" }, "type": "ssvc" } } ], "providerMetadata": { "dateUpdated": "2025-02-25T15:01:48.054Z", "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP" }, "title": "CISA ADP Vulnrichment" } ], "cna": { "affected": [ { "product": "vega", "vendor": "vega", "versions": [ { "status": "affected", "version": "\u003c 5.13.1" } ] } ], "descriptions": [ { "lang": "en", "value": "Vega is a visualization grammar, a declarative format for creating, saving, and sharing interactive visualization designs. The Vega `scale` expression function has the ability to call arbitrary functions with a single controlled argument. The scale expression function passes a user supplied argument group to getScale, which is then used as if it were an internal context. The context.scales[name].value is accessed from group and called as a function back in scale. This can be exploited to escape the Vega expression sandbox in order to execute arbitrary JavaScript. This issue has been fixed in version 5.13.1." } ], "metrics": [ { "cvssV3_1": { "attackComplexity": "LOW", "attackVector": "NETWORK", "availabilityImpact": "NONE", "baseScore": 6.5, "baseSeverity": "MEDIUM", "confidentialityImpact": "LOW", "integrityImpact": "LOW", "privilegesRequired": "NONE", "scope": "UNCHANGED", "userInteraction": "NONE", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N", "version": "3.1" } } ], "problemTypes": [ { "descriptions": [ { "cweId": "CWE-79", "description": "CWE-79: Improper Neutralization of Input During Web Page Generation (\u0027Cross-site Scripting\u0027)", "lang": "en", "type": "CWE" } ] } ], "providerMetadata": { "dateUpdated": "2023-03-03T23:48:41.382Z", "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "shortName": "GitHub_M" }, "references": [ { "name": "https://github.com/vega/vega/security/advisories/GHSA-4vq7-882g-wcg4", "tags": [ "x_refsource_CONFIRM" ], "url": "https://github.com/vega/vega/security/advisories/GHSA-4vq7-882g-wcg4" }, { "name": "https://github.com/vega/vega/releases/tag/v5.23.0", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/vega/vega/releases/tag/v5.23.0" }, { "name": "https://github.dev/vega/vega/blob/72b9b3bbf912212e7879b6acaccc84aff969ef1c/packages/vega-functions/src/functions/scale.js#L36-L37", "tags": [ "x_refsource_MISC" ], "url": "https://github.dev/vega/vega/blob/72b9b3bbf912212e7879b6acaccc84aff969ef1c/packages/vega-functions/src/functions/scale.js#L36-L37" }, { "name": "https://github.dev/vega/vega/blob/72b9b3bbf912212e7879b6acaccc84aff969ef1c/packages/vega-functions/src/scales.js#L6", "tags": [ "x_refsource_MISC" ], "url": "https://github.dev/vega/vega/blob/72b9b3bbf912212e7879b6acaccc84aff969ef1c/packages/vega-functions/src/scales.js#L6" }, { "name": "https://vega.github.io/editor/#/url/vega/N4IgJAzgxgFgpgWwIYgFwhgF0wBwqgegIDc4BzJAOjIEtMYBXAI0poHsDp5kTykSArJQBWENgDsQAGhAATJJhSoA2qHFIEcNCAAaAZT0ACAApsAwtJDEkAGwZwIaZQEYAujMwAnJOIgAzNk8EJ1BMAE8cLXQAoIYbFBkkR3QNNgZxTEs4AA8cT21oWzgACgByP3SoUqlDcTibGsNgKAlMHMxUJsKbB07gCvEoPus7OE7ukvLK6sNSuBHihTYmYoAdEABNAHVsmyhxAEU2AFk9AGsAdnWASmuZ5tb2von8JoGhppH7TuVXShbfF4GFBMIF-hIIECQYEAL5wmHXeEIkAw1yomFAA", "tags": [ "x_refsource_MISC" ], "url": "https://vega.github.io/editor/#/url/vega/N4IgJAzgxgFgpgWwIYgFwhgF0wBwqgegIDc4BzJAOjIEtMYBXAI0poHsDp5kTykSArJQBWENgDsQAGhAATJJhSoA2qHFIEcNCAAaAZT0ACAApsAwtJDEkAGwZwIaZQEYAujMwAnJOIgAzNk8EJ1BMAE8cLXQAoIYbFBkkR3QNNgZxTEs4AA8cT21oWzgACgByP3SoUqlDcTibGsNgKAlMHMxUJsKbB07gCvEoPus7OE7ukvLK6sNSuBHihTYmYoAdEABNAHVsmyhxAEU2AFk9AGsAdnWASmuZ5tb2von8JoGhppH7TuVXShbfF4GFBMIF-hIIECQYEAL5wmHXeEIkAw1yomFAA" } ], "source": { "advisory": "GHSA-4vq7-882g-wcg4", "discovery": "UNKNOWN" }, "title": "Vega `scale` expression function cross site scripting" } }, "cveMetadata": { "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "assignerShortName": "GitHub_M", "cveId": "CVE-2023-26486", "datePublished": "2023-03-03T23:48:41.382Z", "dateReserved": "2023-02-23T23:22:58.575Z", "dateUpdated": "2025-02-25T15:01:48.054Z", "state": "PUBLISHED" }, "dataType": "CVE_RECORD", "dataVersion": "5.1" }