---
id: "CVE-2026-118164"
kind: "vulnerability"
aliases: ["CVE-2026-118164"]
title: "If-So Dynamic Content WordPress plugin: stored XSS via contributor-level editing"
severity: "medium"
cvss: 6.4
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["elementor", "package", "wordpress", "wordpress-plugin"]
not_affected_if: ["no-untrusted-contributors", "plugin-not-installed", "plugin-updated"]
published_at: "2026-10-28T07:16:48+00:00"
first_seen_at: "2026-10-28T07:31:38+00:00"
updated_at: "2026-10-28T07:32:58+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-118164", "first_seen_at": "2026-10-28T07:31:38+00:00"}]
---

# If-So Dynamic Content WordPress plugin: stored XSS via contributor-level editing

The If-So Dynamic Content plugin for WordPress fails to sanitize and escape several repeater fields, so authenticated contributors can store script that runs in pages. An attacker gets script execution in the browser of any visitor, or an admin, who opens an injected page.

_Summary, check and fix written by a model from the sources; labelled as such._

## How to check

- Check the installed version of the If-So Dynamic Content plugin in the WordPress admin plugin list or with `wp plugin get if-so --field=version`
- Confirm whether the plugin is active on the site

## Fix

- Update the If-So Dynamic Content plugin to a version later than `1.10.2`, as the description says all versions up to and including `1.10.2` are affected
- Review pages edited by contributors for injected script if the plugin was installed on a vulnerable version

## Timeline

- 2026-10-28T07:31:38+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-118164

## From the sources

The If-So Dynamic Content – Elementor & All Page Builders Personalization plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'repeater[*][version_uid] (and many sibling fields: freeze-mode, cookie-input, ip-input, compare, utm-value, page-url-compare, group-name, custom, …)' parameter in all versions up to, and including, 1.10.2 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
