CVE-2026-104010 json
WPSyncSheets For Contact Form 7 <= 1.8.0 - Unauthenticated PHP Object Injection to Remote Code Execution via Untrusted CF7 Submission Field via maybe_unserialize()
published 2026-11-06 3 d ago modified 2026-11-06 2 d ago also EUVD-2026-118191
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 47%
- public exploits
- 0
- none known
Summary
The WPSyncSheets For Contact Form 7 – CF7 Google Sheets Connector & Save to Database plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1.8.0 via the 'any non-system CF7 field (e.g., your-message)' parameter parameter. This is due to insufficient sanitization of CF7 submission field values before database storage and the absence of an allowed_classes restriction on maybe_unserialize() during admin retrieval. This makes it possible for unauthenticated attackers to execute code on the server. Successful exploitation of the remote code execution gadget chain requires that a Google Sheets access token be configured in the plugin (its primary advertised feature), as this triggers autoloading of the bundled Monolog 2.10.0 library whose classes form the exploitable gadget chain; however, the underlying PHP Object Injection occurs regardless.
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 2 d ago
Exploit prediction
0.58% chance of exploitation in the next 30 days, higher than 47% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H |
Affected products
- creativewerkdesigns WPSyncSheets For Contact Form 7 – CF7 Google Sheets Connector & Save to Database
Classification
- Weakness
-
- CWE-502 Deserialization of Untrusted Data
- Technology feeds
References
- wordfence.com /threat-intel/vulnerabilities/id/366e20df-4cb2-4ba1-93fd-11552faa1a32?source=cve
- plugins.trac.wordpress.org /browser/contactsheets-lite/tags/1.8.0/includes/entry/class-wpsslc-cf7-entries-table.php#L459
- plugins.trac.wordpress.org /browser/contactsheets-lite/tags/1.8.0/includes/class-wpsslc-service.php#L114
- plugins.trac.wordpress.org /browser/contactsheets-lite/tags/1.8.0/includes/class-wpsslc-service.php#L184
- plugins.trac.wordpress.org /browser/contactsheets-lite/tags/1.8.0/includes/entry/class-wpsslc-single-entry.php#L131
- plugins.trac.wordpress.org /browser/contactsheets-lite/tags/1.8.0/includes/class-wpsslc-google-api-functions.php#L157
- plugins.trac.wordpress.org /changeset/3783292/contactsheets-lite/trunk/includes/entry/class-wpsslc-cf7-entries-table.php
Sources
- CVE List CVE-2026-104010
- NVD CVE-2026-104010
Fencer Vulns 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.