Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with editor-level Flowintel account
-
DeliveryIdentify or enumerate task IDs from target case
-
ExploitCraft API request substituting foreign task ID with own case ID
-
ExecutionServer accepts request without ownership check
-
ImpactRead, modify, or delete unauthorized task data
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 a valid Flowintel account with editor-level access to at least one case - unauthenticated exploitation is not possible per the CVSS PR:L metric. The attacker must also know or successfully enumerate a valid task ID belonging to a case they do not own; if task IDs are non-sequential or UUID-based the guessing surface is reduced. No special server configuration or non-default feature enablement is required - the vulnerability was present on all task-related endpoints in any standard Flowintel >= 3.3.0 deployment. Exploitation is limited to the Flowintel application's own data scope (no scope change, SC/SI/SA = N); it does not grant OS-level or database-level access beyond what Flowintel itself exposes. Multi-team deployments where case access is intentionally partitioned between teams or customers face the highest practical risk. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:L/SC:N/SI:N/SA:N, score 7.2) accurately reflects the threat profile: network-reachable, low complexity, requiring only a low-privilege authenticated session, with high integrity impact on vulnerable-system data. The PR:L requirement is the primary limiting factor - exploitation demands an account with editor-level access to at least one case, which is a non-trivial barrier in most controlled deployments. Confidentiality impact is rated low, consistent with the ability to read task notes or export data from foreign cases, but not credential or system-level data. Availability impact is low because tasks can be deleted but the platform itself remains operational. No CISA KEV listing and no public exploit code have been identified, lowering the immediate exploitation likelihood. The EPSS score is not available in the provided data. The breadth of the fix - over a dozen endpoints decorated in the patch - indicates the authorization gap was systemic rather than isolated, meaning exploitation surface was wide once an attacker had valid credentials. For organizations using Flowintel in multi-tenant or multi-team configurations where case segregation is a security boundary, this vulnerability should be treated as high priority. |
| Exploit ScenarioDerived | An attacker authenticated as an editor on Case A enumerates task IDs by interacting with their own case, then crafts API requests substituting a task ID from Case B into endpoints such as DELETE /case/{caseB_id}/task/{taskB_id} or GET /case/{caseA_id}/task/{taskB_id}/note. Because the pre-patch routes only verified case-level access and not task-to-case ownership, the server processes the request against the foreign task, enabling the attacker to read, modify, or delete task data - including notes, files, assignments, and MISP-linked artifacts - from cases they have no legitimate access to. No public exploit code has been identified, but the attack requires only knowledge of a valid foreign task ID, which may be discoverable through sequential ID enumeration if integer IDs are used. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 27, 2026
Broken object-level authorization across Flowintel task endpoints allows authenticated editor-level users to perform unauthorized operations on tasks belonging to cases they do not own. Flowintel versions >= 3.3.0 accept a case ID and task ID pair on task-related routes but previously failed to verify that the referenced task actually belonged to the supplied case, enabling cross-case data access and manipulation. No public exploit or CISA KEV listing exists at time of analysis, but the CVSS 4.0 score of 7.2 reflects high integrity impact - affected operations include task editing, deletion, note management, file handling, assignment, MISP-linking, and export.
RemediationAI
Apply the upstream patch at commit 10676eec7f1286d7ee0769546c772c5cb9c1c72b (https://github.com/flowintel/flowintel/commit/10676eec7f1286d7ee0769546c772c5cb9c1c72b.patch); an exact tagged release version is not confirmed in available data, so administrators should verify the target release includes this commit before deploying. As a compensating control pending patching, restrict editor-level role assignments to only trusted users who genuinely require cross-case access, reducing the pool of accounts capable of exploitation - note this does not eliminate the vulnerability but limits who can trigger it. Additionally, review audit logs for anomalous patterns where a user's task operations reference task IDs from cases they do not own, as the patched code emits an audit log entry at 403 for denied cross-case task route attempts. Isolating Flowintel behind VPN or network controls that limit who can reach the API reduces exposure but does not compensate for the authorization flaw if insider threats or compromised editor accounts are a concern.
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
Flowintel is a Python Flask-based cyber incident case management platform developed by CIRCL (Computer Incident Response Center Luxembourg). Task-related API routes in app/case/task.py accepted both a case identifier (cid) and a task identifier (tid) as path parameters but relied solely on the user's case-level authorization, never cross-checking that the task's stored case_id matched the supplied cid. This is a classic CWE-639 (Authorization Through User-Controlled Key) pattern: the authorization decision deferred to a caller-supplied object reference rather than an ownership check in the data model. The fix introduces a task_case_bound_required Python decorator that loads both the case and task objects and returns 404 if task.case_id != case.id, applied uniformly across edit, delete, note, assignment, status, file, export, MISP-linking, subtask, and external-reference endpoints. An additional guard was added for note_id cross-object access within get_note and export_notes. Affected CPE: cpe:2.3:a:flowintel:flowintel:*:*:*:*:*:*:*:*.
Know when Flowintel 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:L/UI:N/VC:L/VI:H/VA:L/SC:N/SI:N/SA:N
Editor-level authentication required (PR:L); no scope change as impact is confined to application data; high integrity due to unauthorized task modification and deletion across cases.
Primary rating from Vendor (CIRCL).
CVSS VectorVendor: CIRCL
DescriptionCVE.org
Affected versions of Flowintel contain an insecure direct object reference / broken object-level authorization issue across numerous task endpoints.
The routes generally received both a case identifier and a task identifier, but previously they did not enforce that the task actually belonged to the supplied case. As a result, an authenticated user with editor-level access to one case could potentially substitute the ID of a task from another case and invoke operations against that foreign task.
The patch introduces task_case_bound_required, which loads both objects and returns 404 unless the task belongs to the requested case. This protection is applied to edit, delete, note, assignment, status, file, export, MISP-linking, subtask, external-reference, and other task-related endpoints.
The fix also adds explicit checks that a requested note_id belongs to the current task before returning or exporting it, closing related cross-object access paths.
Version impacted =>3.3.0
Executive ViewAI
Flowintel versions 3.3.0 and later contain a broken object-level authorization vulnerability (CVE-2026-81817) allowing users to access and modify tasks from cases they do not own. This enables unauthorized cross-case data manipulation including task editing, deletion, file handling, and exports-creating material integrity and confidentiality risks for organizations managing investigative or operational case data.
Apply vendor patch.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Persistent session hijacking is possible in Flowintel version 3.3.0 and later because the application fails to invalidat
Remote code execution in Flowintel's alerts settings update endpoint (versions >= 3.3.0) allows an authenticated high-pr
Privilege escalation in Flowintel's administrative user-edit API allows an organization administrator to modify full adm
Remote code execution via log path traversal in Flowintel 3.3.0 and later is achievable by an authenticated administrato
Flowintel's PDF export pipeline passes attacker-controlled note content to Pandoc with the raw_tex extension enabled, al
Log injection in Flowintel versions 3.3.0 and later allows unauthenticated remote attackers to forge arbitrary log lines
Stored XSS via Vue template injection in FlowIntel allows an authenticated low-privilege user to persist malicious Vue i
Server-side request forgery in FlowIntel up to version 3.3.0 allows a low-privileged authenticated user to coerce the ap
Insufficient authorization on the Flowintel /my_assignment/user API endpoint allows any authenticated API user to retrie
Stored cross-site scripting in Flowintel case notes allows an authenticated low-privileged user to inject malicious Java
Stored cross-site scripting in Flowintel's calendar view (versions >= 3.3.0) allows an authenticated user with case-crea
Stored cross-site scripting in Flowintel's MISP timeline renderer allows an authenticated low-privileged attacker to inj
EUVD-2026-67123
GHSA-ccgv-2jpf-98m2
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB