Skip to content
Noroxi
NVD / CVE Program· CNA GitHub_M

CVE-2024-31210: PHP file upload bypass via Plugin installer

HighCVSS 8.8 · v3.1—No exploit Fix available

Noroxi assessment

Priority: Monitor (action score 35/100)

  • The sources we track (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) show no public exploit code or exploitation in the wild.
  • Probability of exploitation in the next 30 days: 0.99% (FIRST EPSS); higher than 63.1% of all records.
  • Anyone who can reach it over the internet can trigger it. No account or password is required. A user must open a link or visit a page. No special conditions are required; it is repeatable.
  • Fixed version: wordpress (Debian:11) 5.7.11+dfsg1-0+deb11u1; wordpress (Debian:12) 6.1.6+dfsg1-0+deb12u1; wordpress (Debian:13) 6.4.3+dfsg1-1.
  • Mentioned 1 time in Turkish national cyber security advisories (siberguvenlik.gov.tr).

Low priority for now. Upgrade to wordpress (Debian:11) 5.7.11+dfsg1-0+deb11u1; wordpress (Debian:12) 6.1.6+dfsg1-0+deb12u1; wordpress (Debian:13) 6.4.3+dfsg1-1 or later.

Generated automatically from the record's data: CVSS (NVD and CNA), CISA KEV and SSVC, FIRST EPSS, exploit sources, fixed versions. How we calculate it

Primary sources: NVD · CVE.org · FIRST EPSS

WordPress is an open publishing platform for the Web. It's possible for a file of a type other than a zip file to be submitted as a new plugin by an administrative user on the Plugins -> Add New -> Upload Plugin screen in WordPress. If FTP credentials are requested for installation (in order to move the file into place outside of the `uploads` directory) then the uploaded file remains temporary available in the Media Library despite it not being allowed. If the `DISALLOW_FILE_EDIT` constant is set to `true` on the site _and_ FTP credentials are required when uploading a new theme or plugin, then this technically allows an RCE when the user would otherwise have no means of executing arbitrary PHP code. This issue _only_ affects Administrator level users on single site installations, and Super Admin level users on Multisite installations where it's otherwise expected that the user does not have permission to upload or execute arbitrary PHP code. Lower level users are not affected. Sites where the `DISALLOW_FILE_MODS` constant is set to `true` are not affected. Sites where an administrative user either does not need to enter FTP credentials or they have access to the valid FTP credentials, are not affected. The issue was fixed in WordPress 6.4.3 on January 30, 2024 and backported to versions 6.3.3, 6.2.4, 6.1.5, 6.0.7, 5.9.9, 5.8.9, 5.7.11, 5.6.13, 5.5.14, 5.4.15, 5.3.17, 5.2.20, 5.1.18, 5.0.21, 4.9.25, 2.8.24, 4.7.28, 4.6.28, 4.5.31, 4.4.32, 4.3.33, 4.2.37, and 4.1.40. A workaround is available. If the `DISALLOW_FILE_MODS` constant is defined as `true` then it will not be possible for any user to upload a plugin and therefore this issue will not be exploitable.

Published
Apr 4, 2024
Updated
Jun 17, 2026
EPSS
0.9% · 63th percentile

Report tools

JSON

Action score

35

Monitor

Low priority for now.

CVSS
35 / 40 · 8.8 / 10
CISA KEV
0 / 30 · Not listed
EPSS
0 / 30 · 0.9%

CISA SSVC decision

Exploitation
none
Automatable
no
Technical impact
total

Vulnrichment: CISA's decision-tree inputs.

CNA vs NVD score

NVD
8.8
CNA · GitHub_M
7.7
1.1 point gap

CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:C/C:H/I:H/A:H

The score given by the assigning authority versus NVD’s independent score. A gap means the severity is contested.

Is WordPress on your site?

WP Lens reads your site's plugin, theme and WordPress versions from the outside and matches them to known vulnerabilities. Works without an account.

Follow CVE-2024-31210

Is WordPress on your site?

When you'll hear from us

  • when it enters CISA KEV
  • when exploit code appears or is weaponized
  • when the record is updated (including a fixed version)
  • when EPSS rises 20 points in a week

One daily email digest (06:00 UTC); connect a webhook for KEV listings and weaponized exploits every 10 minutes on paid plans, on the hour on the free plan.

Your free account also gets you

  • CVE alerts: add the products and versions you run, get the new CVEs that affect them
  • Uptime monitoring: 1 site, instant email when it goes down
  • Add your domain: subdomains and takeover risk scanned every week (1 domain)
  • 10 scans an hour on the security tools, at most 30 a day (3 a day without an account), an API key and MCP
  • All your scans in one panel: findings, what changed in the last scan, a report per domain or per client (PDF, share link)
All free tools

Sign up with email · Have an account? Sign in

Free account, no card. Unfollow any time.

If any of these changes, we'll tell you in the daily email digest.
Is your version affected? Check it

Noroxi analysis

What does it mean in your environment?

The assessment above is generated automatically from the record's data; it doesn't know your environment. Our team verifies on your systems whether this vulnerability is actually exploitable and which mitigation is enough.

