Skip to main content

WP Photo Album Plus CVE-2026-92115

| EUVDEUVD-2026-102802 HIGH
Command Injection (CWE-77)
2026-10-16 Wordfence GHSA-2fg2-xfvj-r3qp
8.8
CVSS 3.1 · Vendor: Wordfence
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain WordPress account with wppa_upload capability
  2. Delivery
    Craft value parameter with percent-encoded shell metacharacters
  3. Exploit
    POST to update-photo AJAX action
  4. Execution
    wppa_decode restores metacharacters, breaks ImageMagick argument
  5. Persist
    exec() runs injected OS commands
  6. Impact
    Remote code execution as web-server user

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Command injection prevention
MITRE ATT&CK

1 technique across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires three concrete conditions: (1) the server must have ImageMagick enabled as the image-processing backend, since the injection occurs inside the wppa_image_magick_a() ImageMagick command string - sites using GD instead are not affected; (2) the attacker must authenticate as a WordPress user holding the plugin-specific wppa_upload capability, which is not a default role privilege but can be delegated by administrators to lower-privileged roles via the plugin's Users settings; and (3) the attack targets the update-photo AJAX action's value parameter. The percent-encoding sanitization bypass is inherent to the plugin's wppa_decode() behavior and requires no special configuration. Limiting factors: no code execution is possible without the wppa_upload capability and without ImageMagick active, so default WordPress installs that have not delegated the capability or that use GD are not exploitable.

Impact

This is a genuine high-priority vulnerability for sites running the affected plugin, not merely a high-CVSS paper risk. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H, score 8.8) indicates remote exploitation over the network, low complexity, no user interaction, and high impact across confidentiality, integrity, and availability - consistent with the described command injection leading to full RCE as the web-server user. The PR:L metric correctly reflects that authentication is required, but the key amplifier is that the required privilege is the plugin-defined wppa_upload capability, which administrators may delegate to lower-privileged roles, widening the attacker pool well beyond admins. No EPSS score, KEV listing, or POC was supplied in the input; per the data provided there is no public exploit identified and no evidence of active exploitation, so urgency rests on the intrinsic severity and ease of weaponization rather than confirmed in-the-wild activity. One genuine limiter that the raw CVSS does not capture: exploitation requires ImageMagick to be enabled on the server, so sites using GD or without ImageMagick configured are not exploitable via this path - verify this environmental precondition before treating any given install as vulnerable.

Exploit ScenarioDerived

An attacker who holds (or is granted) the wppa_upload capability - potentially a low-privileged, non-admin WordPress user - sends a crafted request to the update-photo AJAX action with a malicious value parameter containing percent-encoded shell metacharacters. Because wppa_decode() restores these characters and the value is concatenated without escapeshellarg() into the ImageMagick command passed to exec(), the attacker breaks out of the argument context and runs arbitrary OS commands as the web-server user. No public exploit is identified at time of analysis, but the flaw is straightforward to weaponize on servers where ImageMagick is enabled.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 1.5% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 16, 2026

Authenticated OS command injection in the WP Photo Album Plus WordPress plugin (all versions up to and including 9.3.02.002) lets any WordPress user granted the plugin-defined wppa_upload capability execute arbitrary operating-system commands as the web-server user, achieving full server-side code execution where ImageMagick is the active image backend. Rated CVSS 8.8 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H), the flaw is reachable through the update-photo AJAX action's value parameter, and no public exploit code was identified at time of analysis; the bug is not in CISA KEV. Because wppa_upload is a plugin-level privilege that administrators can delegate to lower-privileged roles, the effective attacker pool can extend well beyond site administrators on misconfigured sites.

RemediationAI

Vendor-released patch: 9.3.02.003. Upgrade the plugin to 9.3.02.003 or later, using the fixed distribution package at https://downloads.wordpress.org/plugin/wp-photo-album-plus.9.3.02.003.zip and the advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/fc663d68-ca52-4012-847f-09817c121890 for confirmation; no patched build of the 9.3.02.002-and-earlier code exists, so upgrading is the only complete fix. Where an immediate update is not possible, apply targeted compensating controls rather than generic hardening: first, audit roles and users that hold the plugin-defined wppa_upload capability (the plugin's Users settings can grant it to Editor, Author or custom roles) and remove it from every role except the minimum necessary administrators, since exploitation is gated entirely on that capability, at the cost of those roles no longer being able to upload or manage album photos; second, if ImageMagick is not required, switch the plugin's image-processing backend to GD in the plugin settings so the wppa_image_magick_a() command string is never constructed and the injection point is never reached, accepting reduced image-manipulation features and different output quality; third, if neither is workable, temporarily deactivate WP Photo Album Plus, which removes the update-photo AJAX endpoint along with all gallery functionality. Blocking or filtering the value parameter is not a reliable workaround because wppa_decode() re-creates percent-encoded shell metacharacters such as %26 and %23 after sanitization, so a WAF rule matching encoded input alone can be bypassed - it should only be treated as a stopgap while the plugin is upgraded, and shell-level hardening (disabling exec(), restricting the web user, running PHP with strict open_basedir) should be considered compensating containment with the trade-off of potentially breaking other plugins that legitimately shell out.

Affected VersionsENISA

WP Photo Album Plus 0 ≤9.3.02.002

Affected Packages

