Related Posts for WordPress <= 3.0.0 - Missing Authorization to Authenticated (Contributor+) Sensitive Information Exposure via 'rp4wp_create_link' Parameter
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: partial
Summary
The Related Posts for WordPress plugin, a WordPress extension, is affected in versions up to and including 3.0.0. An authenticated user with Contributor-level access or higher can view the titles of private, draft, pending, scheduled, or trashed posts written by other users, which should be hidden from them.
Summarized by anthropic/claude-haiku-5.5. Verify details against the original sources.
Read the original description
The Related Posts for WordPress plugin for WordPress is vulnerable to Sensitive Information Exposure in versions up to, and including, 3.0.0 via the 'rp4wp_create_link' parameter of the hidden 'rp4wp_link_related' admin page. The handle_create_link() handler verifies the nonce and that the current user can edit the parent post, but never checks that the attacker-supplied child post ID is one the user is allowed to read; LinkRepository::insert() stores the arbitrary child ID without validation, and ManageLinks::render() later calls LinkRepository::get_children() in its no-extra-args fast path, which falls through to array_map('get_post', $child_ids) — bypassing read_private_posts/read_post capability checks — and then echoes esc_html($child->post_title) in the parent's editor meta box. This makes it possible for authenticated attackers, with Contributor-level access and above, to read the titles of arbitrary non-public posts (drafts, pending, private, future, trashed) authored by higher-privileged users by linking those post IDs to a draft they own and then reading the resulting meta box.
Timeline
- CVE published
- First seen by cve.now
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: partial
- Record last updated
Affected versions
- barrykooij Related Posts for WordPress
through 3.0.0
References 7
plugins.trac.wordpress.org
- browser/related-posts-for-wp/tags/3.0.0/src/Admin/LinkScreen/Page.php#L164
- browser/related-posts-for-wp/tags/3.0.0/src/Links/LinkRepository.php#L86
- browser/related-posts-for-wp/tags/3.0.0/src/Admin/MetaBox/ManageLinks.php#L98
- browser/related-posts-for-wp/tags/3.0.0/src/Links/LinkRepository.php#L310
- changeset?reponame=&old=3757484%40related-posts-for-wp&new=3757484%40related-posts-for-wp
- changeset/3757484/related-posts-for-wp/trunk/src/Admin/LinkScreen/Page.php