CVE-2026-85017 in Unlimited Elements for Elementor Plugininfo

Summary

by MITRE • 09/20/2026

The Unlimited Elements For Elementor WordPress plugin before 2.0.20 does not perform a capability check on an AJAX action and deserializes attacker-controlled stored data through it, which makes it possible for authenticated attackers with subscriber-level access to inject arbitrary PHP objects. A partial fix in the 2.0.18 to 2.0.19 releases raised the privilege required to reach the vulnerable action to editor-level, and the issue was fully resolved in 2.0.20.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Analysis

by VulDB Data Team • 09/20/2026

The vulnerability identified in the Unlimited Elements For Elementor WordPress plugin prior to version 2.0.20 represents a critical security flaw rooted in improper access control mechanisms combined with unsafe data handling practices. Specifically, the plugin fails to perform adequate capability checks on certain AJAX actions it exposes. This oversight allows authenticated users with minimal privileges, such as those holding subscriber-level access, to interact directly with backend functionality that should be restricted to higher-privileged roles like administrators or editors. The core technical issue lies in how these endpoints process incoming data; they deserialize user-supplied input without sufficient validation or sanitization. In the context of PHP applications, deserialization is a high-risk operation because it can lead to object injection attacks if the serialized data contains maliciously crafted objects that exploit vulnerabilities within the application's dependencies or core codebase.

The operational impact of this vulnerability is severe due to its low barrier for exploitation and potential consequences. An attacker with even basic subscriber-level access, which is often one of the easiest roles to obtain on a WordPress site through public registration, can leverage this flaw to inject arbitrary PHP objects into the application's execution context. This capability effectively grants the attacker remote code execution capabilities under the security context of the web server process. By manipulating serialized data sent via AJAX requests, an attacker could potentially execute system commands, access sensitive database information, modify website content, or use the compromised site as a pivot point for further attacks against internal networks. The severity is compounded by the fact that this vulnerability persists across multiple versions and was only partially mitigated in intermediate releases before being fully addressed in version 2.0.20.

Historically, developers attempted to mitigate this issue incrementally between versions 2.0.18 and 2.0.19 by raising the required privilege level from subscriber to editor for accessing the vulnerable AJAX action. While this partial fix reduced the attack surface by requiring a higher level of trust within the WordPress ecosystem, it did not resolve the underlying architectural flaw regarding unsafe deserialization practices. This incremental approach highlights a common challenge in plugin development where security patches are applied reactively rather than through rigorous secure coding standards from inception. The complete resolution arrived only with version 2.0.20, which implemented proper capability checks and secured the deserialization process to prevent unauthorized object injection.

From a classification perspective, this vulnerability aligns closely with CWE-862, which denotes Missing Authorization, as the application failed to enforce appropriate access controls for specific functions. Furthermore, it relates to CWE-502, Deserialization of Untrusted Data, due to the unsafe handling of serialized objects derived from user input. In terms of offensive security frameworks such as MITRE ATT&CK, this vulnerability facilitates techniques associated with Initial Access and Privilege Escalation, allowing attackers to leverage weak authentication controls to gain a foothold and potentially escalate privileges within the compromised environment.

To mitigate risks associated with similar vulnerabilities in WordPress ecosystems, administrators should ensure that all plugins are updated to their latest stable versions immediately upon release of security patches. It is crucial to audit plugin code for proper use of capability checks using functions like current_user_can or user_can before processing any AJAX requests. Developers must avoid deserializing untrusted data entirely; if serialization is necessary, it should be paired with integrity verification mechanisms such as HMAC signatures to ensure the data has not been tampered with by unauthorized parties. Additionally, implementing strict input validation and output encoding practices can further reduce the risk of exploitation across various attack vectors beyond just AJAX endpoints.

Responsible

WPScan

Reservation

09/02/2026

Disclosure

09/20/2026

Moderation

accepted

CPE

ready

EPSS

0.00000

KEV

no

Activities

very low

Sources

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!