euvd wp_photo_album_plus 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 root cause is CWE-77 (improper neutralization of special elements used in a command), specifically a shell-argument escaping failure rather than classic SQLi/SSRF territory. Inside the plugin's wppa_image_magick_a() image-generation helper (see wppa-photo-files.php lines ~859 and ~874 in the 9.3.01.003 tag), the attacker-controlled value parameter from the update-photo AJAX handler (wppa-ajax.php lines ~2211, ~2223, ~2557) is concatenated directly into an ImageMagick command string and passed to PHP's exec() without escapeshellarg(), so shell metacharacters survive into the process invocation and can terminate the ImageMagick argument context to run an attacker-supplied command. The plugin's own sanitization does not help: wppa_decode() deliberately reverses percent-encoding, converting sequences such as %26 back to & and %23 back to #, so payloads that a naive filter might strip are restored to their live metacharacter form after the sanitization step. The vulnerable code path is only meaningful when the plugin uses ImageMagick as its image-processing backend; installations configured to use the GD library never build the concatenated ImageMagick command string and are therefore not exposed to this injection. The affected package is tracked by CPE cpe:2.3:a:opajaap:wp_photo_album_plus:*:*:*:*:*:*:*:* (all versions), and the Trac references point at the 9.3.01.003 tag while the 9.3.02.003 distribution archive in the references marks the post-fix release line.

Know when Wp Photo Album Plus 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 8.8 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 8.8 HIGH

Network-reachable AJAX endpoint (AV:N), no user interaction, and RCE as web-server user give full C/I/A impact; PR:L reflects the required wppa_upload capability rather than admin.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (Wordfence).

CVSS VectorVendor: Wordfence

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

DescriptionCVE.org

The WP Photo Album Plus plugin for WordPress is vulnerable to authenticated Command Injection in all versions up to, and including, 9.3.02.002 via the value parameter of the update-photo AJAX action. This is due to insufficient shell escaping within the wppa_image_magick_a() function, where the attacker-controlled value parameter is concatenated raw - without escapeshellarg() - into an ImageMagick command string before being passed to exec(); further, wppa_decode() actively restores percent-encoded shell metacharacters (e.g., %26→&, %23→#) rather than stripping them, allowing crafted payloads to survive sanitization and break out of the ImageMagick argument context. This makes it possible for authenticated attackers holding the plugin-defined wppa_upload capability to execute arbitrary operating-system commands as the web-server user, achieving full remote code execution on the underlying server. Exploitation requires ImageMagick to be enabled on the server; the wppa_upload capability is a plugin-level privilege that site administrators may grant to lower-privileged WordPress roles via the plugin's Users settings, broadening the pool of potential attackers beyond administrators.

Executive ViewAI

Why It Matters

WP Photo Album Plus WordPress plugin versions up to and including 9.3.02.002 contain an authenticated OS command injection vulnerability that allows users with the plugin's wppa_upload capability to execute arbitrary system commands, potentially leading to full server compromise. Organizations hosting WordPress sites with this plugin are at risk, especially if upload permissions have been delegated to lower-privileged roles, because an attacker with that capability can gain complete control of the web server. Leadership should act quickly since no vendor patch is currently available and the flaw enables high confidentiality, integrity, and availability impact.

Business Impact: High
Compensating Controls

Restrict the wppa_upload capability to trusted administrators only; deactivate the plugin if not essential; deploy WAF rules to block malicious value parameters in the update-photo AJAX action; switch image backend from ImageMagick to GD if possible; monitor logs for command injection attempts; enforce least privilege and MFA for all WordPress users.

Threat Intelligence Overview

EPSS Score
1.5%
Top 27% exploitable
Prevalence
Low
niche WordPress photo-album plugin with a modest install base
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 HIGH
CISA KEV No
Public POC No
EPSS 1.5%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

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

Attack Technique

OS command injection occurs when an application passes unsanitized user input directly into system shell commands.

Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.

CVE-2026-18049 HIGH POC
7.5 Aug 12

Unauthenticated information disclosure in WP Photo Album Plus (WordPress plugin, all versions before 9.2.07.002) allows

CVE-2026-18048 HIGH POC
7.5 Aug 12

Unauthenticated arbitrary file deletion in WP Photo Album Plus (versions before 9.2.07.002) exposes WordPress sites to p

CVE-2026-17013 MEDIUM POC
6.1 Aug 12

Reflected Cross-Site Scripting in the WP Photo Album Plus WordPress plugin (all versions before 9.2.07.002) allows unaut

CVE-2026-6379 HIGH POC
8.6 May 18

SQL injection in the WP Photo Album Plus WordPress plugin before 9.1.11.001 allows unauthenticated attackers to inject a

CVE-2026-18962 MEDIUM POC
4.3 Aug 12

Insufficient authorization in WP Photo Album Plus (all versions before 9.2.09.002) allows any authenticated WordPress us

CVE-2021-25115 MEDIUM POC
6.4 Feb 14

The WP Photo Album Plus WordPress plugin before 8.0.10 was vulnerable to Stored Cross-Site Scripting (XSS). Rated medium

CVE-2026-14922 MEDIUM POC
6.1 Jul 31

Stored XSS in WP Photo Album Plus (all versions up to 9.2.03.001) allows unauthenticated remote attackers to inject pers

CVE-2026-39511 CRITICAL
9.3 Jun 15

Unauthenticated SQL injection in the WP Photo Album Plus WordPress plugin (versions ≤ 9.1.08.001) allows remote attacker

CVE-2015-3647 MEDIUM POC
4.3 May 21

Multiple cross-site scripting (XSS) vulnerabilities in wppa-ajax-front.php in the WP Photo Album Plus (aka WPPA) plugin

CVE-2026-87909 HIGH
7.5 Sep 19

Remote code execution in WP Photo Album Plus affects all versions through the wppa_image_magick path, allowing authentic

CVE-2026-54829 HIGH
7.5 Jun 25

Blind SQL injection in the WP Photo Album Plus WordPress plugin (all versions up to and including 9.1.13.005) lets remot

CVE-2024-10958 HIGH
7.3 Nov 10

The The WP Photo Album Plus plugin for WordPress is vulnerable to arbitrary shortcode execution via getshortcodedrendere

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