{"cve":"CVE-2026-59728","nvd":{"published":"2026-07-27T21:17:05.700","modified":"2026-10-24T13:10:00.147","status":"Deferred","description":"Astro is a web framework for content-driven websites. In versions 1.0.0 through 4.0.18, the source.title and enclosure.type item fields in packages/astro-rss/src/index.ts are interpolated directly into XML template strings without XML-character escaping before being parsed by fast-xml-parser. Both fields are validated only as z.string(), placing no restriction on XML special characters. An attacker who controls these values can inject arbitrary XML into the generated RSS feed: a value containing \" can break out of an attribute (as with enclosure.type), and a value containing </source> can close an element early and inject additional nodes (as with source.title). This corrupts feed structure, injects false metadata (for example, a fake <link> pointing to a malicious URL), and can cause feed readers to misparse or display attacker-controlled content. In SSR mode (output: 'server'), the poisoned feed is served on every request to all subscribers. This issue has been fixed in version 4.0.19.","cvss_v4":null,"cvss_v3":{"version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N","score":4.3},"cwes":["CWE-91"],"references":["https://github.com/withastro/astro/commit/fbcfa039dfe3d700b239f595a6c55ee35e45bd06","https://github.com/withastro/astro/pull/17209","https://github.com/withastro/astro/releases/tag/@astrojs/rss@4.0.19","https://github.com/withastro/astro/security/advisories/GHSA-8j5q-mfj2-5q9q","https://github.com/withastro/astro/security/advisories/GHSA-8j5q-mfj2-5q9q"],"products":[],"source":"nvd","synced_at":"2026-10-24T16:53:27.712498749+00:00"},"epss":{"cve":"CVE-2026-59728","score":0.00322,"percentile":0.25011,"date":"2026-10-25"},"kev":null,"osv":[{"id":"GHSA-8j5q-mfj2-5q9q","url":"https://osv.dev/vulnerability/GHSA-8j5q-mfj2-5q9q","summary":"@astrojs/rss: XML Injection via Unescaped RSS Feed Fields","modified":"2026-08-12T20:45:07.738233105Z","packages":[{"ecosystem":"npm","name":"@astrojs/rss","purl":"pkg:npm/%40astrojs/rss","ranges":[">=1.0.0 <4.0.19"],"fixed":["4.0.19"]}]}],"attribution":["This product uses the NVD API but is not endorsed or certified by the NVD.","EPSS scores: FIRST Exploit Prediction Scoring System, https://www.first.org/epss","Known exploited vulnerabilities: CISA Known Exploited Vulnerabilities Catalog, https://www.cisa.gov/known-exploited-vulnerabilities-catalog","Package advisories: OSV (https://osv.dev), from the GitHub Advisory Database, PyPA, Go, RustSec and other ecosystem databases, under CC-BY 4.0 or CC0","CVE records: the CVE Program's CVE List (https://www.cve.org), under its terms of use (https://www.cve.org/Legal/TermsOfUse). CVE is a registered trademark of The MITRE Corporation; this product is not affiliated with the CVE Program."]}