Radar sectionsDatabase
Check my site
WordPress plugin

UsersWP <= 1.2.70 — Authenticated (Subscriber+) Arbitrary File Deletion

CVE-2026-19991Published · Updated

Action summary

Affected: ≤1.2.70Update to 1.2.71 or newer

All remediation steps
Severity
High8.1
CVSS
8.1
CVSS 3.1 · CNA (Wordfence)
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:H
What does this vector mean?
AV:N Attack vector
Network
AC:L Attack complexity
Low
PR:L Privileges required
Low
UI:N User interaction
None
S:U Scope
Unchanged
C:N Confidentiality
None
I:H Integrity
High
A:H Availability
High
Weakness
CWE-22 Path Traversal
Required access
Unknown
Exploit prediction (EPSS)
No score
CISA KEV
Not listed

Am I affected?

UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP userswp

  1. Affected≤ 1.2.70
  2. Patched in1.2.71

Update to 1.2.71 or newer.

You are affected if you run ≤ 1.2.70. Version 1.2.71 and later are not affected by this issue.

  • Check your version: in wp-admin go to Plugins → Installed Plugins and read the version under UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP.
  • No admin access? Run a passive check of your site. It reads public files only.

What to do

  1. Update to version 1.2.71, or a newer patched version
  2. Rotate administrator passwords and application secrets if the site ran a vulnerable version while publicly reachable.
  3. Watch UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP to get an email when the next vulnerability is published.

Advisory

Source description from Wordfence Intelligence, credited to daroo.

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.

Exploits & references

Proof-of-concept & detection

No public proof-of-concept or detection template is known for this vulnerability.

Advisories & patches

More in UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP

All 26
More vulnerabilities in UsersWP – Front-end login form, User Registration, User Profile & Members Directory plugin for WP
SeverityVulnerabilityCVEPublished
Medium6.4Authenticated (Contributor+) Stored Cross-Site Scripting via 'badge' Shortcode Attribute
≤1.2.80Update to 1.2.81
CVE-2026-120671
Medium6.5Unauthenticated Account Access via Predictable Dummy User Password Disclosed through Registration Form Hash
≤1.2.78Update to 1.2.79
CVE-2026-119980
Medium4.3Missing Authorization
≤1.2.74Update to 1.2.76
CVE-2026-103086
High7.2Unauthenticated Stored Cross-Site Scripting
≤1.2.73Update to 1.2.74
CVE-2026-94641
Medium6.4Authenticated (Subscriber+) Stored Cross-Site Scripting via Badge Widget Variable Substitution
≤1.2.69Update to 1.2.70
CVE-2026-18501

Same weakness (Path Traversal)

All Path Traversal
Other Path Traversal vulnerabilities
SeverityVulnerabilityCVEPublished
High7.2Unauthenticated Stored Cross-Site Scripting via Comment User-Agent HeaderCVE-2026-120688
Critical9.8Unauthenticated Arbitrary File Upload via File Upload via Public Form SubmissionCVE-2026-125055
Critical9.8Unauthenticated PHP Object Injection to Remote Code Execution via 'form' ParameterCVE-2026-119077
Medium5.3Unauthenticated Sensitive Information Exposure in 'search' Parameter
Customer Reviews for WooCommerce≤5.127.0Update to 5.128.0
CVE-2026-121518

Timeline

  1. CVE published

    Severity high, CVSS 8.1

  2. Record last updated

Sources & licenses

Wordfence record
Vulnerability data
Wordfence Intelligence. [object Object] Licensed under the CC BY-SA 4.0.
CVE® identifiers
[object Object]. Used under the CVE Program. CVE® is a registered trademark of The MITRE Corporation.
CVSS / CWE
National Vulnerability Database (NVD), shown unmodified. This product uses the NVD API but is not endorsed or certified by the NVD.
VulnCrest content
Summary, remediation guidance and page layout © VulnCrest. Not sourced from NVD.

How we use these sources

Search VulnCrest Radar

Are you sure?