CVE-2026-59728

MEDIUMPre-NVD 4.34.3
EchelonGraph scoreLOW confidence

This medium-severity CVE scores 4.3 under the CNA's CVSS (NVD's own analysis pending). EPSS exploit-prediction score not yet available (the EPSS model rescores nightly; freshly-published CVEs typically appear within 48 hours). GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).

Triggered by: NVD CVSS baseline
Sources: cna:github_m
4.3EG
EchelonGraph verdictMonitorLow exploitation likelihood right now — keep watching.
  • Lower severity and no public exploit yet
CISA-KEV: Not listedEPSS PROB: CVSS: 4.3Exploit: None knownExposed: 0

No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.

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 can close an element early and inject additional nodes (as with source.title). This corrupts feed structure, injects false metadata (for example, a fake 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 v3
4.3
EG Score
4.3(low)
EG Risk
19(Track)
EG Risk 19/100SSVC: Track

EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).

How it’s computed
Severity43% × 45%
Exploitation0% × 40%
Automatability0% × 15%
Action: Routine — remediate on your standard cadence.
EPSS PROB
EPSS %ILE
KEV
Not listed

Published

July 20, 2026

Last Modified

July 28, 2026

Advisory Details (3)

Auto-updated Jul 27, 2026
🔬 Proof of concept available. Patch available. Sources: github, github_pr, github_commit.
github_commit Patch Available

commit fbcfa039dfe3 (withastro/astro)

Patch available: withastro/astro [email protected] (contains commit fbcfa039dfe3)

https://github.com/withastro/astro/commit/fbcfa039dfe3d700b239f595a6c55ee35e45bd06
github_pr Patch Available

Escape source and enclosure fields in RSS feed generation

Patch available: withastro/astro [email protected] (PR #17209 merged 2026-06-26)

https://github.com/withastro/astro/pull/17209
github Patch Available🟡 PoC Available

XML injection in @astrojs/rss via unescaped source and enclosure fields · Advisory · withastro/astro · GitHub

https://github.com/withastro/astro/security/advisories/GHSA-8j5q-mfj2-5q9q

Vendor Advisories for CVE-2026-59728(1)

These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.

Affected Packages

(1 across 1 ecosystem)
npm(1)
PackageVulnerable rangeFixed inDependents
@astrojs/rss4.0.19

Weakness Classification(1)

MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.

Data Freshness Timeline

(refreshed 4× in last 7d / 5× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

  1. 2026-07-28 14:42 UTCEG score recompute
  2. 2026-07-27 21:39 UTCEG score recompute
  3. 2026-07-26 10:45 UTCEG score recompute
  4. 2026-07-23 03:21 UTCEG score recompute
  5. 2026-07-20 23:33 UTCEG score recompute

Frequently asked(4)

What is CVE-2026-59728?
CVE-2026-59728 is a medium vulnerability published on July 20, 2026. 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…
When was CVE-2026-59728 disclosed?
CVE-2026-59728 was first published in the National Vulnerability Database on July 20, 2026, with the most recent update on July 28, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
What is the CVSS score of CVE-2026-59728?
CVE-2026-59728 has a CVSS v4.0 base score of 4.3 (CNA self-assessment; NVD's own analysis pending). The EG score is currently aggregating — additional source signals are being incorporated as they become available..
How do I remediate CVE-2026-59728?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2026-59728, EchelonGraph cross-links them in the Vendor Advisories panel below — those typically contain the canonical remediation steps, fixed version numbers, and any vendor-specific mitigations.

Dependency Blast Radius

See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-59728

Explore →

Is Your Infrastructure Affected by CVE-2026-59728?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.