Skip to main content

Cotonti EUVDEUVD-2026-83367

| CVE-2026-93870 MEDIUM
Cross-Site Request Forgery (CSRF) (CWE-352)
2026-09-18 VulnCheck GHSA-7h6q-853g-5r6c
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 user to malicious page
  2. Exploit
    Auto-submit forged POST to ratings.ajax.php
  3. Execution
    Handler skips anti-CSRF token check
  4. Impact
    Rating stored under victim's identity

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 that the target has the Cotonti 'ratings' plugin enabled and that a victim with an authenticated session and write/rating privileges (the code checks $auth_write) visits an attacker-controlled page while logged in. The primary limiting factor is required user interaction (UI:P) - the victim must actively browse to the malicious page during a valid session - and the impact is confined to forging/modifying rating data, with no confidentiality or availability effect. No special server-side configuration beyond the default ratings plugin being active is needed.

Impact

This is a genuine but low-severity issue best characterized as a real-but-not-urgent finding. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:N, vendor 5.3) correctly captures a CSRF flaw: network-reachable, low complexity, no attacker privileges, but requiring victim interaction (UI:P) and yielding only limited integrity impact (VI:L) with zero confidentiality or availability effect. No EPSS score, no CISA KEV listing, and no public exploit code are present in the input - so there is no signal of active exploitation or automatability, and no public exploit identified at time of analysis. The impact ceiling is intrinsically low: successful exploitation only forges/modifies stored rating data on behalf of a logged-in user, not account takeover or data theft. There is no conflicting-signal problem here - description, CVSS vector, CWE-352, tags, and the patch diff (adding cot_check_xg() before the rating-send handler) all agree this is a straightforward missing-anti-CSRF-token bug. Net: legitimate to patch but low real-world priority, especially given the niche product footprint.

Exploit ScenarioDerived

An attacker hosts a malicious web page containing a hidden form or script that auto-submits a POST to the Cotonti ratings AJAX handler (plugins/ratings/ratings.ajax.php). When a user who is already authenticated to the target Cotonti site visits that page, their browser sends the forged request with their session cookies, silently submitting or altering a rating attributed to them. No public exploit code is identified, but the attack is trivial to construct given the missing token check.

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 18, 2026

Cotonti through 1.0.0 allows unauthenticated remote attackers to forge rating submissions on behalf of an authenticated user when the ratings plugin is enabled. The attacker must lure a logged-in user with rating privileges to a malicious page that auto-submits a POST to the ratings AJAX handler, modifying stored rating data without the victim’s intent. A vendor patch is indicated and an upstream fix exists in GitHub PR 1900, but no public exploit was identified at time of analysis.

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed. Apply the fix from GitHub PR 1900, which adds cot_check_xg() token validation to plugins/ratings/ratings.ajax.php, and monitor the VulnCheck advisory https://www.vulncheck.com/advisories/cotonti-through-1.0.0-cross-site-request-forgery-in-the-ratings-plugin-ajax-handler and GitHub issue https://github.com/Cotonti/Cotonti/issues/1892 for a tagged release. If patching cannot be performed immediately, disable the ratings plugin to remove the forged-rating attack surface, accepting the loss of rating functionality, or use a web server/WAF rule to allow POST requests to plugins/ratings/ratings.ajax.php only from same-origin pages, recognizing that a misconfigured rule may block legitimate AJAX rating submissions. Setting session cookies to SameSite=Lax or Strict can reduce CSRF exposure but may affect cross-site login or embedded flows.

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

This is a cross-site request forgery (CSRF) issue, CWE-352, in the Cotonti ratings plugin. The vulnerable AJAX handler at plugins/ratings/ratings.ajax.php processes a rating submission when request/context conditions such as inr=send, newrate between 0 and 10, auth_write, and enabled are met, but before the fix it did not call Cotonti’s cot_check_xg() anti-CSRF token check. The CPE string cpe:2.3:a:cotonti:cotonti:*:*:*:*:*:*:*:* covers Cotonti through the affected 1.0.0 release. Because the endpoint relies on the victim’s session cookie and evaluates write privileges only after the missing token validation, a cross-site form can perform the rating action as the victim. The patch in GitHub PR 1900 adds cot_check_xg() before processing the submission, enforcing the expected XG token and closing the forged-request path.

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

Classic CSRF: attacker unauthenticated (PR:N) but victim must visit a malicious page (UI:R); only limited integrity impact (forged rating data), no confidentiality or availability effect.

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 ratings plugin AJAX handler, allowing attackers to forge ratings on behalf of authenticated users. Attackers can craft malicious pages that auto-submit POST requests to modify stored rating data when visited by logged-in users.

Threat Intelligence Overview

EPSS Score
0.1%
Top 97% exploitable
Prevalence
Low
niche open-source PHP CMS, minimal 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.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
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