Skip to main content

Cotonti CVE-2026-93873

| EUVDEUVD-2026-83370 MEDIUM
Cross-Site Request Forgery (CSRF) (CWE-352)
2026-09-18 VulnCheck GHSA-fx98-4ggj-ff23
5.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Lure authenticated victim to attacker page
  2. Exploit
    Auto-submit forged contact form
  3. Execution
    Browser sends request with victim session
  4. Impact
    Forged message reaches admin inbox

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security Anti-CSRF tokens, SameSite cookies
MITRE ATT&CK

1 technique across 1 tactic: Initial Access

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

Exploitation Conditions

Exploitation requires an authenticated Cotonti victim (user logged into the site) to visit an attacker-controlled page while their session is active (CVSS UI:P), and requires the vulnerable contact plugin to be installed and its submission handler reachable. The attacker needs no credentials or privileges of their own (PR:N), but cannot act without the victim's browser and valid session. Limiting factors: the required user interaction, dependence on the contact plugin being enabled, and the low-impact outcome (forged messages to the admin inbox only - no data exposure or system compromise). Versions through 1.0.0 are affected; the fix (cot_check_xg() token check) is available from the vendor.

Impact

This is a genuine but modest-severity CSRF flaw (CWE-352) rated 5.3 by the vendor using CVSS 4.0. All exploitation signals point to LOW real-world priority. The 4.0 vector (AV:N/AC:L/PR:N/UI:P/VC:N/VI:L/VA:N) shows only limited integrity impact (VI:L) with no confidentiality or availability effect - consistent with the described outcome of forged contact-form messages, not code execution or data theft. No EPSS score, no CISA KEV listing, and no public exploit code (POC) were provided, so this is 'no public exploit identified at time of analysis.' The vector requires passive user interaction (UI:P): a victim must be logged in and lured to an attacker-controlled page, which materially limits reach versus a fully unauthenticated automatic attack. The vendor 5.3 rating and my independent assessment (~4.3 in CVSS 3.1 terms) are broadly aligned; no metrics are in conflict. Net: real, verifiable, patched, but low priority - the impact ceiling is spoofed inbox messages to the administrator, not compromise of the application.

Exploit ScenarioDerived

An attacker hosts a web page containing a hidden, auto-submitting form that POSTs to the Cotonti contact plugin handler. When an authenticated victim visits that page, their browser silently submits the forged contact form, delivering a spoofed message attributed to the victim into the administrator's inbox. No public exploit code is available, but the technique is trivial and the missing token check (patched by adding cot_check_xg()) confirms the mechanism.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 18, 2026

Cross-site request forgery in the Cotonti CMS contact plugin (through version 1.0.0) lets an attacker auto-submit the contact form from an attacker-controlled page, sending forged messages into the administrator inbox that appear to originate from a logged-in victim (CWE-352, CVSS 4.0 base 5.3 / assessed CVSS 3.1 5.3). The submission handler never validates an anti-CSRF token, so any authenticated user who visits a malicious page while their session is active can be silently impersonated. Exploitation requires victim interaction and an enabled contact plugin, and the impact is limited to message forgery and inbox spam - no data disclosure or system compromise; no public exploit code and no confirmed active exploitation were identified at time of analysis.

RemediationAI

