CVE-2026-3835 json
Prevent Direct Access – Protect WordPress Files <= 2.8.8.8 - Unauthenticated Protected File Access
published 2mo ago modified 2mo ago also EUVD-2026-57720
- cvss
- 5.3
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.5%
- EPSS 0.5% chance of exploitation in 30 days, percentile 41%
- public exploits
- 0
- none known
Summary
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.
Is CVE-2026-3835 in your stack? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerCISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 2mo ago
Exploit prediction
0.47% chance of exploitation in the next 30 days, higher than 41% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 5.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N |
Affected products
- buildwps Prevent Direct Access – Protect WordPress Files
Classification
- Weakness
-
- CWE-285 Improper Authorization
- Technology feeds
References
- wordfence.com /threat-intel/vulnerabilities/id/c39d16f1-ce80-402c-8a36-f9070dc5f9c9?source=cve
- plugins.trac.wordpress.org /browser/prevent-direct-access/trunk/includes/repository.php#L221
- plugins.trac.wordpress.org /browser/prevent-direct-access/tags/2.8.8.4/includes/repository.php#L221
- plugins.trac.wordpress.org /browser/prevent-direct-access/trunk/download.php#L377
- wordpress.org /plugins/prevent-direct-access/
- plugins.trac.wordpress.org /changeset?reponame=&new=3637502%40prevent-direct-access%2Ftags%2F2.8.8.9&old=3524320%40prevent-direct-access%
- plugins.trac.wordpress.org /changeset/3637499/prevent-direct-access/trunk/includes/repository.php
- plugins.trac.wordpress.org /changeset?old_path=%2Fprevent-direct-access/tags/2.8.8.8&new_path=%2Fprevent-direct-access/tags/2.8.8.9
Sources
- CVE List CVE-2026-3835
- NVD CVE-2026-3835
Fencer Intel 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.