← All CVEs NewScan detects
high

CVE-2026-64638

XSS2Shell: WordPress core pre-auth reflected XSS on wp-login.php via a strip_tags()/KSES parser differential

Severity
high
Affected product
WordPress
Affected versions
WordPress ≥ 7.0, < 7.0.3
Fixed in
WordPress 7.0.3
Added to NewScan
2026-08-08
Detected by
NewScan — free, self-hosted

How NewScan reports it

COMPONENT VERSION RANGE

NewScan fingerprints WordPress from its response and reports this CVE when the detected version falls inside the affected range below.

Added 2026-08-08. A tag with whitespace after the '<' (`< area`) survives PHP strip_tags() but is normalised back to real HTML by KSES, so the log= parameter on the login form lands attacker-controlled elements in the DOM and user-profile.js fires them - no authentication and no click. Version range and fixed_in are ground truth from the WordPress 7.0.3 release post + the MIT nuclei template (http/cves/2026/CVE-2026-64638.yaml, verified: true), not from the CVE prose. DELIBERATELY gated to the 7.0 branch only, even though the advisory says 'all versions < 7.0.3': WordPress backported this to every branch still eligible for security fixes (currently down to 4.7) and had not published those version numbers at fix time, so a flat `lt: 7.0.3` would have flagged every patched 6.9.x / 6.8.x / 5.x install as vulnerable - a false positive on an up-to-date site, which is worse than no gate. Widen this row per branch as the backport numbers land. Version source is the same one the two CVE-2026-63030 rows above already use, so the join is proven rather than assumed.

References

Scan for this yourself — local, in-band scanning is free.

Get NewScan (FREE) →