Reference page — cumulative record through Saturday, October 3, 2026 UTC. Reference pages update as the archive grows; only dated daily editions are immutable pages of record.
CVE-2026-86749
grokability snipe-it — snipe-it before 8.7.0 Data Loss via Failed Image Write
AV AC AT PR UI VC VI VA CVSS EPSS %ile KEV
N L N L P N H L 7.0 .0034 25.0 —
AFFECTED
Product Versions Fixed
snipe-it unspecified 8.7.0
TIMELINE
Sep 8 Reserved by VulnCheck
Sep 9 Published (CNA: VulnCheck)
Sep 14 EXPLOIT PUBLISHED — CVE-2026-86749 (grokability snipe-it). Public exploit reference added.
Sep 19 EXPLOIT PUBLISHED — CVE-2026-86749 (grokability snipe-it). Public exploit reference added.
Description
Snipe-IT versions <= 8.6.3 (fixed in 8.7.0) do not check the return value of storage write operations in ImageUploadRequest::handleImages(). Because Laravel's default disk mode does not throw on failure, a silently failed Storage::disk('public')->put(...) call still caused the application to delete the previous image via deleteExistingImage() and to reassign and persist the model's image reference to the new filename, destroying the existing image and leaving the database row pointing at a file that was never written. A mirror problem existed in deleteExistingImage(), where a failed Storage::delete() still nulled the model's image field, orphaning the file on disk. The condition is not directly attacker-controlled: it is triggered when any legitimate authenticated user submits an image upload while the storage backend transiently fails (for example an S3 network error, a local filesystem permission problem, or quota exhaustion). The result is unrecoverable loss of the prior image and a durable inconsistency between the database and disk that requires manual reconciliation. All models whose controllers route through ImageUploadRequest::handleImages (assets, asset models, users, companies, manufacturers, locations, categories, suppliers, departments, and other image-carrying models) are affected.
Lifecycle
Complete event history — 4 events, chronological
| Date | Event | Detail |
| September 8, 2026 | Reserved | Reserved by VulnCheck |
| September 9, 2026 | Published | Published (CNA: VulnCheck) |
| September 14, 2026 | EXPLOIT PUBLISHED | EXPLOIT PUBLISHED — CVE-2026-86749 (grokability snipe-it). Public exploit reference added. |
| September 19, 2026 | EXPLOIT PUBLISHED | EXPLOIT PUBLISHED — CVE-2026-86749 (grokability snipe-it). Public exploit reference added. |
Affected
Affected products and packages — 1 row
| Vendor | Product / Package | Ecosystem | Version introduced | Fixed |
| grokability | snipe-it | — | — | 8.7.0 |
About this page
This is a reference page, not a dated page of record. It assembles the complete lifecycle of CVE-2026-86749 from the CVE Program record, NVD enrichment, the CISA KEV catalog, EPSS, and OSV advisories. The box score's numbers (CVSS, EPSS, KEV status) are current as of Saturday, October 3, 2026 UTC and are re-derived as the archive grows; only dated daily editions are immutable pages of record. The authoritative source for this identifier is cve.org.