Skip to main content

Prospero Flow CRM EUVDEUVD-2026-63935

| CVE-2026-77780 MEDIUM
Authorization Bypass Through User-Controlled Key (CWE-639)
2026-08-21 Secur0 GHSA-5v96-p23j-5mwq
5.3
CVSS 4.0 · Vendor: Secur0
View

Attack ChainAIDerived

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

  1. Access
    Authenticate with transaction and accounting permissions
  2. Delivery
    Enumerate sequential bank_account_id integers
  3. Exploit
    Craft POST /transaction/save with foreign bank_account_id
  4. Execution
    Controller persists transaction without ownership validation
  5. Impact
    Transaction detail view renders co-tenant bank account name, bank name, and card last four digits

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
Exploitation Conditions

Exploitation requires an authenticated CRM session with both transaction creation and accounting creation permissions - a standard business-user permission set, not administrative access, as confirmed by the CVSS PR:L metric. The vulnerability is exclusively relevant to multi-tenant shared-instance deployments where multiple companies co-exist in the same database; a single-company self-hosted installation has no foreign-company records to access and is therefore unaffected. The attacker must enumerate or guess valid integer IDs for bank_account_id or bank_card_id values belonging to co-tenant companies; in typical Laravel/Eloquent applications that use auto-incrementing primary keys, sequential integer guessing is trivial. Limiting factors are: (1) authentication with specific dual-permission assignment is required, (2) the deployment must be a shared multi-tenant instance, and (3) disclosed information is bounded to bank account name, institution name, and card last four digits - not full account numbers or card credentials.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N) scores 5.3, correctly reflecting that exploitation is network-accessible but requires authenticated low-privilege access and produces only limited confidentiality impact. No EPSS score was provided in the intelligence package, so exploitation probability cannot be quantitatively benchmarked. The vulnerability is absent from CISA KEV and no public exploit code has been identified, which substantially lowers realistic urgency - exploitation requires a deliberate insider or a compromised account with the specific combined transaction-and-accounting-creation permission set. The exposed data (bank name, account name, card last four digits) is sensitive but falls short of enabling direct financial fraud without additional fields such as full card numbers or account numbers. The blast radius is strictly bounded to multi-tenant shared-instance deployments; single-tenant self-hosted installations carry no cross-company risk. On balance this is a real but moderate-priority finding: the authentication and permission prerequisites make opportunistic mass exploitation unlikely, though organizations running shared CRM instances with external or semi-trusted users should treat patching as a near-term priority rather than deferring indefinitely.

Exploit ScenarioDerived

A malicious employee or compromised account holder with transaction and accounting creation permissions in a shared CRM instance increments integer bank_account_id values from their own known account ID upward, submitting POST /transaction/save requests for each candidate. Because the endpoint formerly performed no company-ownership check, a valid foreign ID is accepted, persisted, and the transaction detail view subsequently renders the target company's bank account name, institution name, and card last four digits to the attacker. No public exploit code has been identified, but the attack requires only standard HTTP request manipulation with no special tooling.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 21, 2026

Tenant data boundary failure in Roskus Prospero Flow CRM 4.9.1-5.14.0 allows authenticated users holding transaction and accounting creation permissions to read another co-tenant company's bank account name, institution name, and card last four digits by supplying a foreign bank_account_id or bank_card_id in POST /transaction/save. The root cause (CWE-639, IDOR) is the complete absence of company-ownership validation on user-controlled integer foreign keys before they are persisted and rendered - the controller correctly scoped the new transaction's company_id but applied no such scoping to associated reference IDs. No active exploitation or public POC has been identified at time of analysis; a vendor fix is available upstream via GitHub commit 5fd1fe8 and PR #261.

RemediationAI

Apply the upstream fix available at https://github.com/Roskus/prospero-flow-crm/commit/5fd1fe862bbdcbacf5d7e05c1c123981d8809674 (merged via PR #261 at https://github.com/Roskus/prospero-flow-crm/pull/261), which introduces company-scoped Rule::exists() validation in TransactionSaveRequest.php and controller-level findOrFail() ownership guards for bank_account_id, bank_card_id, customer_id, supplier_id, and transaction_category_id. No specific tagged release version number containing this fix has been confirmed in available data - operators should verify their deployed build includes commit 5fd1fe8 or later. As an interim compensating control before patching, restrict the transaction and accounting creation permissions to the minimum necessary set of fully trusted internal users, which reduces the population able to exploit the flaw; note that this may disrupt legitimate workflows for users who hold those permissions for valid business reasons. Additionally, audit existing transaction records for bank_account_id or bank_card_id values that do not match the creating company's own accounts as a retrospective indicator of potential prior exploitation.

