Skip to main content

Cotonti CMS EUVDEUVD-2026-87379

| CVE-2026-100524 MEDIUM
Cross-Site Request Forgery (CSRF) (CWE-352)
2026-09-26 VulnCheck GHSA-p49w-44mw-95j3
5.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Host malicious page with forged request
  2. Delivery
    Lure authenticated admin to visit
  3. Exploit
    Browser auto-submits to extensions manager
  4. Execution
    No CSRF token validated server-side
  5. Impact
    Extension installed/paused without consent

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 administrator with an active, authenticated Cotonti session to visit an attacker-controlled page (or load an attacker-embedded image/link) while that session is valid; the targeted extensions-manager actions (install/update/pause/unpause) are admin-only functions, so a non-admin victim cannot be leveraged. The vulnerability exists because the extensions-manager endpoint performs state-changing operations without validating an anti-CSRF token (the cot_check_xg/cot_xg 'xk' token mechanism added in the fix). Limiting factors: success depends on victim user interaction (UI:P), an admin-privileged authenticated session in the browser, and same-session cookie delivery to the Cotonti host; there is no data-confidentiality exposure and no direct code execution from this issue alone.

Impact

This is a real but modest-priority issue. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:P) scores 5.3 (Medium): network-reachable, low complexity, no attacker privileges, but requires passive user interaction (UI:P) - a logged-in administrator must visit an attacker-controlled page. Impact is limited to integrity and availability of the extension subsystem (VI:L/VA:L) with no confidentiality impact (VC:N), consistent with a CSRF that can install/update/pause/unpause extensions rather than directly read data. No EPSS score, no CISA KEV listing, and no public exploit code are present in the input, so exploitation status is 'no public exploit identified at time of analysis'; there are no conflicting exploitation signals to reconcile. The one signal to weigh against the PR:N metric: although the attacker holds no credentials (correct for CSRF), successful exploitation is fully gated on an authenticated admin session plus a click, which meaningfully narrows real-world exploitability versus a raw unauthenticated RCE. The most important caveat is prevalence: Cotonti is a niche open-source PHP CMS, so even a working exploit has a small addressable population. Note also the referenced patch (PR #1908) is broad - it hardens redirect handling, output escaping, and adds anti-CSRF tokens (cot_check_xg/cot_xg) across forums and page modules, and tightens a .htaccess upload filter - indicating the fix bundles more than just the extensions-manager CSRF this CVE describes.

Exploit ScenarioDerived

An attacker crafts a web page containing an auto-submitting form or embedded image that targets Cotonti's extensions-manager endpoint (system/admin/admin.extensions.php), which lacks anti-CSRF token validation. The attacker lures a currently-authenticated Cotonti administrator to view the page; the admin's browser silently issues the state-changing request, installing, updating, pausing, or unpausing an extension without consent. No public proof-of-concept is identified in the provided data, but the technique is trivial and low-complexity (AC:L).

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

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

Alert me

AnalysisAIv1 – Sep 26, 2026

Cross-site request forgery in the Cotonti CMS extensions manager through 1.0.0 allows an attacker to make a logged-in administrator's browser silently install, update, pause, or unpause extensions, because system/admin/admin.extensions.php performs these state-changing actions without validating an anti-CSRF token. The attacker is unauthenticated (CVSS 4.0 vector PR:N), but exploitation succeeds only if the victim holds a valid Cotonti admin session and loads attacker-controlled content such as a crafted link or embedded image, making user interaction (UI:P) the gating factor; no public exploit code was identified at time of analysis and there is no confirmed active exploitation (no CISA KEV entry). Impact is limited to integrity and availability of the extension set with no confidentiality exposure and no code execution from this issue alone (CVSS 4.0 5.3; independent assessment CVSS 3.1 5.3, C:N/I:L/A:L) - a real but modest-priority issue.

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed - the vendor-supplied fix is merged in GitHub PR 1908 (linked from the VulnCheck advisory at https://www.vulncheck.com/advisories/cotonti-through-1.0.0-cross-site-request-forgery-via-extensions-manager and issue https://github.com/Cotonti/Cotonti/issues/1907), but no tagged fixed release number beyond 1.0.0 is given in the available data, so administrators should verify whether a release incorporating PR 1908 exists before upgrading. Because the CPE pattern covers every version through 1.0.0, upgrading to the first release containing that commit is the primary remediation. If immediate patching is not possible, the most effective compensating control is to restrict access to the admin panel and to system/admin/admin.extensions.php to trusted IP ranges or a VPN, which prevents an administrator from being lured into the endpoint from an arbitrary origin - the trade-off is loss of administrative access from unmanaged networks and remote locations. Setting the session cookie to SameSite=Lax or Strict blocks the cross-site link/form submission the attack depends on, but can break legitimate cross-site integrations that rely on the session cookie. Enforcing Origin/Referer header validation on admin endpoints at a reverse proxy or WAF is a further layer, with the trade-off that header-stripping clients and some privacy tooling will be blocked. Advising administrators to end their Cotonti session before browsing untrusted sites reduces exposure but is error-prone and not a durable fix.

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 system, and the affected code is the admin-side extensions manager in system/admin/admin.extensions.php, which handles install, update, pause and unpause operations for extensions. The root cause is CWE-352 (Cross-Site Request Forgery): the handler accepts state-changing requests without verifying the framework's own anti-CSRF token mechanism. Cotonti already ships such a mechanism - cot_xg()/cot_check_xg(), which generates and validates the 'x' parameter tied to Cot::$sys['xk'] - and the vulnerable handler simply never invoked the check. The upstream fix (GitHub PR 1908) adds cot_check_xg() calls and injects the xk token into generated form actions and URLs, and additionally applies the same hardening to other unprotected state-changing endpoints (forums newtopic and newpost, page add and page edit), tightens redirect validation in message.php and page.main.php against open-redirect abuse, and adds htmlspecialchars escaping on category and row titles. The breadth of the fix indicates a project-wide CSRF-hardening pass rather than an isolated one-line change. The affected CPE pattern, cpe:2.3:a:cotonti:cotonti:*:*:*:*:*:*:*:*, matches all Cotonti releases up to and including 1.0.0.

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:L/SC:N/SI:N/SA:N
vuln.today AI 5.4 MEDIUM

PR:N because CSRF needs no attacker credentials, but UI:R since a logged-in admin must be tricked into a click; I:L/A:L for extension state changes, C:N as no data is read.

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

DescriptionCVE.org

Cotonti through 1.0.0 contains a cross-site request forgery vulnerability in the extensions manager that allows attackers to perform state-changing actions without anti-CSRF token validation. Attackers can craft links or embed images to force administrators to install, update, pause, or unpause extensions by tricking them into visiting a malicious page while authenticated.

Threat Intelligence Overview

EPSS Score
0.1%
Top 98% exploitable
Prevalence
Rare
niche open-source PHP CMS with small production footprint
Data Quality
6 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.1%
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
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 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