Skip to main content

Cotonti CMS EUVDEUVD-2026-87376

| CVE-2026-100521 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-09-26 VulnCheck GHSA-9chp-6f7w-99jg
5.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Craft link with JS in highlight parameter
  2. Delivery
    Deliver link to victim via phishing
  3. Exploit
    Victim opens search URL
  4. Execution
    Unescaped payload reflects into page
  5. Persist
    Script executes in victim browser
  6. Impact
    Steal session or act as admin

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 the target Cotonti site to have the search plugin enabled (default component) and the attacker must induce a victim to click a crafted URL whose 'highlight' parameter contains injected JavaScript - the reflected payload only executes in that victim's browser. No authentication is required to generate or send the link (PR:N), but the required user interaction (UI:A) is the key limiting factor: an unopened link causes no harm. Impact is amplified only if the tricked victim is an authenticated administrator, enabling session/action abuse in the admin context. Affects Cotonti versions through 1.0.0 prior to the PR #1908 fix.

Impact

This is a reflected cross-site scripting flaw (CWE-79) in the Cotonti CMS search plugin, where the 'highlight' parameter is echoed without HTML/JavaScript escaping. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N, score 5.1) is internally consistent with a classic reflected XSS: network-reachable and low-complexity, but gated by required victim interaction (UI:A) and delivering only limited subsequent-system confidentiality/integrity impact (SC:L/SI:L) - no impact to the vulnerable system's own data (VC/VI/VA:N). This is a real but moderate issue rather than a critical one: exploitation is unauthenticated to launch but depends entirely on tricking a victim (potentially an administrator) into opening a crafted link, so it is opportunistic/social-engineering-driven, not wormable or server-compromising on its own. No EPSS score was provided, the CVE is not in CISA KEV, and no public exploit code is referenced - signals of low real-world exploitation pressure. The primary escalation concern is session/credential theft or admin-context action if an administrator opens the malicious link, which could pivot toward account takeover; treat as medium priority for internet-facing Cotonti sites, low priority otherwise.

Exploit ScenarioDerived

An attacker crafts a URL to a Cotonti site's search feature with malicious JavaScript embedded in the 'highlight' parameter and delivers it via phishing, forum post, or messaging to a site administrator or user. When the victim opens the link, the unescaped payload reflects into the page and executes in their browser session, allowing the attacker to steal session cookies or perform actions in the victim's authenticated context. No public exploit code is identified at time of analysis, but the injection point and payload construction are straightforward.

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

Reflected cross-site scripting in the Cotonti CMS search plugin (all versions through 1.0.0) lets remote, unauthenticated attackers inject JavaScript through the 'highlight' parameter of a crafted search URL, with the payload executing in the browser of any visitor who opens the link. The attack is not automatic: it requires the victim to click a malicious link (UI:A), and it is most dangerous when the tricked visitor is a logged-in administrator, because the injected script then runs with admin session privileges and can perform administrative actions. Patch data indicates an upstream vendor fix is available via GitHub pull request #1908; no public exploit code has been identified at time of analysis, and the flaw is not reported as actively exploited.

RemediationAI

The primary fix is upstream pull request #1908 (https://github.com/Cotonti/Cotonti/pull/1908), which addresses the missing escaping in the search plugin's 'highlight' parameter along with related redirect and CSRF hardening; because the fix is delivered as a GitHub pull request rather than a confirmed tagged release, verify the released product version before relying on an upgrade alone and, if necessary, apply the PR's changes to the deployed code or track the issue at https://github.com/Cotonti/Cotonti/issues/1907 for a fixed build. If patching cannot be performed immediately, disable the search plugin in the Cotonti administration panel, which eliminates the vulnerable reflection point at the cost of removing site-wide search functionality for all users. As a complementary control, add a reverse-proxy or WAF rule that rejects or HTML-encodes angle brackets, quotes, and script/event-handler patterns in the 'highlight' query parameter before requests reach PHP; this blocks the common payload shapes but can be bypassed with unusual encodings and requires tuning to avoid breaking legitimate highlighting. Administrators should also be reminded not to open untrusted search links while authenticated, since the reflected script executes with their session privileges, and session cookies should be flagged HttpOnly and Secure to limit token theft if a payload does execute.

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-based content management system built around a modular plugin architecture, and the affected component is the bundled search plugin, which is enabled by default and highlights matched search terms in the returned results page. The root cause is CWE-79 (Improper Neutralization of Input During Web Page Generation, i.e. cross-site scripting): the search result rendering code in plugins/search/search.header.php and plugins/search/search.page.first.php echoes the user-supplied 'highlight' request parameter back into the HTML response without applying HTML entity encoding or JavaScript escaping, so a value such as an injected script tag or event handler is reflected into the page verbatim. Because the value is reflected rather than stored, the payload is delivered purely by link and only executes in the browser of whoever follows it, which is why the CVSS vector carries UI:A (user interaction required) and the assessed 3.1 vector records S:C (scope change) with low confidentiality and integrity impact. The fix in pull request #1908 is broader than the single parameter: alongside search-related output handling it also tightens the datas/.htaccess executable-extension denylist, adds base64 redirect validation and escaping in message.php, HTML-escapes page/category titles in modules/page, and adds CSRF token checks (cot_check_xg) to forum and page submission forms, indicating a general hardening pass across the CMS rather than a one-line escaping fix. The affected CPE cpe:2.3:a:cotonti:cotonti:*:*:*:*:*:*:*:* carries a wildcard version, confirming that all released versions up to and including 1.0.0 are in scope until the PR is applied.

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.1 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
vuln.today AI 6.1 MEDIUM

Reflected XSS is network-reachable and low-complexity with no auth (PR:N) but needs victim click (UI:R); script runs in a different security context so S:C, with limited C/I impact and no availability effect.

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:A/VC:N/VI:N/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
Active
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
Low
Subsequent system: Availability
None

DescriptionCVE.org

Cotonti through 1.0.0 contains a reflected cross-site scripting vulnerability in the search plugin highlight parameter that performs no HTML or JavaScript escaping. Attackers can craft malicious links with injected JavaScript in the highlight parameter that executes in the browser of any visitor who opens the link, including administrators.

Threat Intelligence Overview

EPSS Score
0.2%
Top 91% exploitable
Prevalence
Rare
niche open-source PHP CMS with small, hobbyist deployment 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.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
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.

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