Description
Missing Authorization (CWE-862) in the user API of Roskus Prospero Flow CRM from 2.0.0 before 5.26.0 allows a user with a basic role to read the accounts of other users of its own company, including accounts with higher privileges, and, in versions from 3.5.0, to delete them, because the routes GET /api/user/{id} and DELETE /api/user/{id} in routes/api.php carry only the auth:api middleware, which checks that a JSON Web Token is valid and nothing more, and neither UserReadController::read() nor UserDeleteController::delete() checks a permission, a policy or a role before acting. Object access is scoped by company: the read path limits the query to the company of the authenticated user, and the delete path compares the company of the target account with the company of the authenticated user. The delete path skips that comparison when the company of the authenticated user is Company::DEFAULT_COMPANY, so a user with a basic role in that company can delete any account of any company of the installation. Deleting an account removes the data held on it, and the last administrative account of a company can be deleted. This gives the attacker the personal data held on the other accounts, including email address, telephone number, postal address and IBAN, and the ability to delete accounts it has no permission to administer.
Published: 2026-10-22
Score: 8.6 High
EPSS: n/a
KEV: No
Impact: Unauthorized data exposure and account deletion
Action: Patch
AI Analysis

Impact

Missing authorization in the user API of Roskus Prospero Flow CRM allows any authenticated user with a basic role to read the personal data of other users within the same company, and in releases from 3.5.0 onward to delete those accounts. Because the routes only enforce a valid JSON Web Token and provide no role, permission, or policy checks, an attacker can retrieve email addresses, phone numbers, postal addresses, and IBANs, and can destroy the target account and its stored data. Deleting the sole administrative account of a company can also disable administrative control over that company’s data.

Affected Systems

The vulnerability exists in Roskus Prospero Flow CRM versions 2.0.0 through 5.25.9; account deletion is possible in versions 3.5.0 and newer. The issue is scoped to company boundaries, but the delete path incorrectly skips the company comparison when the authenticated user belongs to the special Company::DEFAULT_COMPANY, effectively allowing a basic‐role user in that company to delete accounts from any company.

Risk and Exploitability

The CVSS score of 8.6 indicates high severity. EPSS is not available, and the vulnerability is not listed in the CISA KEV catalog; however, the attack can be executed by any user who can authenticate to the API, meaning the exploitation potential is significant within an installation. The lack of privilege checks makes the risk high for organizations that use the default company or fail to restrict basic user permissions.

Generated by OpenCVE AI on October 23, 2026 at 03:16 UTC.

Remediation

Vendor Solution

Upgrade to Roskus Prospero Flow CRM 5.26.0 or later.


OpenCVE Recommended Actions

  • Upgrade to Roskus Prospero Flow CRM 5.26.0 or later to resolve missing authorization checks in the user API.
  • If upgrading immediately is not possible, apply a temporary policy or middleware to enforce role‑based access control on GET /api/user/{id} and DELETE /api/user/{id} endpoints before the native fix is applied.
  • Rename or restrict the use of the Company::DEFAULT_COMPANY so that basic‑role users cannot be assigned to it, thereby preventing unrestricted delete access across all companies.

Generated by OpenCVE AI on October 23, 2026 at 03:16 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 23 Oct 2026 00:45:00 +0000

Type Values Removed Values Added
Description Missing Authorization (CWE-862) in the user API of Roskus Prospero Flow CRM from 2.0.0 before 5.26.0 allows a user with a basic role to read the accounts of other users of its own company, including accounts with higher privileges, and, in versions from 3.5.0, to delete them, because the routes GET /api/user/{id} and DELETE /api/user/{id} in routes/api.php carry only the auth:api middleware, which checks that a JSON Web Token is valid and nothing more, and neither UserReadController::read() nor UserDeleteController::delete() checks a permission, a policy or a role before acting. Object access is scoped by company: the read path limits the query to the company of the authenticated user, and the delete path compares the company of the target account with the company of the authenticated user. The delete path skips that comparison when the company of the authenticated user is Company::DEFAULT_COMPANY, so a user with a basic role in that company can delete any account of any company of the installation. Deleting an account removes the data held on it, and the last administrative account of a company can be deleted. This gives the attacker the personal data held on the other accounts, including email address, telephone number, postal address and IBAN, and the ability to delete accounts it has no permission to administer.
Title Missing authorization in the Prospero Flow CRM user API allows a basic role user to read and delete other accounts
First Time appeared Roskus
Roskus prospero Flow Crm
Weaknesses CWE-862
CPEs cpe:2.3:a:roskus:prospero_flow_crm:*:*:*:*:*:*:*:*
Vendors & Products Roskus
Roskus prospero Flow Crm
References
Metrics cvssV4_0

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


Subscriptions

Roskus Prospero Flow Crm
cve-icon MITRE

Status: PUBLISHED

Assigner: Secur0

Published:

Updated: 2026-10-22T19:13:31.254Z

Reserved: 2026-10-21T16:22:08.930Z

Link: CVE-2026-114519

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-22T19:17:37.267

Modified: 2026-10-22T19:17:37.267

Link: CVE-2026-114519

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-23T05:00:13Z

Weaknesses