Description
The Slim SEO – A Fast & Automated SEO Plugin For WordPress plugin for WordPress is vulnerable to Unauthorized Private Content Disclosure in all versions up to, and including, 4.9.8 via the `/wp-json/slim-seo/meta-tags/ai` REST API endpoint. This is due to the endpoint's `permission_callback` performing only a top-level `edit_posts` capability check without verifying that the requesting user has read access to the specific post supplied via the `object.ID` parameter, allowing the `generate` function to pass the attacker-controlled post ID to `Data::get_post_content()`, which calls `get_post()` regardless of post status or ownership. This makes it possible for authenticated attackers with Contributor-level access and above to retrieve AI-generated summaries of the raw `post_content` of arbitrary posts they are not authorized to view — including private posts, drafts, pending, future, and password-protected content authored by other users — with the substance of the protected content disclosed via the HTTP response.
Published: 2026-07-01
Score: 4.3 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Slim SEO plugin contains a flaw in its /wp-json/slim-seo/meta-tags/ai REST endpoint where the permission callback checks only for the top‑level edit_posts capability. This allows an authenticated user with Contributor or higher access to supply any post ID in the object.ID parameter and receive AI‑generated summaries of that post’s raw content. Because get_post() is called without verifying the requester’s read access, private, draft, pending, future, and password‑protected posts belonging to other authors can be exposed.

Affected Systems

This issue affects all installations of the Slim SEO – A Fast & Automated SEO Plugin for WordPress version 4.9.8 and earlier. Versions beyond 4.9.8 contain the fix.

Risk and Exploitability

The CVSS score of 4.3 reflects a moderate risk due to the need for authenticated access. The EPSS score is not available, indicating no public data on exploitation prevalence. The vulnerability is not listed in CISA KEV, but authenticated contributors already exist on many sites. Attackers can exploit the endpoint by sending a crafted GET/POST request containing the desired post ID after authenticating, causing the plugin to return the raw post content in the response. The impact is disclosure of content that should be hidden from the requesting user.

Generated by OpenCVE AI on July 1, 2026 at 12:49 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Slim SEO plugin to version 4.9.9 or later, which applies a stricter capability check and restricts post ID access to the requester’s read permissions.
  • If an upgrade is not immediately possible, remove or downgrade the contributor role for users who should not access private content, or reassign contributors to a role with no edit_posts capability.
  • As a temporary workaround, disable or remove the /wp-json/slim-seo/meta-tags/ai REST route by unchecking the corresponding setting in the plugin settings, or by editing the plugin code to add a proper permission_callback that verifies read access to the specified post ID.

Generated by OpenCVE AI on July 1, 2026 at 12:49 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 01 Jul 2026 11:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Wed, 01 Jul 2026 08:15:00 +0000

Type Values Removed Values Added
Description The Slim SEO – A Fast & Automated SEO Plugin For WordPress plugin for WordPress is vulnerable to Unauthorized Private Content Disclosure in all versions up to, and including, 4.9.8 via the `/wp-json/slim-seo/meta-tags/ai` REST API endpoint. This is due to the endpoint's `permission_callback` performing only a top-level `edit_posts` capability check without verifying that the requesting user has read access to the specific post supplied via the `object.ID` parameter, allowing the `generate` function to pass the attacker-controlled post ID to `Data::get_post_content()`, which calls `get_post()` regardless of post status or ownership. This makes it possible for authenticated attackers with Contributor-level access and above to retrieve AI-generated summaries of the raw `post_content` of arbitrary posts they are not authorized to view — including private posts, drafts, pending, future, and password-protected content authored by other users — with the substance of the protected content disclosed via the HTTP response.
Title Slim SEO <= 4.9.8 - Authenticated (Contributor+) Insufficient Authorization to Private Content Disclosure via 'object.ID' Parameter
Weaknesses CWE-200
References
Metrics cvssV3_1

{'score': 4.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-07-01T10:32:04.144Z

Reserved: 2026-06-16T14:37:03.010Z

Link: CVE-2026-12408

cve-icon Vulnrichment

Updated: 2026-07-01T10:30:34.115Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-01T13:00:15Z

Weaknesses
  • CWE-200

    Exposure of Sensitive Information to an Unauthorized Actor