Skip to main content

Formie EUVDEUVD-2026-85545

| CVE-2026-76086 HIGH
Missing Authorization (CWE-862)
2026-09-23 GitHub_M GHSA-v3f3-cmj4-cvj9
8.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as low-privileged/front-end user
  2. Delivery
    POST to formie/integrations/form-settings action
  3. Exploit
    Overwrite integration apiUrl via setAttributes
  4. Execution
    Server sends stored API key/OAuth token to attacker host
  5. Impact
    Read non-blind response, exfiltrate credentials and internal data

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated user account with any level of access - the vulnerable IntegrationsController::actionFormSettings action lacked the form-integration permission check, so no per-form or integration-management permission is needed. Exploitation is materially easier on sites that allow low-privileged or front-end user authentication, especially those with public/self registration, which the advisory highlights as the primary risk amplifier. A Formie integration (CRM, email-marketing, or webhook) must already be configured with stored API keys or OAuth tokens for credential exfiltration to yield value. Limiting factors: the target must run a vulnerable version (>=3.0.0 <3.1.31 on Craft 5, or <2.2.23 on Craft 4), some form of authentication is required (not fully unauthenticated), and closed-CP sites where only trusted staff can log in substantially reduce exposure. The advisory notes no configuration-only workaround fully mitigates the issue short of upgrading.

Impact

The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N = 8.5) reflects a genuinely serious, low-friction flaw: network-reachable, low complexity, only low privileges required, and no user interaction. The PR:L is the critical gating factor and the description explicitly widens it - sites permitting front-end/self-registration effectively lower the bar to any registered member, making PR:L close to unauthenticated in practice. The C:H rating is well-justified because the non-blind SSRF returns the remote response in the JSON body AND causes stored API keys/OAuth tokens to be sent to an attacker-controlled host, enabling both internal network probing and credential exfiltration. S:C is defensible because the server pivots to internal/attacker hosts (a different security authority). No EPSS score, no SSVC decision data, no KEV listing, and no public POC were provided, so exploitation status is 'no public exploit identified at time of analysis' - but the flaw is notable because it is an INCOMPLETE FIX of prior advisory GHSA-cvpc-hccg-wmw4 (the 3.1.28 permission gate excluded this action), meaning the vulnerability class was already known and scrutinized. Absence of EPSS/KEV likely reflects the niche Craft CMS ecosystem footprint rather than low technical severity. Real priority for any Formie site with open registration; lower urgency for closed-CP sites where only trusted staff authenticate.

Exploit ScenarioDerived

An attacker registers or logs in as a low-privileged front-end member on a Craft CMS site running vulnerable Formie, then POSTs to the control-panel action formie/integrations/form-settings, supplying settings that overwrite a configured integration's apiUrl (and related host properties) via setAttributes. The server uses its stored CRM/email-marketing/webhook API keys or OAuth tokens to make a request to the attacker's host and returns the response, exfiltrating the credentials and enabling internal network reconnaissance. No public POC is referenced, but the advisory describes the mechanism in exploit-ready detail.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 23, 2026

Missing authorization in Formie's IntegrationsController::actionFormSettings control panel action lets any authenticated user (no integration permission required) override outbound host properties such as apiUrl on an already-configured integration, causing the server to send stored API keys or OAuth tokens to an attacker-controlled or internal host and return the remote response in the JSON body. This is a non-blind SSRF combined with credential exfiltration affecting verbb/formie versions before 2.2.23 (Craft 4) and 3.0.0 through 3.1.30 (Craft 5); patched releases are 2.2.23 and 3.1.31. Authentication with any level of access is required, so exposure is greatest on sites permitting low-privileged or front-end/member authentication (including public self-registration), and a CRM, email-marketing, or webhook integration must already be configured with stored credentials for exfiltration to be meaningful; no public exploit code was identified at time of analysis, and the flaw is an incomplete remediation of GHSA-cvpc-hccg-wmw4, whose 3.1.28 permission gate omitted this action.

RemediationAI

Upgrade Formie to the fixed release for your branch: 3.1.31 for Craft 5 installations and 2.2.23 for Craft 4 installations, as documented in the release notes at https://github.com/verbb/formie/releases/tag/3.1.31 and https://github.com/verbb/formie/releases/tag/2.2.23 and the advisory at https://github.com/verbb/formie/security/advisories/GHSA-v3f3-cmj4-cvj9; the patch enforces requireCpRequest(), a valid formId, and integration permissions while filtering request settings through an allowlist that blocks URL, host, and credential attributes (see commits 6735fe4ae8f6a2a76930716ad7876b236f7c530d and dde7799dfa7e4d0a11e28754ad8544dba62d5def). Vendor guidance states no configuration-only workaround fully mitigates the issue, so until upgrading you must reduce the attack surface: disable public/front-end user registration and self-service account creation so untrusted parties cannot obtain any authenticated session (this breaks legitimate member features), restrict control panel access to vetted staff and close the CP to external networks (limiting but not eliminating exposure from internal low-privileged accounts), and treat stored integration secrets as potentially compromised - rotate API keys and OAuth tokens used by Formie CRM, email-marketing, and webhook integrations and review outbound egress logs for unexpected host requests. Because exploitation requires only an authenticated account and the 3.1.28 gate deliberately excluded this action, also confirm that other 3.1.28-era permission checks have not been bypassed on any host upgraded from a pre-3.1.31 build.

