tadrik Free store check

Plugin security / Contact Form 7

Contact Form 7 vulnerability: is your WooCommerce store affected?

Contact Form 7 has 2 serious security holes rated 7 or higher out of 10 that someone can use with no login or with only a customer account. The newest was published on 17 December 2020. Every one is fixed: update to 5.3.2 or newer.

Short answer: your store is affected if it runs Contact Form 7 older than 5.3.2. Update to 5.3.2 or newer, on a copy of the store first if you can.

In our check of 3,600 live UK and US WooCommerce stores (31 October 2026 to 1 November 2026), 19 were running a version of Contact Form 7 with a serious hole that already had a fix. How we checked.

The security holes

Newest first. Each one is published in a public security database and fixed in the version shown.

2 older holes, published before 1 January 2023
  1. Code execution

    Someone could run their own code on your server.

    Score 10.0 (critical)no login neededAffected: older than 5.3.2Fixed in 5.3.2Published 17 December 2020CVE-2020-35489

    Advisory: The contact-form-7 (aka Contact Form 7) plugin before 5.3.2 for WordPress allows Unrestricted File Upload and remote code execution because a filename may contain special characters.

  2. Privilege escalation

    A user could give themselves more rights, up to full admin.

    Score 9.8 (critical)no login neededAffected: older than 5.0.4Fixed in 5.0.4Published 4 September 2018CVE-2018-20979

    Advisory: The contact-form-7 plugin before 5.0.4 for WordPress has privilege escalation because of capability_type mishandling in register_post_type.

How to check your version

  1. Log in to WordPress and open Plugins > Installed Plugins.
  2. Find Contact Form 7. The version number is under its name. If it is lower than 5.3.2, your store is affected.
  3. No login to hand? Open https://yourstore.com/wp-content/plugins/contact-form-7/readme.txt in a browser, with your own address in place of yourstore.com, and read the Stable tag line. Some hosts block this file; then use step 1.

How to fix it

  1. Make a backup, or better, a staging copy of the store (most hosts have a one-click staging button).
  2. On the copy, update Contact Form 7 to 5.3.2 or newer: Dashboard > Updates, or Update now on the Plugins page.
  3. If no update shows, it may be a paid version whose licence has run out: download the new version from the seller's site and upload it.
  4. Place a test order on the copy: add to cart, check out, pay with a test method. Check the pages that use Contact Form 7.
  5. If everything works, make the same update on the live store and place one more test order.
  6. If you no longer use Contact Form 7, delete it instead of leaving it deactivated.

Not sure, or no time?

Get a free check of your store: we look at its public pages for plugins with known holes, and reply within one working day. Or we fix it for you: we update your store on a copy, place a test order, and only then change the live store, for a fixed £99 / $119.

Free store check Fix it for me on a copy

Questions

Which Contact Form 7 version fixes it?
Version 5.3.2 or newer fixes all 2 issues on this page.
How do I know if my store is affected?
Your store is affected if it runs Contact Form 7 older than 5.3.2. In WordPress, open Plugins and read the version under Contact Form 7. Without logging in, open yourstore.com/wp-content/plugins/contact-form-7/readme.txt and read the Stable tag line.
I don't use Contact Form 7 any more. Is a deactivated copy safe?
Deactivating it lowers the risk but leaves the old code on your server. If you don't use it, delete it; if you do, update it.
Can someone fix it for me?
Yes. We update the store on a copy first, place a test order, and only then make the same change on the live store, for a fixed price.

Vulnerability data: WPVulnerability (wpvulnerability.net, CC0), which links each entry to its CVE or advisory. Store numbers: Tadrik's own checks of public pages, aggregates only. Page updated 3 November 2026.