Skip to main content

PHP EUVDEUVD-2026-20840

| CVE-2026-3568 MEDIUM
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-04-09 Wordfence GHSA-fg73-jmcf-5xr8
4.3
CVSS 3.1 · Vendor: Wordfence
View

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
Impact

The CVSS 4.3 score reflects a low-severity remote vulnerability requiring low-privileged authentication (PR:L), no user interaction, and network accessibility (AV:N/AC:L). Exploitation probability is moderate: while the attack requires valid subscriber-level credentials, such accounts are common in WordPress communities and shops. The real-world impact depends on site configuration-legacy privilege escalation via wp_user_level is only relevant if the site or plugins use that deprecated field for authorization checks; modern WordPress relies on wp_capabilities (serialized array), which this vector cannot directly exploit. However, plugin-specific meta keys present a real escalation risk if used for authorization decisions (common in membership and access-control plugins). Stored XSS through unsanitized billing fields could compromise admin accounts if admins view user profiles. The combination of low CVSS, authenticated-only access vector, and impact variability suggests this is a medium-priority issue for WordPress sites using MStore API with plugins that depend on meta-key-based authorization, but lower priority for sites with modern, capability-based access controls. The lack of public exploit code and active exploitation signals further reduces immediate risk, though the straightforward nature of the vulnerability (direct JSON injection to meta update) means exploit development would be trivial.

Exploit ScenarioDerived

An attacker with valid subscriber-level credentials logs into a WordPress site using MStore API ≤ 4.18.3 and makes an authenticated POST request to the update_user_profile() endpoint with a JSON payload containing meta_data fields such as wp_user_level set to 10 (admin equivalent) or plugin-specific authorization keys. The endpoint processes this JSON without validation and updates the attacker's own user meta fields in the database. If the site or plugins check wp_user_level for legacy privilege decisions, or if plugin-specific meta keys control feature access, the attacker gains elevated privileges. Alternatively, the attacker could inject malicious HTML or JavaScript into a sanitized-but-stored billing field, which would execute when administrators view the user's profile in wp-admin. No public proof-of-concept exploit code has been published as of the analysis date.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Apr 09, 2026

Authenticated subscribers and above in WordPress sites using MStore API plugin up to version 4.18.3 can modify arbitrary user meta fields on their own accounts, including legacy privilege escalation keys like wp_user_level and plugin-specific authorization flags, potentially leading to privilege escalation or stored XSS. The vulnerability stems from the update_user_profile() function accepting unsanitized, user-supplied meta_data JSON without allowlist or validation before passing it directly to update_user_meta(). No public exploit code or active exploitation has been identified at this time.

RemediationAI

Update MStore API to version 4.18.4 or later immediately, as patched versions are available per the WordPress plugin repository. The fix involves implementing a meta key allowlist in the update_user_profile() function to restrict which user meta fields can be modified via the API, and sanitizing all user-supplied values before passing them to update_user_meta(). Administrators should audit their user meta fields (via wp-cli: wp user list --meta --field=user_login,meta_data or via phpmyadmin) to identify any suspicious modifications made by subscribers during the vulnerability window. For sites unable to patch immediately, disable the MStore API plugin or restrict API access via Web Application Firewall rules until patching is completed. Refer to the Wordfence vulnerability advisory (https://www.wordfence.com/threat-intel/vulnerabilities/id/a77bc126-4dbd-4a26-b98c-946341d4282f) for detailed patch information and the WordPress plugin repository changelog.

Affected VersionsENISA

MStore API – Create Native Android & iOS Apps On The Cloud 0 ≤4.18.3

Affected Packages

euvd mstore_api_create_native_android_ios_apps_on_the_cloud no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The MStore API plugin (CPE: cpe:2.3:a:inspireui:mstore_api_-_create_native_android_&_ios_apps_on_the_cloud:*:*:*:*:*:*:*:*) exposes a REST API endpoint that processes user profile updates via the update_user_profile() function in controllers/flutter-user.php. The function reads raw JSON from php://input, decodes it without schema validation, and performs basic cookie-based authentication. However, it then directly iterates over the user-supplied meta_data array and passes arbitrary key-value pairs to WordPress's update_user_meta() function with no validation of which meta keys are allowed. This is a classic Insecure Direct Object Reference (IDOR) vulnerability combined with improper input validation (CWE-639). While WordPress's wp_capabilities field is protected by serialization requirements, legacy meta keys such as wp_user_level (a simple integer used by older privilege checks) and plugin-specific flags (_wpuf_user_active, aiowps_account_status) are directly exploitable. Additionally, unsanitized billing and profile meta fields stored via this function could be rendered in admin contexts, enabling stored XSS.

Know when PHP gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (Wordfence) PRIMARY 4.3 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N

Primary rating from Vendor (Wordfence) · only source for this CVE.

CVSS VectorVendor: Wordfence

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
Low
Availability
None

DescriptionCVE.org

The MStore API plugin for WordPress is vulnerable to Insecure Direct Object Reference in all versions up to, and including, 4.18.3. This is due to the update_user_profile() function in controllers/flutter-user.php processing the 'meta_data' JSON parameter without any allowlist, blocklist, or validation of meta keys. The function reads raw JSON from php://input (line 1012), decodes it (line 1013), authenticates the user via cookie validation (line 1015), and then directly iterates over the user-supplied meta_data array passing arbitrary keys and values to update_user_meta() (line 1080) with no sanitization or restrictions. This makes it possible for authenticated attackers, with Subscriber-level access and above, to modify arbitrary user meta fields on their own accounts, including sensitive fields like wp_user_level (to escalate to administrator-level legacy checks), plugin-specific authorization flags (e.g., _wpuf_user_active, aiowps_account_status), and billing/profile fields with unsanitized values (potentially enabling Stored XSS in admin contexts). Note that wp_capabilities cannot be directly exploited this way because it requires a serialized array value, but wp_user_level (a simple integer) and numerous plugin-specific meta keys are exploitable.

Threat Intelligence Overview

EPSS Score
0.0%
Top 91% exploitable
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.0%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

22
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +22
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

More in PHP

View all
CVE-2019-11043 CRITICAL POC
9.8 Oct 28

In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it

CVE-2012-1823 CRITICAL POC
9.8 May 11

sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not

CVE-2016-1555 CRITICAL POC
9.8 Apr 21

(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear

CVE-2018-11138 CRITICAL POC
9.8 May 31

The '/common/download_agent_installer.php' script in the Quest KACE System Management Appliance 8.0.318 is accessible by

CVE-2024-11680 CRITICAL POC
9.8 Nov 26

ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C

CVE-2025-49113 CRITICAL POC
9.9 Jun 02

Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au

CVE-2017-9841 CRITICAL POC
9.8 Jun 27

Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c

CVE-2025-0108 HIGH POC
8.8 Feb 12

Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers

CVE-2021-25298 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2021-25296 HIGH POC
8.8 Feb 15

Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re

CVE-2013-4983 CRITICAL POC
10.0 Sep 10

The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows

CVE-2023-6553 CRITICAL POC
9.8 Dec 15

The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy