CVE-2026-87909 json
WP Photo Album Plus <= 9.2.09.002 - Authenticated (Subscriber+) Remote Code Execution via Multipart Upload Filename via ImageMagick Argument Injection
published 2026-09-19 51 d ago modified 2026-09-21 49 d ago also EUVD-2026-83471
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.9%
- EPSS 0.9% chance of exploitation in 30 days, percentile 60%
- public exploits
- 0
- none known
Summary
The WP Photo Album Plus plugin for WordPress is vulnerable to Remote Code Execution in all versions via the wppa_image_magick function. This is due to insufficient sanitization of the multipart upload filename before concatenation into an ImageMagick command string executed via exec(), with only escapeshellcmd() applied to the whole command rather than quoting individual arguments. This makes it possible for authenticated attackers, with subscriber-level access and above, to execute code on the server. escapeshellcmd() escapes shell metacharacters but does not prevent argument injection because spaces remain as argument separators, and the filename sanitization applied at the database layer is never applied to the physical temporary file path used for ImageMagick processing.
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 51 d ago
Exploit prediction
0.91% chance of exploitation in the next 30 days, higher than 60% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected products
- opajaap WP Photo Album Plus
Classification
- Weakness
-
- CWE-74 Improper Neutralization of Special Elements in Output Used by a Downstream Component
- Technology feeds
References
- wordfence.com /threat-intel/vulnerabilities/id/693c7554-5122-4527-8a9c-aa31ea9623b7?source=cve
- plugins.trac.wordpress.org /browser/wp-photo-album-plus/trunk/wppa-photo-files.php#L860
- plugins.trac.wordpress.org /browser/wp-photo-album-plus/trunk/wppa-photo-files.php#L281
- plugins.trac.wordpress.org /browser/wp-photo-album-plus/trunk/wppa-functions.php#L4837
- plugins.trac.wordpress.org /browser/wp-photo-album-plus/trunk/wppa-functions.php#L5286
- plugins.trac.wordpress.org /changeset?reponame=&old=3701613%40wp-photo-album-plus&new=3701613%40wp-photo-album-plus
Sources
- CVE List CVE-2026-87909
- NVD CVE-2026-87909
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.