Description
Unrestricted Upload of File with Dangerous Type in the product photo upload in Roskus Prospero Flow CRM before 5.16.0 allows an authenticated user holding the create product permission (routine Seller role) to execute arbitrary JavaScript in the application origin. The photo validation rule classifies the file only by its content (magic bytes) and rejects only a fixed list of PHP extensions, while ProductSaveController::save() names the stored file using the client-supplied extension and copies it into the public web root. A file that begins with an image header and carries an HTML extension passes validation, is stored under public/asset/upload/product/, and is served with a text/html content type, turning the upload into first-party stored script execution.
Published: 2026-08-27
Score: 4.8 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Stored cross-site scripting in application origin
Action: Patch Now
AI Analysis

Impact

An authenticated user holding the create product permission can upload a file that begins with an image header but carries an HTML extension. The upload routine validates only the file’s magic bytes and rejects a fixed list of PHP extensions, then copies the file into the web root using the client‑supplied extension. The resulting file is served with a text/html content type, allowing arbitrary JavaScript to execute within the application context.

Affected Systems

Prospero Flow CRM from Roskus. Versions prior to 5.16.0 are vulnerable. The issue affects the product photo upload functionality accessed by users with Seller role permissions.

Risk and Exploitability

The CVSS score of 4.8 reflects moderate impact. EPSS is not available and the vulnerability is not listed in the CISA KEV catalog. Exploitation requires the attacker to be authenticated and possess create product privileges. Once a malicious file is stored, the application will serve it as a script, enabling stored cross‑site scripting attacks against all users who view product pages.

Generated by OpenCVE AI on August 28, 2026 at 09:10 UTC.

Remediation

Vendor Solution

Upgrade to 5.16.0 or later from the main branch; no tagged release carries the fix. Review and remove any existing files with a non-image extension under public/asset/upload/product/.


OpenCVE Recommended Actions

  • Apply the vendor patch by upgrading Prospero Flow CRM to version 5.16.0 or later from the main branch.
  • Remove any files with a non‑image extension located under the public/asset/upload/product/ directory to eliminate existing stored scripts.
  • Restrict create product permissions to only trusted users or temporarily disable product creation until the patch is applied.
  • Audit uploaded files for malicious content and enforce strict validation on client‑supplied file extensions.

Generated by OpenCVE AI on August 28, 2026 at 09:10 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 28 Aug 2026 16:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Thu, 27 Aug 2026 18:00:00 +0000

Type Values Removed Values Added
Description Unrestricted Upload of File with Dangerous Type in the product photo upload in Roskus Prospero Flow CRM before 5.16.0 allows an authenticated user holding the create product permission (routine Seller role) to execute arbitrary JavaScript in the application origin. The photo validation rule classifies the file only by its content (magic bytes) and rejects only a fixed list of PHP extensions, while ProductSaveController::save() names the stored file using the client-supplied extension and copies it into the public web root. A file that begins with an image header and carries an HTML extension passes validation, is stored under public/asset/upload/product/, and is served with a text/html content type, turning the upload into first-party stored script execution.
Title Unrestricted upload of file with dangerous type in Prospero Flow CRM product photo allows stored cross-site scripting
First Time appeared Roskus
Roskus prospero Flow Crm
Weaknesses CWE-434
CPEs cpe:2.3:a:roskus:prospero_flow_crm:*:*:*:*:*:*:*:*
Vendors & Products Roskus
Roskus prospero Flow Crm
References
Metrics cvssV4_0

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


Subscriptions

Roskus Prospero Flow Crm
cve-icon MITRE

Status: PUBLISHED

Assigner: Secur0

Published:

Updated: 2026-08-28T15:36:24.352Z

Reserved: 2026-08-27T18:47:15.950Z

Link: CVE-2026-81931

cve-icon Vulnrichment

Updated: 2026-08-28T15:36:20.378Z

cve-icon NVD

Status : Deferred

Published: 2026-08-27T20:18:57.200

Modified: 2026-09-01T20:52:27.110

Link: CVE-2026-81931

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-28T09:15:05Z

Weaknesses
  • CWE-434

    Unrestricted Upload of File with Dangerous Type