Groundhogg <= 4.9 — Authenticated (Sales Person+) Privilege Escalation via Contact Identity Rebinding leading to Administrator Account Takeover to 'user_id' Parameter (v3 /contacts) chained with v4 /emails/test
CVE-2026-97644Published · Updated Action summary
Affected: ≤4.9Update to 4.9.1 or newer
All remediation steps- Severity
- High8.8
- CVSS
- 8.8CVSS 3.1 · CNA (Wordfence)
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HWhat does this vector mean?
AV:NAttack vector- Network
AC:LAttack complexity- Low
PR:LPrivileges required- Low
UI:NUser interaction- None
S:UScope- Unchanged
C:HConfidentiality- High
I:HIntegrity- High
A:HAvailability- High
- Weakness
- CWE-269 Privilege Escalation
- Required access
- Unknown
- Exploit prediction (EPSS)
- No score
- CISA KEV
- Not listed
On this page8
Am I affected?
Groundhogg — CRM, Newsletters, and Marketing Automation groundhogg
- Affected≤ 4.9
- Patched in4.9.1
Update to 4.9.1 or newer.
You are affected if you run ≤ 4.9. Version 4.9.1 and later are not affected by this issue.
- Check your version: in wp-admin go to Plugins → Installed Plugins and read the version under Groundhogg — CRM, Newsletters, and Marketing Automation.
- No admin access? Run a passive check of your site. It reads public files only.
What to do
- Update to version 4.9.1, or a newer patched version
- Rotate administrator passwords and application secrets if the site ran a vulnerable version while publicly reachable.
- Watch Groundhogg — CRM, Newsletters, and Marketing Automation to get an email when the next vulnerability is published.
Advisory
Source description from Wordfence Intelligence, credited to Supakiad S. (m3ez).
The Groundhogg — CRM, Newsletters, and Marketing Automation plugin for WordPress is vulnerable to Privilege Escalation via Contact Identity Rebinding in all versions up to, and including, 4.9 The vulnerability exists because the `create_contact` function in the v3 REST endpoint (`POST /gh/v3/contacts`) is gated solely by the `add_contacts` capability and forwards the full request payload — including the security-bearing `user_id` column — into the upsert path of `Contacts_DB::add()`, which bypasses the ownership guard that `Contacts_DB::update()` enforces, allowing an attacker to rebind any existing contact record to an arbitrary WordPress user ID. This makes it possible for authenticated attackers with Sales Representative-level access and above to upsert their own contact row to point to an Administrator's user ID, then invoke the v4 email-test endpoint (`POST /gh/v4/emails/test`) — also accessible to the Sales Representative role via the `send_emails` capability — to generate an `{auto_login_url}` one-time permissions key bound to the rebound contact, and consume that link to call `wp_set_auth_cookie()` and gain a fully authenticated session as the WordPress Administrator.
Exploits & references
Proof-of-concept & detection
No public proof-of-concept or detection template is known for this vulnerability.
Advisories & patches
- Advisorywordfence.com
Related CVEs
More in Groundhogg — CRM, Newsletters, and Marketing Automation
All 43| Severity | Vulnerability | CVE | Published |
|---|---|---|---|
| High8.1 | Authenticated (Sales Representative+) Arbitrary File Deletion via CSV Import 'copy_file' Field Mapping ≤4.9.3Update to 4.9.4 | CVE-2026-109221 | |
| High7.2 | Unauthenticated Stored Cross-Site Scripting via 'ref' Parameter ≤4.5.14Update to 4.5.15 | CVE-2026-18548 | |
| High8.1 | Unauthenticated Privilege Escalation to Support User Identity Confusion ≤4.8.3Update to 4.9 | CVE-2026-92975 | |
| High8.8 | Authenticated (Custom+) Privilege Escalation to 'user' Parameter ≤4.9Update to 4.9.1 | CVE-2026-104725 | |
| Medium5.3 | Unauthenticated Information Exposure ≤4.8.3Update to 4.9 | CVE-2026-104385 |
- High8.1Authenticated (Sales Representative+) Arbitrary File Deletion via CSV Import 'copy_file' Field Mapping
≤4.9.3Update to 4.9.4
- High7.2Unauthenticated Stored Cross-Site Scripting via 'ref' Parameter
≤4.5.14Update to 4.5.15
- High8.1Unauthenticated Privilege Escalation to Support User Identity Confusion
≤4.8.3Update to 4.9
- High8.8Authenticated (Custom+) Privilege Escalation to 'user' Parameter
≤4.9Update to 4.9.1
- Medium5.3Unauthenticated Information Exposure
≤4.8.3Update to 4.9
Same weakness (Privilege Escalation)
All Privilege Escalation| Severity | Vulnerability | CVE | Published |
|---|---|---|---|
| High7.2 | Unauthenticated Stored Cross-Site Scripting via Comment User-Agent Header | CVE-2026-120688 | |
| Critical9.8 | Unauthenticated Arbitrary File Upload via File Upload via Public Form Submission | CVE-2026-125055 | |
| Critical9.8 | Unauthenticated PHP Object Injection to Remote Code Execution via 'form' Parameter | CVE-2026-119077 | |
| Medium5.3 | Unauthenticated Sensitive Information Exposure in 'search' Parameter | CVE-2026-121518 |
- High7.2Unauthenticated Stored Cross-Site Scripting via Comment User-Agent Header
EZ SQL Reports Shortcode Widget and DB Backup
≤5.25.25Update to 5.26.45
- Critical9.8Unauthenticated Arbitrary File Upload via File Upload via Public Form Submission
Chatterbug Forms – Fast, Flexible WordPress Form Builder
≤1.0.2Update to 1.1
- Critical9.8Unauthenticated PHP Object Injection to Remote Code Execution via 'form' Parameter
ELEX WordPress HelpDesk & Customer Ticketing System
≤3.3.9Update to 3.4.0
- Medium5.3Unauthenticated Sensitive Information Exposure in 'search' Parameter
Customer Reviews for WooCommerce
≤5.127.0Update to 5.128.0
Timeline
CVE published
Severity high, CVSS 8.8
Record last updated
Sources & licenses
Wordfence record- Vulnerability data
- Wordfence Intelligence. [object Object] Licensed under the CC BY-SA 4.0.
- CVE® identifiers
- [object Object]. Used under the CVE Program. CVE® is a registered trademark of The MITRE Corporation.
- CVSS / CWE
- National Vulnerability Database (NVD), shown unmodified. This product uses the NVD API but is not endorsed or certified by the NVD.
- VulnCrest content
- Summary, remediation guidance and page layout © VulnCrest. Not sourced from NVD.
