Radar sectionsDatabase
Check my site
WordPress plugin

Prevent Direct Access – Protect WordPress Files <= 2.8.8.8 — Unauthenticated Protected File Access

CVE-2026-3835Published · Updated

Action summary

Affected: ≤2.8.8.8Update to 2.8.8.9 or newer

All remediation steps
Severity
Medium5.3
CVSS
5.3
CVSS 3.1 · CNA (Wordfence)
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
What does this vector mean?
AV:N Attack vector
Network
AC:L Attack complexity
Low
PR:N Privileges required
None
UI:N User interaction
None
S:U Scope
Unchanged
C:L Confidentiality
Low
I:N Integrity
None
A:N Availability
None
Weakness
CWE-285 Improper Authorization
Required access
No account needed
Exploit prediction (EPSS)
No score
CISA KEV
Not listed

Am I affected?

Prevent Direct Access – Protect WordPress Files prevent-direct-access

  1. Affected≤ 2.8.8.8
  2. Patched in2.8.8.9

Update to 2.8.8.9 or newer.

You are affected if you run ≤ 2.8.8.8. Version 2.8.8.9 and later are not affected by this issue.

  • Check your version: in wp-admin go to Plugins → Installed Plugins and read the version under Prevent Direct Access – Protect WordPress Files.
  • No admin access? Run a passive check of your site. It reads public files only.
  • No account is needed to exploit this. Treat any exposed site on an affected version as at risk.

What to do

  1. Update to version 2.8.8.9, or a newer patched version
  2. Rotate administrator passwords and application secrets if the site ran a vulnerable version while publicly reachable.
  3. Watch Prevent Direct Access – Protect WordPress Files to get an email when the next vulnerability is published.

Advisory

Source description from Wordfence Intelligence, credited to Lucas Montes (NiRoX).

The Prevent Direct Access – Protect WordPress Files plugin for WordPress is vulnerable to unauthorized access of protected files due to insufficient token validation in the `get_advance_file_by_url()` method in all versions up to, and including, 2.8.8.8 The method uses a SQL `LIKE` operator for token lookup without escaping wildcard characters via `$wpdb->esc_like()`. This makes it possible for unauthenticated attackers to bypass the private token requirement by supplying SQL wildcard characters (such as `%`) as the token value, matching any record in the plugin's file table and downloading any protected file.

Exploits & references

Proof-of-concept & detection

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

Advisories & patches

More in Prevent Direct Access – Protect WordPress Files

All 3
More vulnerabilities in Prevent Direct Access – Protect WordPress Files
SeverityVulnerabilityCVEPublished
Medium5.42.8.8.2 - Incorrect Authorization to Authenticated (Contributor+) Multiple Media Actions
2.8.6 – 2.8.8.2Update to 2.8.8.3
CVE-2025-3861
Medium5.3Unauthenticated Sensitive Information Exposure
≤2.8.8Update to 2.8.8.1
CVE-2025-3923

Timeline

  1. CVE published

    Severity medium, CVSS 5.3

  2. Record last updated

Sources & licenses

Wordfence record
Vulnerability data
Wordfence Intelligence. Copyright 2012-2026 Defiant Inc. Licensed under the CC BY-SA 4.0.
CVE® identifiers
Copyright 1999-2026 The MITRE Corporation. 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?