On this page (7 sections)

A critical vulnerability, CVE-2026-120518, affects the BuddyPress XProfile Image Field plugin for WordPress in all versions up to and including 3.1.0. According to the NVD record, an unauthenticated visitor can cause the plugin to delete arbitrary files on the server during the account activation process.

If you run a WordPress site with BuddyPress, open user registration and a profile image field on the signup form, you should check this plugin now. Deleting a file such as wp-config.php can lead to a full site takeover.

What happened

The vulnerability was published on 2026-11-03. The NVD description says the plugin function bpxp_image_field_update_on_user_activation() calls unlink() on a file path that is built from data a visitor supplies during signup. The code does not resolve the path with realpath(), does not check that the path stays inside the profile-image directory, and does not restrict file extensions.

Only one independent publisher covers this story so far, and the details here come from the NVD record. We have not seen a vendor advisory or a patched release number, so treat anything beyond the record as unconfirmed.

How the weakness works

This is a path traversal weakness (CWE-22) that ends in file deletion rather than file reading. Plugins that accept file-related input should confirm that the final path points inside an intended folder before touching it. Here, the NVD record describes that check as missing.

Per the record, the flow looks like this: during registration, a visitor submits a zero-byte file together with the field_N_hidden parameter, and the plugin stores the raw value of that parameter. Later, when the pending signup is activated, the stored value is resolved against the document root and the file at that location is deleted. We are deliberately not describing exact request contents.

Why deletion is serious: the record notes it can easily lead to remote code execution when the right file, such as wp-config.php, is deleted. In general terms, a WordPress site missing its configuration file can fall back to the installation screen, which is a well-known route to takeover. The record itself only states that code execution can follow.

Who is affected

The NVD record states two preconditions: the site must allow open registration, and the signup form must include an image-type profile field. Sites that meet both conditions and run version 3.1.0 or earlier are exposed to unauthenticated attackers, with no account needed.

  • Community, membership and directory sites built on BuddyPress with public signup
  • Agencies managing client sites that use XProfile image fields on registration
  • Sites where the plugin is installed but inactive: confirm it is removed or updated, since the record speaks only of installed versions

Sites with registration closed, or without an image-type field on the signup form, do not meet the conditions described in the record. Do not rely on that alone, since configuration can change and the plugin should still be dealt with.

How to check your exposure

First, find out whether the plugin is installed and which version you run. This WP-CLI command lists matching plugins with their status and version. Run it from your WordPress root and look for buddypress-xprofile-image-field with a version of 3.1.0 or lower.

List installed plugins and versions matching 'xprofile' (run in the WordPress root)WP-CLI
wp plugin list --fields=name,status,version | grep -i xprofile

Next, check whether registration is open. This command prints the setting; a value of 1 means anyone can register on a standard WordPress setup. BuddyPress also has its own registration setting under Settings, BuddyPress, Options in the admin area, so check there too.

Show whether WordPress open registration is enabled (run in the WordPress root)WP-CLI
wp option get users_can_register

Finally, open the BuddyPress profile field settings in the admin area and see whether any image-type field is shown on the signup form.

What to do now

We could not confirm a patched version from the research, so check the plugin's page in the WordPress plugin directory and the Wordfence entry for the current fix status before relying on an update.

Caution. Back up your files and database before deactivating or removing plugins on a live site, and do not delete the plugin's data if you plan to restore it later.

If you cannot update, a website firewall may help reduce risk, but rules for this specific issue are not something we can promise. Removing the exposed feature is the dependable option.

Detection and monitoring

Signs of abuse would include missing files, a site suddenly showing the WordPress setup screen, or unexpected errors after new users activate accounts. This command searches an access log for requests to the BuddyPress registration and activation pages. Run it on the server, adjust the log path for your setup, and look for bursts of requests from a single address.

Search an access log for registration and activation requests (adjust the log path)Shell
grep -iE 'register|activate' /var/log/nginx/access.log | tail -n 100

A file integrity check against a known-good copy of WordPress core can reveal removed files. After any suspected incident, follow our guide on what to do when a website is hacked, and use the free malware scanner for an outside-in look at the site. Note that outside scans cannot see everything on the server, as explained in what outside-in malware detection can and cannot see.

For ongoing awareness of plugin issues, the known WordPress plugin vulnerabilities page and our WordPress security checklist are good places to start.

Timeline

Summary
DateEvent
2026-11-03CVE-2026-120518 published in NVD, CVSS 9.1, affecting versions up to and including 3.1.0
2026-11-03No fixed version or exploitation reports found in the available research
This article will need updating once the plugin author publishes a patched version or a vendor advisory confirms details beyond the NVD record.

Sources

This article is based on the public sources below. Details can change as vendors and researchers publish more; check the original advisories before acting on version numbers.

  1. CVE-2026-120518: The BuddyPress XProfile Image Field plugin for WordPress is vulnerable to arbitrary file deletion in all versions up to, and including, 3.1.0.nvd.nist.gov ·
  • WordPress
  • BuddyPress
  • CVE-2026-120518
  • file deletion
  • plugin vulnerability