/

CVE-2026-76086

Severity:

HIGH RISK

(8.5)

SSRF (CWE-918) in Formie Craft CMS Integration Settings

CVE-2026-76086

Deferred

Vulnerability type

Category:

Server-Side Request Forgery

CWE:

CWE-862, CWE-915, CWE-918

Impact:

Credential Exposure and Internal Network Access

Severity:

HIGH RISK

(8.5)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

Formie contains a server-side request forgery vulnerability in the form integration settings action. An authenticated attacker with access to the affected control panel or permitted front-end authentication path may redirect requests to attacker-controlled or internal hosts, potentially exposing stored integration credentials and remote responses.

Affected context

The issue occurs in Formie deployments where the vulnerable integration settings action is reachable without the intended form integration permission. It becomes risky when a configured integration uses stored API keys or OAuth tokens and request-supplied settings can override outbound host properties such as the API URL. Sites allowing low-privileged or front-end user authentication may have a broader exposure surface.

Exploit preconditions

  • Attack surface: Formie's formie/integrations/form-settings control panel action
  • Required access: An authenticated account able to reach the action, including potentially low-privileged or front-end users depending on site configuration
  • Trigger point: Processing integration settings that control the destination of a server-side request
  • Why exploitation is possible: The action lacks the required permission check and accepts attacker-influenced host properties while using credentials stored for the configured integration

Why this happens

The vulnerability results from a missing authorization check combined with insufficient control over outbound request destinations. The action passes request-supplied integration settings to a configured integration, allowing an attacker to replace an API endpoint while the server retains its trusted API keys or OAuth tokens. This maps primarily to CWE-918: Server-Side Request Forgery, with related weaknesses involving missing authorization (CWE-862) and improper control of externally influenced object or configuration state (CWE-915).

Potential impact

  • The server may send authenticated requests to an attacker-controlled host
  • Integration API keys or OAuth tokens could be disclosed
  • Internal services and network responses could be exposed
  • Requests could reach cloud metadata or other privileged internal endpoints
  • The application or connected services could be affected through credentialed requests

General mitigation guidance

Mitigation typically focuses on enforcing authorization before processing integration settings and reducing trust in client-controlled destination values.

Common defensive patterns include:

  • Apply the required permission check consistently to every integration-related action
  • Use server-side allowlists for approved integration hosts and schemes
  • Avoid accepting arbitrary endpoint overrides from request parameters
  • Separate stored credentials from user-controlled configuration values
  • Restrict outbound network access with egress controls and private-address filtering
  • Use narrowly scoped integration credentials and least-privilege service accounts
  • Return only the minimum response data needed by the caller

How teams detect issues like this

Organizations commonly detect this class of issue through:

  • Static analysis for controller actions that process requests without authorization checks
  • Code review of parameters that influence URLs, hosts, schemes, proxies, or integration configuration
  • Tests verifying that low-privileged users cannot invoke protected integration actions
  • Runtime monitoring for outbound requests to unexpected domains, private IP ranges, loopback addresses, or metadata services
  • Egress policies that alert on or block unauthorized destinations
  • Automated security review tools that identify SSRF sinks and missing access-control enforcement

Sources

SourceLink
github.comgithub.com/advisories/GHSA-cvpc-hccg-wmw4
github.comgithub.com/verbb/formie/commit/6735fe4ae8f6a2a76930716ad7876b236f7c530d
github.comgithub.com/verbb/formie/commit/dde7799dfa7e4d0a11e28754ad8544dba62d5def
github.comgithub.com/verbb/formie/releases/tag/2.2.23
github.comgithub.com/verbb/formie/releases/tag/3.1.31
github.comgithub.com/verbb/formie/security/advisories/GHSA-v3f3-cmj4-cvj9

Frequently asked

questions

It can be exploitable through the application by an authenticated user when the affected action is exposed and the deployment permits that user to reach it.

The attacker needs an authenticated account with a path to the vulnerable integration settings action. The required privilege may be lower than intended because the action does not enforce the form integration permission.

Enforce authorization before processing the action, reject arbitrary destination overrides, and permit outbound requests only to explicitly approved integration hosts.

Combine centralized permission checks, strict URL validation and allowlisting, least-privilege integration credentials, outbound network restrictions, and tests covering every related controller action.

Find out what's already
exploitable in your codebase.