---
id: "CVE-2026-116512"
kind: "vulnerability"
aliases: ["CVE-2026-116512"]
title: "WordPress Project Manager plugin: unauthenticated remote code execution via id parameter"
severity: "critical"
cvss: 9.8
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["package", "self-hosted", "wordpress", "wordpress-plugin"]
not_affected_if: ["plugin-not-installed"]
published_at: "2026-10-31T08:16:48+00:00"
first_seen_at: "2026-10-31T08:34:28+00:00"
updated_at: "2026-10-31T08:35:00+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-116512", "first_seen_at": "2026-10-31T08:34:28+00:00"}]
---

# WordPress Project Manager plugin: unauthenticated remote code execution via id parameter

The Project Manager WordPress plugin up to and including 4.1.1 passes the 'id' parameter into a validation string that is split and run as PHP functions. An unauthenticated attacker can make the server execute code.

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

## How to check

- Check whether the WordPress plugin 'Project Manager' is installed and its version in the plugins list or `wp plugin list`
- Confirm the installed version is above `4.1.1` or not present at all

## Fix

- Project Manager plugin: move to a version later than `4.1.1` (no fixed version stated in the sources)

## Timeline

- 2026-10-31T08:34:28+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-116512

## From the sources

The Project Manager – AI Powered Project Management, Task Management, Kanban Board & Time Tracker plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 4.1.1 via the 'id' parameter parameter. This is due to unsanitized 'id' parameter value concatenated directly into the pipe-delimited validation rule string, which is then split and each token invoked as a dynamic PHP function with no allowlist check. This makes it possible for unauthenticated attackers to execute code on the server. This is exploitable by unauthenticated attackers because WordPress core executes the route argument's validate_callback inside WP_REST_Server::dispatch() before the route's permission_callback is invoked, meaning the Project_Manage_Capability authorization gate is never reached on the vulnerable code path.

---

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