Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-86749— snipe-it before 8.7.0 Data Loss via Failed Image Write

Quick assessment

Affected
grokability snipe-it
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Grokability Snipe-IT是Grokability公司开源的一套面向企业的IT资产与运维管理平台。 Grokability Snipe-IT 8.6.3及之前版本存在异常处理不当漏洞,该漏洞源于ImageUploadRequest::handleImages()未检查存储写入操作的返回值,当已认证用户上传图片且存储后端瞬时失败时,静默失败的写入仍会删除旧图像并将数据库中的图像引用指向从未写入的文件,同时deleteExistingImage()中删除失败仍会清空模型图像字段,导致图像不可恢复

CVSS 6.3 · Medium EPSS 0.34% · P26

Affected Version Matrix 2

VendorProduct Version RangeStatus
grokability snipe-it < 8.7.0 affected
8.7.0 unaffected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-86749

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
snipe-it before 8.7.0 Data Loss via Failed Image Write
Source: CVE Program / CVE List V5
Vulnerability 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.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:H/A:L
Source: CVE Program / CVE List V5
Vulnerability Type
未加检查的返回值
Source: CVE Program / CVE List V5
Vulnerability Title
Grokability Snipe-IT 异常处理不当漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Grokability Snipe-IT是Grokability公司开源的一套面向企业的IT资产与运维管理平台。 Grokability Snipe-IT 8.6.3及之前版本存在异常处理不当漏洞,该漏洞源于ImageUploadRequest::handleImages()未检查存储写入操作的返回值,当已认证用户上传图片且存储后端瞬时失败时,静默失败的写入仍会删除旧图像并将数据库中的图像引用指向从未写入的文件,同时deleteExistingImage()中删除失败仍会清空模型图像字段,导致图像不可恢复
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
grokability snipe-it 0 ~ 8.7.0 -

II. Public POCs for CVE-2026-86749

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-86749

请登录查看更多情报信息。

Vendor Advisories for CVE-2026-86749 (2)

Same Patch Batch · grokability · 2026-09-09 · 36 CVEs total

CVE-2026-86751 8.5 HIGH Snipe-IT before 8.7.0 Arbitrary File Read and SSRF via Markdown
CVE-2026-86741 8.5 HIGH Snipe-IT before 8.7.0 Arbitrary File Read and SSRF via Category EULA
CVE-2026-86762 8.1 HIGH Snipe-IT before 8.7.0 Authentication Bypass via API Middleware
CVE-2026-86770 8.1 HIGH Snipe-IT before 8.7.0 Authentication Bypass via SAML Username Collation
CVE-2026-86750 7.7 HIGH snipe-it before 8.7.0 Authorization Bypass via API User Create/Update
CVE-2026-86771 7.6 HIGH Snipe-IT before 8.7.0 Server-Side Request Forgery via employee_num
CVE-2026-86754 7.3 HIGH Snipe-IT before 8.7.0 Authorization Bypass via OAuth Clients
CVE-2026-86759 7.1 HIGH Snipe-IT before 8.7.0 Missing Authorization via asset-history CSV importer
CVE-2026-86765 6.5 MEDIUM Snipe-IT 8.6.3 Authorization Bypass via Asset Update Endpoint
CVE-2026-86764 6.5 MEDIUM Snipe-IT 8.6.4 before 8.7.0 Permission Bypass via assigned components
CVE-2026-86766 6.5 MEDIUM Snipe-IT 8.6.3 Race Condition via Consumable Checkout
CVE-2026-86758 6.5 MEDIUM Snipe-IT before 8.7.0 License Key Exposure via CSV Export
CVE-2026-86757 6.5 MEDIUM Snipe-IT before 8.7.0 Information Disclosure via Custom Fields
CVE-2026-86745 6.5 MEDIUM Snipe-IT before 8.7.0 CSV Formula Injection via Location-Scoping Export
CVE-2026-86742 6.5 MEDIUM Snipe-IT before 8.7.0 CSV Formula Injection via Asset Acceptance Report
CVE-2026-86746 6.4 MEDIUM Snipe-IT before 8.7.0 Authorization Bypass via Livewire Snapshot Replay
CVE-2026-86774 6.3 MEDIUM Snipe-IT before 8.7.0 Broken Access Control via AssetModelPolicy
CVE-2026-86748 6.1 MEDIUM Snipe-IT before 8.7.0 Database Wipe via Invalid Backup Archive
CVE-2026-86756 6.1 MEDIUM Snipe-IT 8.5.0 through 8.6.3 Open Redirect via SAML RelayState
CVE-2026-86773 5.4 MEDIUM Snipe-IT 8.6.3 Broken Access Control via Kit Update Endpoints

Showing top 20 of 36 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2026-86749

No comments yet


Leave a comment