CVE-2026-86747
PoC moderateBroken Company Scoping in Snipe-IT Acceptance Endpoints Enables Cross-Company Deletion
Snipe-IT, an open source IT asset management system, contains an incorrect authorization flaw (CWE-863) in versions up to and including 8.6.3 affecting the acceptance-report endpoints POST /reports/unaccepted_assets/sent_reminder and DELETE /reports/unterminated acceptance endpoints when Full Multiple Company Support (FMCS) is enabled. The guard ReportsController::currentUserCanAccessAcceptance() in 8.6.3 early-exits and allows access for any pivot-only user (whose users.company_id is NULL), and versions before 8.6.3 had no guard at all. An authenticated attacker holding only the reports.view permission can enumerate sequential acceptance IDs and permanently delete any pending acceptance record in the installation regardless of company ownership, destroying the acceptance audit trail for that item, or trigger reminder emails that leak limited cross-company context such as item names and assignment metadata. This affects any multi-company Snipe-IT deployment with FMCS enabled that grants reports.view to non-global users, and it is fixed in version 8.7.0. No exploitation in the wild is known; the flaw is publicly documented via the vendor's GitHub security advisory, and EPSS estimates only a 0.2% chance of exploitation in the next 30 days.
What to do: Upgrade Snipe-IT to 8.7.0, which fixes the company scoping on both acceptance endpoints. Until patched, restrict the reports.view permission to trusted global users, and review application and mail logs for unexpected POST /reports/unaccepted_assets/sent_reminder or DELETE /reports/unterminated acceptance requests or reminder emails you did not initiate. Because deleted acceptance records are permanent, audit your unaccepted-assets reports for missing acceptance history that could indicate prior abuse.
| snipeitapp snipe-it | up to and including 8.6.3 (only deployments with Full Multiple Company Support enabled; fixed in 8.7.0) |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
Snipe-IT is an open source IT asset management system. In versions up to and including 8.6.3, the report acceptance endpoints POST /reports/unaccepted_assets/sent_reminder (ReportsController::sentAssetAcceptanceReminder) and DELETE /reports/unaccepted_assets/{acceptanceId}/delete (ReportsController::deleteAssetAcceptance) are not correctly scoped when Full Multiple Company Support (FMCS) is enabled. In 8.6.3 the guard ReportsController::currentUserCanAccessAcceptance() early-exits with 'return true' when '! $user->company_id' is truthy, which is the case for every pivot-only user (a user associated with companies through the company_user pivot table whose scalar users.company_id column is NULL); versions prior to 8.6.3 lacked the guard altogether. As a result, an authenticated user holding the reports.view permission can send acceptance-reminder emails for, and permanently delete, any pending acceptance record in the install regardless of which company owns the underlying checkoutable. Deletion is destructive and forfeits the acceptance audit trail for the affected item, and the reminder email exposes limited cross-company acceptance context (item name and assignment metadata) to the recipient. Acceptance IDs are sequential integers and can be enumerated. This issue is fixed in version 8.7.0.
- Vendors
- snipeitapp
- Products
- snipe-it
- Weakness
- CWE-863
- Vector
- CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
In the news0 stories
No ingested article mentions this CVE yet.