We use this product, ask for help

Affected systems

Is your version affected?

Pick the product and type the version you run. It's compared with this record's version ranges in your browser; the version isn't sent anywhere.

VendorProduct
wordpresswordpress

Using wordpress? Add it to your stack and be the first to know about CVEs like this one. (WordPress)

Watch new CVEs for wordpress

When you'll hear from us

  • when a new CVE affecting this product is published
  • when a record in your stack enters KEV or is weaponized

One daily email digest (06:00 UTC); connect a webhook for KEV listings and weaponized exploits every 10 minutes on paid plans, on the hour on the free plan.

Your free account also gets you

  • CVE alerts: add the products and versions you run, get the new CVEs that affect them
  • Uptime monitoring: 1 site, instant email when it goes down
  • Add your domain: subdomains and takeover risk scanned every week (1 domain)
  • 10 scans an hour on the security tools, at most 30 a day (3 a day without an account), an API key and MCP
  • All your scans in one panel: findings, what changed in the last scan, a report per domain or per client (PDF, share link)
All free tools

Sign up with email · Have an account? Sign in

Free account, no card. Unfollow any time.

Versions reported by the vendor

Affected version ranges reported by the assigning authority (GitHub_M). Independent of NVD's CPE analysis and usually ahead of it.

  • WordPress wordpress-develop

    • >= 6.4.0, < 6.4.3, >= 6.3.0, < 6.3.3, >= 6.2.0, < 6.2.4, >= 6.1.0, < 6.1.5, >= 6.0.0, < 6.0.7, >= 5.9.0, < 5.9.9, >= 5.8.0, < 5.8.9, >= 5.7.0, < 5.7.11, >= 5.6.0, < 5.6.13, >= 5.5.0, < 5.5.14, >= 5.4.0, < 5.4.15, >= 5.3.0, < 5.3.17 … (+12)affected

Package-level exposure

OSV and GitHub Advisory data: ecosystem, package and range. SBOM matching uses this table.

EcosystemPackageAffected rangeFix
Debian:11wordpressbefore 5.7.11+dfsg1-0+deb11u15.7.11+dfsg1-0+deb11u1
Debian:12wordpressbefore 6.1.6+dfsg1-0+deb12u16.1.6+dfsg1-0+deb12u1
Debian:13wordpressbefore 6.4.3+dfsg1-16.4.3+dfsg1-1

Other highest-scoring records for the same primary product.

  • CVE-2026-87902An unauthenticated attacker can make `get_page_template()` page-template resolution include a chosen readable local `.php` file outside the…KEV
    91Now
  • CVE-2026-63030WordPress < 7.0.2 - REST API batch-route confusion and SQL injection issue leading to Remote Code ExecutionKEV
    72This week
  • CVE-2026-119977WordPress Core 4.7.0 - 7.1.3 - Unauthenticated Upgrade-Window Staged-Installer Remote Code ExecutionKEV
    62This week

Published before and after this one in the same product

  • ← EarlierCVE-2023-39999Oct 13, 2023 · WordPress < 6.3.2 is vulnerable to Broken Access Control
    17Monitor
  • ← EarlierCVE-2023-5561Oct 16, 2023 · WordPress < 6.3.2 - Unauthenticated Post Author Email Disclosure
    22Monitor
  • Later →CVE-2024-31211Apr 4, 2024 · Remote Code Execution in `WP_HTML_Token`
    40Plan

Remediation

Which version to upgrade to

Fix versions compiled from the vendor, package registries and Microsoft. Verify the vendor's note before upgrading.

Product / packageFixed versionSource
debian:wordpress6.1.6+dfsg1-0+deb12u1 · Debian:12Package registry (OSV)

Exploit status

No known public exploit

No public exploit has been observed yet. That doesn't mean you're safe, only that the bar is a little higher.

Research context

For pentesters and researchers: attack profile, score disagreement, timeline, patch commits, credits, variant and chain candidates, bug bounty scope. All derived from existing data; no exploit code.

Timeline

From publication to today: proof of concept, Metasploit module, CISA KEV and fix record. Dates are as reported by the sources.

No dated events beyond publication.

Bug bounty scope

The product’s vendor appears in a public program. Matched by name; verify the scope text in the program.

National notice (Türkiye Cybersecurity Directorate / USOM)

Official security notices citing this record; remediation advice is on the agency's page.

All national notices →

Not on record for this CVE: EPSS history · patch commit or PR link · researcher credit · variant or chain candidate.

Technical details

Attack conditions

  • Anyone who can reach it over the internet can trigger it.
  • No account or password is required.
  • A user must open a link or visit a page.
  • No special conditions are required; it is repeatable.

If successful

Confidentiality
high · data can be read
Integrity
high · data or configuration can be modified
Availability
high · the service can be disrupted
Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
Required
Scope
Unchanged
Confidentiality impact
High
Integrity impact
High
Availability impact
High

CVSS vector

CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

nvd-primary

Attack context

MITRE CAPEC attack patterns and ATT&CK techniques for this weakness class (CWE). A starting point for detection rules and threat hunting.

References

Vendor advisories and official records. Exploit/PoC links are deliberately left out.

All records