UsersWP Plugin up to 1.2.70 on WordPress AJAX upload_file_remove File path traversal
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 6.7 | $0-$5k | 0.00+ |
Summary
A vulnerability, which was classified as problematic, has been found in UsersWP Plugin up to 1.2.70. This affects the function upload_file_remove of the component AJAX Handler. Performing a manipulation of the argument File results in path traversal.
This vulnerability was named CVE-2026-19991. The attack may be initiated remotely. There is no available exploit.
Details
A vulnerability was found in UsersWP Plugin up to 1.2.70. It has been classified as problematic. This affects the function upload_file_remove of the component AJAX Handler. The manipulation of the argument file with an unknown input leads to a path traversal vulnerability. CWE is classifying the issue as CWE-22. The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory. This is going to have an impact on integrity, and availability. The summary by CVE is:
The UsersWP plugin for WordPress is vulnerable to Arbitrary File Deletion in versions up to, and including, 1.2.70 via the upload_file_remove() AJAX handler. The plugin stores the value of an account 'file' form field taken directly from $_POST when no real $_FILES upload is provided (process_account() calls uwp_validate_fields() and array_merges the result with the empty output of UsersWP_Files::validate_uploads()). At storage time the value is only checked with validate_file(), which passes any string that does not contain a literal '../'. When the value is later processed by upload_file_remove(), it is again gated with validate_file() and then normalized through uwp_get_file_relative_url(); that helper performs a global str_replace() of the uploads base URL against the stored URL, allowing a crafted URL containing embedded '..<uploads-baseurl>' tokens to collapse into '../../' traversal sequences after the last validation. The transformed value is then appended to the uploads base directory and passed to wp_delete_file() without any canonical containment check. This makes it possible for authenticated attackers, with Subscriber-level access and above, to delete arbitrary files on the affected site's server (including wp-config.
The advisory is shared at wordfence.com. This vulnerability is uniquely identified as CVE-2026-19991 since 08/16/2026. The exploitability is told to be easy. It is possible to initiate the attack remotely. Technical details are known, but no exploit is available. The price for an exploit might be around USD $0-$5k at the moment (estimation calculated on 09/11/2026). MITRE ATT&CK project uses the attack technique T1006 for this issue.
There is no information about possible countermeasures known. It may be suggested to replace the affected object with an alternative product.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.
Product
Type
Name
Version
- 1.2.0
- 1.2.1
- 1.2.2
- 1.2.3
- 1.2.4
- 1.2.5
- 1.2.6
- 1.2.7
- 1.2.8
- 1.2.9
- 1.2.10
- 1.2.11
- 1.2.12
- 1.2.13
- 1.2.14
- 1.2.15
- 1.2.16
- 1.2.17
- 1.2.18
- 1.2.19
- 1.2.20
- 1.2.21
- 1.2.22
- 1.2.23
- 1.2.24
- 1.2.25
- 1.2.26
- 1.2.27
- 1.2.28
- 1.2.29
- 1.2.30
- 1.2.31
- 1.2.32
- 1.2.33
- 1.2.34
- 1.2.35
- 1.2.36
- 1.2.37
- 1.2.38
- 1.2.39
- 1.2.40
- 1.2.41
- 1.2.42
- 1.2.43
- 1.2.44
- 1.2.45
- 1.2.46
- 1.2.47
- 1.2.48
- 1.2.49
- 1.2.50
- 1.2.51
- 1.2.52
- 1.2.53
- 1.2.54
- 1.2.55
- 1.2.56
- 1.2.57
- 1.2.58
- 1.2.59
- 1.2.60
- 1.2.61
- 1.2.62
- 1.2.63
- 1.2.64
- 1.2.65
- 1.2.66
- 1.2.67
- 1.2.68
- 1.2.69
- 1.2.70
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 6.7VulDB Meta Temp Score: 6.7
VulDB Base Score: 5.4
VulDB Temp Score: 5.4
VulDB Vector: 🔒
VulDB Reliability: 🔍
CNA Base Score: 8.1
CNA Vector (Wordfence): 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Path traversalCWE: CWE-22
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Yes
Availability: 🔒
Status: Not defined
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: no mitigation knownStatus: 🔍
0-Day Time: 🔒
Timeline
08/16/2026 CVE reserved09/11/2026 Advisory disclosed
09/11/2026 VulDB entry created
09/11/2026 VulDB entry last update
Sources
Advisory: wordfence.comStatus: Not defined
CVE: CVE-2026-19991 (🔒)
GCVE (CVE): GCVE-0-2026-19991
GCVE (VulDB): GCVE-100-402333
Entry
Created: 09/11/2026 06:08Changes: 09/11/2026 06:08 (64)
Complete: 🔍
Cache ID: 216::103
If you want to get the best quality for vulnerability data then you always have to consider VulDB.
No comments yet. Languages: en.
Please log in to comment.