GHSA-C4GR-Q97G-PPWC
Vulnerability from github – Published: 2024-04-01 20:33 – Updated: 2024-09-12 13:52
VLAI?
Summary
In Astro-Shield, setting a correct `integrity` attribute to injected code allows to bypass the allow-lists
Details
Impact
Versions from 1.2.0 to 1.3.1 of Astro-Shield allow to bypass the allow-lists for cross-origin resources by introducing valid integrity attributes to the injected code. This implies that the injected SRI hash would be added to the generated CSP header, which would lead the browser to believe that the injected resource is legit.
To exploit this vulnerability, the attacker needs to first inject code into the rendered pages by exploiting other not-related potential vulnerabilities.
Patches
Version 1.3.2 provides a patch.
Workarounds
- To not use the middleware functionality of Astro-Shield.
- To use the middleware functionality of Astro-Shield ONLY for content that cannot be controlled in any way by external users.
References
Are there any links users can visit to find out more?
Severity ?
{
"affected": [
{
"package": {
"ecosystem": "npm",
"name": "@kindspells/astro-shield"
},
"ranges": [
{
"events": [
{
"introduced": "1.2.0"
},
{
"fixed": "1.3.2"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2024-30250"
],
"database_specific": {
"cwe_ids": [
"CWE-345"
],
"github_reviewed": true,
"github_reviewed_at": "2024-04-01T20:33:53Z",
"nvd_published_at": "2024-04-04T15:15:39Z",
"severity": "HIGH"
},
"details": "### Impact\n\nVersions from 1.2.0 to 1.3.1 of Astro-Shield allow to bypass the allow-lists for cross-origin resources by introducing valid `integrity` attributes to the injected code. This implies that the injected SRI hash would be added to the generated CSP header, which would lead the browser to believe that the injected resource is legit.\n\nTo exploit this vulnerability, the attacker needs to first inject code into the rendered pages by exploiting other not-related potential vulnerabilities.\n\n### Patches\n\nVersion [1.3.2](https://github.com/kindspells/astro-shield/releases/tag/1.3.2) provides a patch.\n\n### Workarounds\n- To not use the middleware functionality of Astro-Shield.\n- To use the middleware functionality of Astro-Shield ONLY for content that cannot be controlled in any way by external users.\n\n### References\n_Are there any links users can visit to find out more?_\n",
"id": "GHSA-c4gr-q97g-ppwc",
"modified": "2024-09-12T13:52:45Z",
"published": "2024-04-01T20:33:53Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/kindspells/astro-shield/security/advisories/GHSA-c4gr-q97g-ppwc"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2024-30250"
},
{
"type": "WEB",
"url": "https://github.com/kindspells/astro-shield/commit/1221019306f501bf5fa9bcfb5a23a2321d34ba0a"
},
{
"type": "WEB",
"url": "https://github.com/kindspells/astro-shield/commit/5ae8b8ef4f681d3a81431ee7e79d5dec545c6e1f"
},
{
"type": "PACKAGE",
"url": "https://github.com/kindspells/astro-shield"
},
{
"type": "WEB",
"url": "https://github.com/kindspells/astro-shield/releases/tag/1.3.2"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N",
"type": "CVSS_V3"
},
{
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N",
"type": "CVSS_V4"
}
],
"summary": "In Astro-Shield, setting a correct `integrity` attribute to injected code allows to bypass the allow-lists"
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Loading…
Loading…