Affected VersionsENISA

Prospero Flow CRM 4.9.1 <5.14.2

Affected Packages

euvd prospero_flow_crm fix: 5.14.2

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

Prospero Flow CRM is a Laravel/PHP multi-tenant CRM application where different companies share a common database and are segregated by a company_id discriminator column. CWE-639 (Authorization Bypass Through User-Controlled Key) describes the root cause: the application accepts sequential integer identifiers for bank_account_id and bank_card_id as user-supplied input and queries them directly without a WHERE company_id = auth_user.company_id constraint, exposing records belonging to other tenants. The source diff shows that TransactionSaveController.php called $transaction->fill($request->validated()) with the raw validated payload - setting company_id on the transaction itself but performing no ownership check on the foreign key references. The fix adds both a Laravel Rule::exists() scoped to company_id in TransactionSaveRequest.php (request-layer defense) and explicit BankAccount::where('company_id', $companyId)->findOrFail() calls in the controller (defense-in-depth). The affected CPE is cpe:2.3:a:roskus:prospero_flow_crm:*:*:*:*:*:*:*:* covering versions 4.9.1 through 5.14.0.

Know when Prospero Flow Crm 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 (Secur0) PRIMARY 5.3 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 4.3 MEDIUM

Network endpoint requires authenticated low-privilege user with specific permissions; only partial confidentiality impact from bank detail disclosure, no integrity or availability effect.

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

Primary rating from Vendor (Secur0).

CVSS VectorVendor: Secur0

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

DescriptionCVE.org

Authorization Bypass Through User-Controlled Key in the transaction save endpoint in Roskus Prospero Flow CRM 4.9.1 through 5.14.0 allows a user with transaction and accounting creation permissions to disclose another company's bank account name, bank name and card last four digits via a bank_account_id or bank_card_id belonging to that company in POST /transaction/save, which is persisted and rendered without any company ownership check.

Threat Intelligence Overview

EPSS Score
0.3%
Top 83% exploitable
Prevalence
Low
niche CRM product, limited known enterprise footprint
Data Quality
7 sources
Confidence: High

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.3%
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

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2026-78365 CRITICAL
9.3 Aug 24

Cross-tenant authorization bypass (IDOR/BOLA) in Roskus Prospero Flow CRM 4.0.0 through 5.3.1 lets an authenticated user

CVE-2026-59235 HIGH
8.7 Jul 15

Broken function-level authorization in Prospero Flow CRM before 5.5.3 lets any authenticated low-privileged user (e.g. t

CVE-2026-77759 HIGH
8.7 Aug 21

Cross-tenant transaction data exposure in Roskus Prospero Flow CRM 5.0.0-5.3.5 allows any authenticated user on a shared

CVE-2026-59233 HIGH
8.7 Aug 10

Privilege escalation in Roskus Prospero Flow CRM before version 5.2.1 permits any authenticated user - regardless of ass

CVE-2026-19734 HIGH
8.6 Aug 13

Cross-tenant IDOR in Roskus Prospero Flow CRM before 5.4.7 allows any authenticated user to read sensitive product recor

CVE-2026-19539 HIGH
8.6 Aug 11

Cross-tenant IDOR in Roskus Prospero Flow CRM's ticket management component allows any authenticated user - regardless o

CVE-2026-19870 HIGH
8.6 Aug 14

Cross-tenant payroll data exposure in Roskus Prospero Flow CRM before 5.15.10 enables authenticated users holding standa

CVE-2026-19433 HIGH
8.6 Aug 10

Cross-tenant IDOR in Prospero Flow CRM before 5.4.8 allows any authenticated user to blindly overwrite contact records b

CVE-2026-59236 MEDIUM
6.9 Jul 15

Cross-tenant record injection in Roskus Prospero Flow CRM before 5.14.0 allows any authenticated user to silently insert

CVE-2026-59237 MEDIUM
6.9 Jul 16

Cross-tenant IDOR in Roskus Prospero Flow CRM before 5.5.3 allows any authenticated user to read, modify, and delete ord

CVE-2026-59240 MEDIUM
6.9 Jul 27

Unauthorized notification deletion in Prospero Flow CRM allows any authenticated user to delete other users' notificatio

CVE-2026-82911 MEDIUM
5.1 Sep 04

Order confirmation in Roskus Prospero Flow CRM before 5.15.11 can be triggered by an unauthenticated attacker on behalf

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy