Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify target CRM's order-confirm endpoint
-
DeliveryCraft URL with sequential order number
-
ExploitDeliver link to authenticated CRM user via phishing
-
ExecutionUser clicks link (top-level navigation)
-
PersistBrowser sends SameSite=Lax session cookie
-
ImpactOrderConfirmController::confirm() marks order as confirmed
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security Anti-CSRF tokens, SameSite cookies
MITRE ATT&CK
1 technique across 1 tactic: Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The victim must be authenticated to the Prospero Flow CRM application at the time of exploitation (an active, valid session cookie must be present). The victim must perform a top-level browser navigation to the attacker-controlled URL - a direct link click is sufficient; no file download, plugin execution, or secondary confirmation is required. SameSite=Lax must be the session cookie policy (the default in modern frameworks including Laravel), which allows cookies on top-level navigations. Sequential order numbers mean no enumeration of valid order IDs is needed beyond guessing a range. Limiting factors: the attack requires social engineering to deliver the crafted URL to a logged-in user; if the organization enforces SameSite=Strict cookies, cross-site navigation cookies are blocked and the attack fails; the attacker cannot read any response data (no confidentiality impact), only trigger the state change. |
| Impact | The provided CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N, score 5.1) is well-calibrated to the actual impact. The integrity impact is limited to a single order state change per click, but the sequential order number scheme allows an attacker who can induce repeated clicks - or who chains this with an open redirect - to systematically confirm all pending orders, amplifying the effective impact beyond what the VI:L metric alone suggests. User interaction is a genuine prerequisite (UI:A), which reduces automatable risk versus pure network-accessible CSRF with no required click. No KEV listing or published PoC exists at time of analysis; the EPSS signal is not provided. Real-world risk is moderate for any organization using this CRM for order management, as mass-confirming orders without authorization can result in financial or fulfilment fraud. The niche footprint of this product limits broad exposure. |
| Exploit ScenarioDerived | An attacker targets an organization's order management workflow by crafting a URL such as https://crm.example.com/order/confirm/1042 and embedding it in a phishing email or malicious web page. When an authenticated CRM user clicks the link, the browser performs a top-level GET navigation and automatically attaches the SameSite=Lax session cookie, causing OrderConfirmController::confirm() to execute and mark order 1042 as confirmed without the user's intent. By iterating over sequential order numbers (e.g., 1-9999) in embedded image tags or iframes using a zero-pixel technique or JavaScript redirect loop, the attacker could confirm all pending orders in a single page load by the victim. No public exploit code is identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 04, 2026
Order confirmation in Roskus Prospero Flow CRM before 5.15.11 can be triggered by an unauthenticated attacker on behalf of any authenticated user through a classic CSRF exploit. The root cause is a state-changing action exposed via HTTP GET at /order/confirm/{order_number}, which Laravel's VerifyCsrfToken middleware does not protect - middleware enforcement is limited to POST, PUT, PATCH, and DELETE. Because session cookies are configured with SameSite=Lax, a single crafted link navigated by the victim automatically includes their session cookie, silently transitioning the target order from pending to confirmed. Sequential integer order numbers further allow an attacker to enumerate and mass-confirm all outstanding orders in a single automated sweep. No public exploit or KEV listing is identified at time of analysis; vendor patch is available in 5.15.11.
RemediationAI
Upgrade to Roskus Prospero Flow CRM version 5.15.11, which resolves the vulnerability by converting the confirm route from GET to POST (Route::post) and adding a @csrf Blade token in the confirmation form, as documented in commit a90c0c8c (https://github.com/Roskus/prospero-flow-crm/commit/a90c0c8c). If immediate upgrade is not possible, a compensating control is to apply a server-level or middleware-level rule that rejects GET requests to /order/confirm/* - note this may require application-level adjustment to avoid breaking navigation. Alternatively, configuring session cookies to SameSite=Strict would block cross-site top-level navigation cookies entirely, eliminating the CSRF vector, but may break legitimate cross-site login flows. Adding a secondary confirmation step (e.g., re-authentication or manual CSRF token in a JavaScript overlay) is also viable but carries implementation risk without the upstream patch.
Affected VersionsENISA
Affected Packages
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-based CRM application. Laravel's VerifyCsrfToken middleware protects only non-idempotent HTTP methods (POST, PUT, PATCH, DELETE) by design; HTTP GET routes receive no CSRF token verification regardless of whether they perform state changes. The affected route (Route::get('/order/confirm/{order_number}')) violates REST conventions by performing a write operation over GET. The SameSite=Lax cookie attribute, while designed to limit cross-site exposure, explicitly allows cookies on top-level navigations initiated by an anchor click or redirect - exactly the scenario here. The CWE-352 root cause (CSRF) is confirmed by the commit diff, which fixes the issue by converting the route to POST and adding the @csrf Blade directive. Affected CPE: cpe:2.3:a:roskus:prospero_flow_crm:*:*:*:*:*:*:*:*.
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
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
User interaction is required (victim must click link); no confidentiality or availability impact; integrity impact is low (order state change only).
Primary rating from Vendor (Secur0).
CVSS VectorVendor: Secur0
DescriptionCVE.org
Cross-Site Request Forgery (CSRF) in the OrderConfirmController at GET /order/confirm/{order_number} in Roskus Prospero Flow CRM before 5.15.11 allows an unauthenticated attacker to confirm any order on behalf of an authenticated user by directing them to a crafted page. Laravel's VerifyCsrfToken middleware enforces CSRF tokens only on POST, PUT, PATCH, and DELETE requests; the Route::get declaration leaves this state-changing action unprotected. Session cookies configured with SameSite=Lax are automatically included in top-level cross-site navigation, so a single link click triggers OrderConfirmController::confirm() and transitions the target order from pending to confirmed without user authorization. Because order numbers are sequential integers, an attacker can enumerate and confirm all existing orders in a single automated sweep.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Request Forgery exploits the automatic credential inclusion behavior of web browsers.
More in Prospero Flow Crm
View allCross-tenant authorization bypass (IDOR/BOLA) in Roskus Prospero Flow CRM 4.0.0 through 5.3.1 lets an authenticated user
Broken function-level authorization in Prospero Flow CRM before 5.5.3 lets any authenticated low-privileged user (e.g. t
Cross-tenant transaction data exposure in Roskus Prospero Flow CRM 5.0.0-5.3.5 allows any authenticated user on a shared
Privilege escalation in Roskus Prospero Flow CRM before version 5.2.1 permits any authenticated user - regardless of ass
Cross-tenant IDOR in Roskus Prospero Flow CRM before 5.4.7 allows any authenticated user to read sensitive product recor
Cross-tenant IDOR in Roskus Prospero Flow CRM's ticket management component allows any authenticated user - regardless o
Cross-tenant payroll data exposure in Roskus Prospero Flow CRM before 5.15.10 enables authenticated users holding standa
Cross-tenant IDOR in Prospero Flow CRM before 5.4.8 allows any authenticated user to blindly overwrite contact records b
Cross-tenant record injection in Roskus Prospero Flow CRM before 5.14.0 allows any authenticated user to silently insert
Cross-tenant IDOR in Roskus Prospero Flow CRM before 5.5.3 allows any authenticated user to read, modify, and delete ord
Unauthorized notification deletion in Prospero Flow CRM allows any authenticated user to delete other users' notificatio
Tenant data boundary failure in Roskus Prospero Flow CRM 4.9.1-5.14.0 allows authenticated users holding transaction and
EUVD-2026-71268
GHSA-4758-h5xr-5h97
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB