SEPTEMBER 13, 2026
Live Feed
Back to database
Case File

CVE-2026-86739

LOW · CVSS 3.1 EPSS 0.23% Public Exploit

Source: NVD + CISA KEV + EPSS · Published 2026-09-09 · Last synced 2026-09-13

CyberRota Analysis

AI-Generated

Snipe-IT versions 8.6.3 and earlier fail to properly handle write failures when storing signature PNGs and acceptance PDFs, potentially leading to incomplete compliance records for EULA acknowledgments and equipment receipts. This vulnerability allows authenticated users to create acceptance records that appear complete, despite the absence of supporting evidence files, which could undermine compliance efforts. Organizations using affected versions should prioritize upgrading to Snipe-IT 8.7.0 to mitigate this risk.

Public Exploit Signal

A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.

GitHub PoC Links

Note: these links are listed for security research and verification purposes only.

CVE
CVE-2026-86739
Severity
LOW
CVSS
3.1
EPSS
0.23%

Original NVD Description

Snipe-IT 8.6.3 and earlier do not check the return value of Storage::put() when writing the signature PNG and the generated acceptance PDF in Account\AcceptanceController::store(). On filesystem drivers that return false instead of throwing on a write failure (for example the local disk with restrictive permissions, S3 with expired credentials, or a storage backend that is out of quota), execution continues into $acceptance->accept(), which sets accepted_at and the signature_filename/eula_filename fields, creates the 'accepted' action-log entry, and dispatches completion notifications even though the evidence files were never stored. The result is an acceptance record marked complete whose supporting evidence files do not exist, yielding a materially incomplete compliance artifact for EULA acknowledgement or equipment-receipt workflows. The condition is triggered when an authenticated user completes an acceptance while the storage backend is silently failing writes; an attacker cannot directly force the storage backend into that state. Fixed in Snipe-IT 8.7.0.