{"api_version":"1","generated_at":"2026-10-30T10:11:33+00:00","cve":"CVE-2026-110732","urls":{"html":"https://cve.report/CVE-2026-110732","api":"https://cve.report/api/cve/CVE-2026-110732.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-110732","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-110732"},"summary":{"title":"AI Engine – The Chatbot, AI Framework & MCP for WordPress <= 3.8.6 - Missing Authorization to Administrator Account Takeover via Unauthenticated MCP OAuth Client Registration","description":"The AI Engine – The Chatbot, AI Framework & MCP for WordPress plugin for WordPress is vulnerable to Missing Authorization in all versions up to, and including, 3.8.6 This is due to the MCP module's OAuth 2.1 Dynamic Client Registration endpoint (/wp-json/mcp/v1/oauth/register) being registered with a permission_callback of __return_true, allowing an unauthenticated user to register an active OAuth client with an attacker-controlled redirect URI. This makes it possible for unauthenticated attackers to obtain an administrator-bound MCP access token, and thereby full administrator-level control through the MCP tools (including user creation and option updates), once an administrator approves the attacker's client on the OAuth consent screen. The consent page is additionally served without X-Frame-Options or Content-Security-Policy frame-ancestors, so that approval can be obtained via clickjacking.","state":"PUBLISHED","assigner":"Wordfence","published_at":"2026-10-30 07:16:31","updated_at":"2026-10-30 07:16:31"},"problem_types":["CWE-862","CWE-862 CWE-862 Missing Authorization"],"metrics":[{"version":"3.1","source":"security@wordfence.com","type":"Primary","score":"7.5","severity":"HIGH","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","baseScore":7.5,"baseSeverity":"HIGH","attackVector":"NETWORK","attackComplexity":"HIGH","privilegesRequired":"NONE","userInteraction":"REQUIRED","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"}},{"version":"3.1","source":"CNA","type":"DECLARED","score":"7.5","severity":"HIGH","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","data":{"baseScore":7.5,"baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","version":"3.1"}}],"references":[{"url":"https://plugins.trac.wordpress.org/changeset?reponame=&new=3760852%40ai-engine%2Ftags%2F3.8.7&old=3757660%40ai-engine%2Ftags%2F3.8.6","name":"https://plugins.trac.wordpress.org/changeset?reponame=&new=3760852%40ai-engine%2Ftags%2F3.8.7&old=3757660%40ai-engine%2Ftags%2F3.8.6","refsource":"security@wordfence.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.wordfence.com/threat-intel/vulnerabilities/id/eb115a8a-35f8-426f-bb67-4a523f67cb34?source=cve","name":"https://www.wordfence.com/threat-intel/vulnerabilities/id/eb115a8a-35f8-426f-bb67-4a523f67cb34?source=cve","refsource":"security@wordfence.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp-oauth.php#L496","name":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp-oauth.php#L496","refsource":"security@wordfence.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp-oauth.php#L609","name":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp-oauth.php#L609","refsource":"security@wordfence.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://plugins.trac.wordpress.org/changeset/3760851/ai-engine/trunk/labs/mcp-oauth.php","name":"https://plugins.trac.wordpress.org/changeset/3760851/ai-engine/trunk/labs/mcp-oauth.php","refsource":"security@wordfence.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp.php#L232","name":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp.php#L232","refsource":"security@wordfence.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp-oauth.php#L317","name":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp-oauth.php#L317","refsource":"security@wordfence.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp-oauth.php#L1159","name":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp-oauth.php#L1159","refsource":"security@wordfence.com","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-110732","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-110732","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"tigroumeow","product":"AI Engine – MCP Server & AI Chatbot for WordPress, with Claude, ChatGPT & Gemini","version":"affected 3.8.6 semver","platforms":[]}],"timeline":[{"source":"CNA","time":"2026-10-14T15:37:28.000Z","lang":"en","value":"Vendor Notified"},{"source":"CNA","time":"2026-10-29T18:00:34.000Z","lang":"en","value":"Disclosed"}],"solutions":[],"workarounds":[],"exploits":[],"credits":[{"source":"CNA","value":"satoshigpt2021-sketch","lang":"en"}],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":null,"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"AI Engine – MCP Server & AI Chatbot for WordPress, with Claude, ChatGPT & Gemini","vendor":"tigroumeow","versions":[{"lessThanOrEqual":"3.8.6","status":"affected","version":"0","versionType":"semver"}]}],"credits":[{"lang":"en","type":"finder","value":"satoshigpt2021-sketch"}],"descriptions":[{"lang":"en","value":"The AI Engine – The Chatbot, AI Framework & MCP for WordPress plugin for WordPress is vulnerable to Missing Authorization in all versions up to, and including, 3.8.6 This is due to the MCP module's OAuth 2.1 Dynamic Client Registration endpoint (/wp-json/mcp/v1/oauth/register) being registered with a permission_callback of __return_true, allowing an unauthenticated user to register an active OAuth client with an attacker-controlled redirect URI. This makes it possible for unauthenticated attackers to obtain an administrator-bound MCP access token, and thereby full administrator-level control through the MCP tools (including user creation and option updates), once an administrator approves the attacker's client on the OAuth consent screen. The consent page is additionally served without X-Frame-Options or Content-Security-Policy frame-ancestors, so that approval can be obtained via clickjacking."}],"metrics":[{"cvssV3_1":{"baseScore":7.5,"baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","version":"3.1"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-862","description":"CWE-862 Missing Authorization","lang":"en","type":"CWE"}]}],"providerMetadata":{"dateUpdated":"2026-10-30T06:47:32.210Z","orgId":"b15e7b5b-3da4-40ae-a43c-f7aa60e62599","shortName":"Wordfence"},"references":[{"url":"https://www.wordfence.com/threat-intel/vulnerabilities/id/eb115a8a-35f8-426f-bb67-4a523f67cb34?source=cve"},{"url":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp-oauth.php#L1159"},{"url":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp-oauth.php#L496"},{"url":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp-oauth.php#L317"},{"url":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp-oauth.php#L609"},{"url":"https://plugins.trac.wordpress.org/browser/ai-engine/tags/3.8.3/labs/mcp.php#L232"},{"url":"https://plugins.trac.wordpress.org/changeset?reponame=&new=3760852%40ai-engine%2Ftags%2F3.8.7&old=3757660%40ai-engine%2Ftags%2F3.8.6"},{"url":"https://plugins.trac.wordpress.org/changeset/3760851/ai-engine/trunk/labs/mcp-oauth.php"}],"timeline":[{"lang":"en","time":"2026-10-14T15:37:28.000Z","value":"Vendor Notified"},{"lang":"en","time":"2026-10-29T18:00:34.000Z","value":"Disclosed"}],"title":"AI Engine – The Chatbot, AI Framework & MCP for WordPress <= 3.8.6 - Missing Authorization to Administrator Account Takeover via Unauthenticated MCP OAuth Client Registration"}},"cveMetadata":{"assignerOrgId":"b15e7b5b-3da4-40ae-a43c-f7aa60e62599","assignerShortName":"Wordfence","cveId":"CVE-2026-110732","datePublished":"2026-10-30T06:47:32.210Z","dateReserved":"2026-10-14T15:22:06.871Z","dateUpdated":"2026-10-30T06:47:32.210Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-10-30 07:16:31","lastModifiedDate":"2026-10-30 07:16:31","problem_types":["CWE-862","CWE-862 CWE-862 Missing Authorization"],"metrics":{"cvssMetricV31":[{"source":"security@wordfence.com","type":"Primary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","baseScore":7.5,"baseSeverity":"HIGH","attackVector":"NETWORK","attackComplexity":"HIGH","privilegesRequired":"NONE","userInteraction":"REQUIRED","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"},"exploitabilityScore":1.6,"impactScore":5.9}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"110732","Ordinal":"1","Title":"AI Engine – The Chatbot, AI Framework & MCP for WordPress <= 3.8","CVE":"CVE-2026-110732","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"110732","Ordinal":"1","NoteData":"The AI Engine – The Chatbot, AI Framework & MCP for WordPress plugin for WordPress is vulnerable to Missing Authorization in all versions up to, and including, 3.8.6 This is due to the MCP module's OAuth 2.1 Dynamic Client Registration endpoint (/wp-json/mcp/v1/oauth/register) being registered with a permission_callback of __return_true, allowing an unauthenticated user to register an active OAuth client with an attacker-controlled redirect URI. This makes it possible for unauthenticated attackers to obtain an administrator-bound MCP access token, and thereby full administrator-level control through the MCP tools (including user creation and option updates), once an administrator approves the attacker's client on the OAuth consent screen. The consent page is additionally served without X-Frame-Options or Content-Security-Policy frame-ancestors, so that approval can be obtained via clickjacking.","Type":"Description","Title":"AI Engine – The Chatbot, AI Framework & MCP for WordPress <= 3.8"}]}}}