Apply the vendor's upstream fix, which adds the cot_check_xg() CSRF token guard to plugins/contact/contact.php as shown in https://github.com/Cotonti/Cotonti/pull/1903 - patch status is 'vendor-released fix (PR #1903); a tagged patched release version is not independently confirmed', so either deploy that commit/patch directly or upgrade past the vulnerable 1.0.0 codebase once a tagged release is published. Because the change is a single token-check line, it can be back-ported safely into 1.0.0 installations with minimal regression risk; the side effect is that legitimate submissions must carry a valid, session-bound token, so any custom themes or templates that render the contact form must include the hidden token field or submissions will be rejected. If you cannot patch immediately, disabling the contact plugin (Admin Panel > Plugins > Contact) removes the attack surface entirely at the cost of losing the contact form, or restrict the plugin's use to logged-in users with cookies set to SameSite=Lax/Strict so cross-site POSTs do not carry the session, though SameSite alone is a weaker control than the token check. Monitor the administrator inbox for suspicious volume or spoofed senders as a detective measure.

Affected VersionsENISA

Cotonti 0 ≤1.0.0

Affected Packages

euvd cotonti 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

Cotonti is a PHP/MySQL content management framework whose contact plugin (plugins/contact/contact.php) handles user-submitted contact messages delivered to the administrator. The flaw is a classic CWE-352 cross-site request forgery: the plugin's submission handler processes POST data without verifying a per-session anti-CSRF token, so a third-party site can craft a form that the victim's browser submits automatically with the victim's session cookie attached. The upstream fix in pull request #1903 adds a cot_check_xg() call at the top of the handler - Cotonti's built-in token/XSRF guard function that validates the request against the session-bound token - which is the canonical mitigation for this class of bug in this framework. The affected code is version-agnostic per the CPE cpe:2.3:a:cotonti:cotonti:*:*:*:*:*:*:*:* (all versions through 1.0.0), and the vulnerable path is only reachable when the contact plugin is installed and enabled and the visitor holds an active authenticated session.

Know when Cotonti 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:N/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.3 MEDIUM

Remote CSRF needs no attacker privileges (PR:N) but relies on a victim visiting a malicious page (UI:R); impact is limited to forged low-integrity messages, so C:N/I:L/A:N.

3.1 AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/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
None
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

Cotonti through 1.0.0 fails to validate anti-CSRF tokens in the contact plugin submission handler, allowing attackers to forge messages. Attackers can auto-submit contact forms from attacker-controlled pages to send forged messages attributed to authenticated victims to the administrator inbox.

Threat Intelligence Overview

EPSS Score
0.2%
Top 95% exploitable
Prevalence
Low
niche open-source PHP CMS, limited enterprise deployment footprint
Data Quality
6 sources
Confidence: High

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 Yes
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
Poc
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 Request Forgery exploits the automatic credential inclusion behavior of web browsers.

CVE-2013-4789 HIGH POC
7.5 Aug 09

SQL injection vulnerability in modules/rss/rss.php in Cotonti before 0.9.14 allows remote attackers to execute arbitrary

CVE-2026-55742 CRITICAL
9.4 Jun 18

Cross-site request forgery in Cotonti 1.0.0 (commit f43f1fc3) lets a remote attacker escalate privileges to administrato

CVE-2026-91939 CRITICAL
9.3 Sep 15

PHP object injection in the Cotonti 1.0.0 Comments plugin allows unauthenticated, network-reachable attackers to instant

CVE-2025-44115 MEDIUM POC
5.4 Jun 02

A vulnerability has been found in Cotonti Siena v0.9.25. Affected by this vulnerability is the file /admin.php?m=config&

CVE-2021-47808 MEDIUM POC
5.4 Jan 16

Cotonti Siena 0.9.19 contains a stored cross-site scripting vulnerability in the admin configuration panel's site title

CVE-2024-24115 MEDIUM POC
5.4 Feb 08

A stored cross-site scripting (XSS) vulnerability in the Edit Page function of Cotonti CMS v0.9.24 allows authenticated

CVE-2026-93868 CRITICAL
9.2 Sep 18

Unauthenticated attackers can reset the password of any Cotonti account, including administrator accounts, because passw

CVE-2022-39840 MEDIUM POC
4.8 Sep 05

Cotonti Siena 0.9.20 allows admins to conduct stored XSS attacks via a direct message (DM). Rated medium severity (CVSS

CVE-2022-39839 MEDIUM POC
4.8 Sep 05

Cotonti Siena 0.9.20 allows admins to conduct stored XSS attacks via a forum post. Rated medium severity (CVSS 4.8), thi

CVE-2026-55741 HIGH
8.7 Jun 18

Cross-site request forgery in Cotonti 1.0.0 (commit f43f1fc3) administration configuration handler allows a remote attac

CVE-2026-55744 HIGH
8.6 Jun 18

Cross-Site Request Forgery in the Personal File Storage (PFS) module of Cotonti 1.0.0 (commit f43f1fc3) allows remote at

CVE-2026-93872 HIGH
7.7 Sep 18

PHP object injection in Cotonti 1.0.0 allows authenticated users with comment-write permissions to pass attacker-control

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