SOCFortress CoPilot: Cross-Tenant Arbitrary Object-Store Write via the Data-Store Upload Endpoint (customer_user)
Impact
SOCFortress CoPilot focuses on providing a single pane of glass for all your security operations needs. Prior to 0.1.76, POST /api/agent_data_store/upload in backend/app/data_store/data_store_routes.py permits customer_user callers to choose bucket_name and object_name without an allowlist, tenant prefix, ownership check or content restriction. The only file check requires a nonempty filename. The operations in backend/app/data_store/data_store_operations.py create missing buckets and upsert objects, allowing existing objects belonging to any tenant to be overwritten. Targets include…
Source excerpt · GitHub_MThe only file check requires a nonempty filename.
Affected packages
Affected products
Vendor version evidence. Product records are separate from automatic dependency matching.
socfortress · GitHub_M
CoPilot
1 range
socfortress · GitHub_M
CoPilot
Compare with this publisher’s ranges. This does not inspect your installation.
affected
< 0.1.76
Other versions: unknown
Original source description
SOCFortress CoPilot focuses on providing a single pane of glass for all your security operations needs. Prior to 0.1.76, POST /api/agent_data_store/upload in backend/app/data_store/data_store_routes.py permits customer_user callers to choose bucket_name and object_name without an allowlist, tenant prefix, ownership check or content restriction. The only file check requires a nonempty filename. The operations in backend/app/data_store/data_store_operations.py create missing buckets and upsert objects, allowing existing objects belonging to any tenant to be overwritten. Targets include sysmon-configs/<customer_code>/sysmon_config.xml distributed to managed Windows endpoints, copilot-case-report-templates/<name> rendered server-side, and case evidence or forensic artifacts under copilot-cases/<case_id>/<file> and velociraptor-artifacts/<agent_id>/<flow_id>/<file>. A lowest-privilege user can tamper with cross-tenant evidence, blind endpoint telemetry, poison report templates for later code execution, plant data or exhaust storage. Sibling list, download and delete routes remain restricted to admin/analyst; the exposed operation is the upload write path. This issue is fixed in version 0.1.76.
Inside the record
Evidence available
Describes the evidence in this view, not whether the product is safe.
Original records
CVE-2026-61708View the latest unmodified CVE JSON from the official source. It may be newer than this imported page.
cve.new JSON →Underlying weaknesses
The source’s classification of what caused the vulnerability.
Contributing organizations · 2
Assigning organization
Additional data publisher
What changed
Follow changesLarge field values are marked as truncated previews. Original source snapshots remain retained.