Affected VersionsENISA

formie 3.0.0, < 3.1.31
formie < 2.2.23

Affected Packages

composer verbb/formie fix: 2.2.23, 3.1.31
euvd formie fix: 2.2.23, 3.1.31

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in composer, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Formie is a Craft CMS form-building plugin distributed as the Composer package verbb/formie (CPE cpe:2.3:a:verbb:formie:*:*:*:*:*:*:*:*). The vulnerable controller action formie/integrations/form-settings in src/controllers/IntegrationsController.php applied request-supplied data to a fully configured integration object via Yii's setAttributes($settings, false), so an attacker could rewrite outbound host attributes such as apiUrl while the server continued to attach its stored API keys or OAuth tokens to the resulting request. Because the remote response was echoed back in the JSON body, the primitive is a non-blind SSRF that doubles as a credential-exfiltration channel, also usable to probe internal network endpoints. The root cause class is CWE-862 (Missing Authorization): the permission gate introduced in version 3.1.28 to remediate GHSA-cvpc-hccg-wmw4 did not cover the form-settings action, leaving it reachable by any authenticated user. The upstream fix adds requireCpRequest(), a validated formId, and per-form integration permission checks (formie-showFormIntegrations / per-form variant on Craft 5; formie-manageFormIntegrations / per-form variant on Craft 4), plus an allowlist filter (_filterIntegrationFormSettings) that rejects any attribute whose lowercased name contains key, secret, token, password, url, domain, uri, host, credential, or auth, permitting only mapping and benign settings such as mapTo*, *FieldMapping, *Id, sendEmailCampaign, and attachFiles.

Know when Formie gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 8.5 HIGH
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N
vuln.today AI 8.5 HIGH

Network-reachable authenticated action needing only low privileges (often front-end members), no interaction; SSRF pivots to internal hosts (S:C) returning credentials/responses (C:H) and can overwrite non-sensitive settings (I:L).

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:L/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
Low
Availability
None

Lifecycle Timeline

2
Patch available
Sep 23, 2026 - 20:03 EUVD
CVE Published
Sep 23, 2026 - 18:32 cve.org
HIGH 8.5

DescriptionCVE.org

Formie is a Craft CMS plugin for creating forms. Prior to 2.2.23 and 3.1.31, Formie's formie/integrations/form-settings control panel action in IntegrationsController::actionFormSettings is reachable without the required form integration permissions and passes request-supplied settings to a configured integration. An authenticated attacker can replace outbound host properties such as apiUrl while the server uses stored API keys or OAuth tokens, causing non-blind server-side requests to an attacker-controlled or internal host and returning the remote response. This residual flaw remained because the permission gate added in version 3.1.28 excluded the form-settings action. Sites that permit low-privileged or front-end user authentication can therefore expose integration credentials and internal network responses. This issue is fixed in versions 2.2.23 and 3.1.31.

Technical POC Analysis

CWE-862 (Missing Authorization) on IntegrationsController::actionFormSettings in the verbb/formie Craft CMS plugin, exposed at the control panel route formie/integrations/form-settings.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

Formie, the widely deployed form-building plugin for Craft CMS, carries a high-severity authorization flaw (CVE-2026-76086, CVSS 8.5) that allows a user holding even the lowest level of control panel access to redirect a configured CRM, email-marketing, or webhook integration to a host of their choosing and read back whatever that remote server returns in the JSON response. The practical consequence is theft of third-party API keys and OAuth tokens plus a server-side request forgery foothold that can be turned against internal systems, which in turn can expose customer data held in connected marketing and CRM platforms. Leadership should care because the exposure is greatest on sites that permit public self-registration or member accounts, and no public exploit code was identified at time of analysis, so the activity would likely appear as ordinary outbound integration traffic.

Business Impact: High
Compensating Controls

Apply vendor patch (2.2.23 on Craft 4, 3.1.31 on Craft 5). Until upgraded: rotate all stored integration API keys and OAuth tokens, remove credentials from unused integrations, restrict Formie control panel access to trusted roles, and disable public self-registration or member authentication where it is not essential.

Threat Intelligence Overview

EPSS Score
0.3%
Top 81% exploitable
Prevalence
Low
popular plugin but within the niche Craft CMS ecosystem
Threat Intel
1
1 source
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

42
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +42
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy