CVE-2026-109979
ŚrednieCVSS 4.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 22 - wyżej niż 22% wszystkich znanych CVE
Streszczenie
Wtyczka Related Posts for WordPress jest podatna na ujawnienie poufnych informacji w wersjach do 3.0.0 włącznie, poprzez parametr 'rp4wp_create_link' ukrytej strony administracyjnej 'rp4wp_link_related'. Handler handle_create_link() weryfikuje nonce i uprawnienia do edycji posta nadrzędnego, ale nie sprawdza, czy identyfikator posta podrzędnego podany przez atakującego jest dozwolony do odczytu; LinkRepository::insert() przechowuje dowolny identyfikator bez walidacji, a ManageLinks::render() później wywołuje LinkRepository::get_children(), co omija kontrole uprawnień read_private_posts/read_post i wyświetla tytuł posta w metaboxie edytora. Umożliwia to uwierzytelnionym atakującym z poziomem Contributor lub wyższym odczytanie tytułów dowolnych niepublicznych postów (szkice, oczekujące, prywatne, przyszłe, kosz) autorstwa użytkowników o wyższych uprawnieniach poprzez powiązanie ich identyfikatorów z własnym szkicem.
Ocena ryzyka
Atakujący z kontem Contributor może odczytać tytuły poufnych postów, co może prowadzić do wycieku informacji i naruszenia prywatności. Może to ujawnić wrażliwe treści organizacji.
Rekomendacja
Zaktualizuj wtyczkę do wersji nowszej niż 3.0.0. Do czasu aktualizacji rozważ ograniczenie ról Contributor lub monitorowanie nietypowych powiązań postów.
Inne podatności w Related Posts for WordPress plugin
Oryginalny opis (angielski, źródło NVD)
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.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

