CVE-2026-55744

Cotonti CSRF in PFS allows forced arbitrary file upload

Published Jun 18, 2026 CVSS 4.0 · 8.6 High EPSS < 1% KEV · Not listed
Description
Cotonti 1.0.0 (master branch, commit f43f1fc3) is vulnerable to Cross-Site Request Forgery in the Personal File Storage (PFS) module. In modules/pfs/inc/pfs.main.php, the file upload action ('a=upload') processes uploaded files without calling cot_check_xg to validate the anti-CSRF token, even though sibling actions such as 'delete' (line 272) do.

Analysis

AI-generated

Technical impact

In Cotonti 1.0.0 the Personal File Storage module accepts file uploads without validating the anti‑CSRF token, creating a flaw where a forged request can deposit any file into the victim’s storage. The lack of request validation permits an attacker to upload malicious content that may later be accessed, viewed or executed by the authenticated user, threatening confidentiality and integrity.

Affected Systems

All installations of Cotonti 1.0.0 (master branch at commit f43f1fc3) that use the Personal File Storage module are impacted. The vulnerability exists in the file upload action and can affect any site running the affected version of Cotonti.

Risk and Exploitability

With a CVSS score of 8.6 the flaw is considered high severity. The EPSS score of less than 1% indicates a low current exploitation probability, and it is not listed in the CISA KEV catalog. The attack vector requires a remote attacker to lure an authenticated user to a malicious page that submits a forged multipart request; thus it depends on web browsers and user sessions. If exploited, the attacker can strategically place files that may be subsequently used to compromise the victim’s environment.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Cotonti to the latest release that includes the CSRF token validation for the upload action or apply the commit that adds cot_check_xg() to the upload handling
  • Disable or restrict the Personal File Storage upload feature until the patch is applied
  • Educate users to avoid visiting untrusted sites or clicking suspicious links that could trigger a forged upload request

Generated by OpenCVE AI on August 10, 2026 at 23:13 UTC.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-wx35-cv59-9gwr Cotonti: Cross-Site Request Forgery in the Personal File Storage (PFS) module
History
Type Values Removed Values Added
Description Cotonti 1.0.0 (master branch, commit f43f1fc3) is vulnerable to Cross-Site Request Forgery in the Personal File Storage (PFS) module. In modules/pfs/inc/pfs.main.php, the file upload action ('a=upload') processes uploaded files without calling cot_check_xg() to validate the anti-CSRF token, even though sibling actions such as 'delete' (line 272) do. A remote attacker who lures an authenticated user into visiting a malicious page can force the browser to submit a forged multipart request that uploads arbitrary files into the victim's PFS storage. Cotonti 1.0.0 (master branch, commit f43f1fc3) is vulnerable to Cross-Site Request Forgery in the Personal File Storage (PFS) module. In modules/pfs/inc/pfs.main.php, the file upload action ('a=upload') processes uploaded files without calling cot_check_xg to validate the anti-CSRF token, even though sibling actions such as 'delete' (line 272) do.
Title Cotonti - CSRF in PFS Allows Forced Arbitrary File Upload Cotonti CSRF in PFS allows forced arbitrary file upload
Type Values Removed Values Added
Title Cotonti CSRF in PFS allows forced arbitrary file upload Cotonti - CSRF in PFS Allows Forced Arbitrary File Upload
Type Values Removed Values Added
First Time appeared Cotonti
Cotonti cotonti
Vendors & Products Cotonti
Cotonti cotonti
Type Values Removed Values Added
Description Cotonti 1.0.0 (master branch, commit f43f1fc3) is vulnerable to Cross-Site Request Forgery in the Personal File Storage (PFS) module. In modules/pfs/inc/pfs.main.php, the file upload action ('a=upload') processes uploaded files without calling cot_check_xg() to validate the anti-CSRF token, even though sibling actions such as 'delete' (line 272) do. A remote attacker who lures an authenticated user into visiting a malicious page can force the browser to submit a forged multipart request that uploads arbitrary files into the victim's PFS storage.
Title Cotonti CSRF in PFS allows forced arbitrary file upload
Weaknesses CWE-352
References
Metrics cvssV3_1

{'score': 8.1, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N'}

cvssV4_0

{'score': 8.6, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N'}

ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}

Weaknesses
  • CWE-352

    Cross-Site Request Forgery (CSRF)

Sources

Status
PUBLISHED
Assigner
TuranSec
Published
Updated
Aug 10, 2026, 11:44 AM
Reserved
Jun 17, 2026, 12:59 PM
Status
Deferred
Published
Jun 18, 2026, 8:16 AM
Modified
Aug 10, 2026, 12:17 PM