CVE-2026-87971: If-So Dynamic Content cross-site scripting (XSS) vulnerability
high 7.1 published 2026-10-07
- Affected versions
- 1.4.4 up to (not including) 1.10.2
- Fixed in
- 1.10.2
- Latest version
- 1.10.3
- Severity
- High · CVSS 7.1
- Active installs
- 7,000+
- Type
- Cross-site scripting (XSS)
What an attacker needs
- Access: None. No account or login is needed (per the CVSS score).
- Interaction: It also needs someone on the site (often an admin) to click a link, open a page or submit a form the attacker prepared.
CVSS vector (score by CISA ADP): CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L
What to do now
- Update If-So Dynamic Content to 1.10.2 or newer (the latest is 1.10.3): Dashboard → Updates, or Plugins → “update now”.
- If you cannot update right away, deactivate it until you can.
- Turn on auto-updates for it: Plugins → “Enable auto-updates” on its row.
- Not sure which version you run? Check your version against every known If-So Dynamic Content issue.
With WP-CLI:
wp plugin get if-so --field=version. - If you ran an affected version and something looks off (new admin users, spam pages, redirects), run the free scan below.
The advisory
The If-So Dynamic Content WordPress plugin before 1.10.2 does not validate the URL scheme of a request-supplied value before reflecting it into a link on an admin page, allowing attackers to execute arbitrary JavaScript in the browser of a logged-in user who opens a crafted link.
References
- NVD CVE-2026-87971 nvd.nist.gov
- WPScan advisory wpscan.com
Related
Ran an affected version? Check your site for signs of a hack
The free scan reads the public side of your site and looks for spam pages, hidden redirects, injected scripts and blacklist entries. No login, no install, about a minute.
Where this data comes from
- CVE record, score and references: NIST National Vulnerability Database (NVD), checked 2026-11-04. This product uses data from the NVD API but is not endorsed or certified by the NVD.
- Versions and install counts: wordpress.org/plugins/if-so (Plugins API), fetched 2026-11-04.
- The summary, “what an attacker needs” and “what to do” sections are our plain-English reading of the record and the plugin's release history; the quoted description is the record's own text. Spot an error? Email Daniel.