Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as low-privileged Snipe-IT user
-
DeliverySend HTTP request with formula-prefixed User-Agent header
-
ExploitPayload stored verbatim in activity log
-
ExecutionAdministrator exports Activity Report CSV
-
PersistAdministrator opens CSV in Excel or LibreOffice
-
ImpactFormula executes on admin workstation
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V1 - Encoding and Sanitization CSV injection prevention
|
| Exploitation Conditions | Exploitation requires: (1) the attacker possesses a valid, low-privileged authenticated account on the Snipe-IT instance (confirmed by PR:L in the CVSS 4.0 vector); (2) the attacker sends at least one authenticated HTTP request with a formula-prefixed User-Agent header, causing Actionlog::logaction() to store the payload; (3) a separate user - typically an administrator with access to the Reports module - must export the Activity Report and open the resulting CSV in spreadsheet software that evaluates formula elements (e.g., Microsoft Excel, LibreOffice Calc). Exploitation is fundamentally limited by the mandatory active user interaction requirement (UI:A): the attack cannot complete without a victim opening the CSV file. Deployments where no administrator ever exports or opens Activity Reports in formula-executing applications are not at risk from the execution stage, though the payload remains stored. The Snipe-IT server itself is not directly compromised; impact is confined to the report viewer's workstation environment. |
| Impact | The CVSS 4.0 score of 4.8 (Medium) accurately reflects the constrained impact profile: while the attack is network-accessible with low complexity and low privilege (AV:N/AC:L/PR:L), mandatory active user interaction is required (UI:A) - a victim administrator must export and open the Activity Report CSV in formula-executing spreadsheet software before the payload fires. The vulnerable Snipe-IT server itself suffers no direct confidentiality or integrity impact (VC:N/VI:N/VA:N); harm is limited to the subsequent system, i.e., the report viewer's workstation (SC:L/SI:L). No CISA KEV listing exists, no public exploit code has been identified, and no EPSS data was provided. The real-world priority is therefore driven primarily by operational habit: organizations where administrators routinely export and open Activity Reports in Excel or LibreOffice Calc carry meaningfully higher risk than those who do not. The stored-injection nature of this flaw means a single malicious User-Agent request persists until the report is generated, broadening the window of exposure beyond a single interaction. |
| Exploit ScenarioDerived | A low-privileged Snipe-IT user sets their HTTP client's User-Agent header to a formula string such as =cmd|'/C powershell -enc ...'!A0 before making authenticated requests to the application. Snipe-IT logs this value verbatim in the activity table. When an administrator later navigates to the Reports section, exports the Activity Report, and opens the resulting CSV in Microsoft Excel, the formula is evaluated by Excel on the administrator's workstation, potentially executing arbitrary commands or exfiltrating data from the admin's local environment. No public proof-of-concept code has been identified, but the attack technique (CSV injection via User-Agent) is well-documented in the security community. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 10, 2026
CSV formula injection in Snipe-IT prior to version 8.5.0 enables a low-privileged authenticated user to store a malicious spreadsheet formula via the HTTP User-Agent header, which is then written unescaped into exported Activity Report CSV files. When an administrator or report viewer opens the exported file in spreadsheet software such as Microsoft Excel or LibreOffice Calc, the embedded formula executes within their local application environment, potentially enabling data exfiltration or arbitrary command execution on the viewer's workstation. No public exploit code has been identified at time of analysis, and a vendor-released patch is available in version 8.5.0.
RemediationAI
Upgrade to Snipe-IT version 8.5.0, which resolves the issue via the fix committed at https://github.com/grokability/snipe-it/commit/7b7d2c87fbc965a7933b1bf9e3f2c331b8c8e19c; the vendor security advisory is at https://github.com/grokability/snipe-it/security/advisories/GHSA-whrx-mmgr-gpcf. If immediate patching is not feasible, restrict the Activity Report export feature to the smallest possible set of highly trusted users, reducing the population who could trigger the final exploitation step. Additionally, instruct all report consumers to open exported CSVs in environments that do not evaluate formula elements - for example, by disabling automatic formula evaluation in Excel's Trust Center, importing the file as plain text, or reviewing in a text editor. Note that this compensating control does not remove already-stored malicious User-Agent payloads from the database; after patching, previously logged malicious entries will be exported safely because the fix applies escaping at export time.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in composer, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
CWE-1236 (Improper Neutralization of Formula Elements in a CSV File) describes injection vulnerabilities where attacker-controlled input prefixed with formula triggers (=, +, -, @) is written into CSV output without sanitization, causing execution when opened in spreadsheet applications that evaluate formula syntax. In this case, Snipe-IT's PHP backend method Actionlog::logaction() captures the raw HTTP User-Agent header and persists it to the activity log database without sanitization. ReportsController::postActivityReport() subsequently reads these stored values and emits them directly into exported CSV content, again without formula escaping. The attack exploits the implicit trust spreadsheet software places in CSV cell content. No CPE strings were provided in the input data; affected scope is all Snipe-IT deployments running versions prior to 8.5.0.
Know when Snipe It gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Network-accessible stored payload requires low-privilege auth (PR:L), mandatory victim interaction to open the CSV (UI:R), and scope change since execution occurs on the viewer's workstation (S:C/C:L/I:L).
Primary rating from Vendor (github).
CVSS VectorVendor: github
Lifecycle Timeline
1DescriptionCVE.org
Snipe-IT is an IT asset/license management system. Prior to 8.5.0, Actionlog::logaction() stores the request User-Agent header and ReportsController::postActivityReport() writes that value to the Activity Report CSV without formula escaping, allowing a low-privileged authenticated user to store a formula-like User-Agent that may execute when a report viewer opens the exported CSV in spreadsheet software. This issue is fixed in version 8.5.0.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Cross-Site Request Forgery (CSRF) in GitHub repository snipe/snipe-it prior to v.6.2.3. Rated high severity (CVSS 8.8),
In Snipe-IT, versions v3.0-alpha to v5.3.7 are vulnerable to Host Header Injection. Rated high severity (CVSS 8.8), this
snipe-it is vulnerable to Cross-Site Request Forgery (CSRF). Rated high severity (CVSS 8.8), this vulnerability is remot
snipe-it is vulnerable to Cross-Site Request Forgery (CSRF). Rated high severity (CVSS 8.8), this vulnerability is remot
Two-factor authentication bypass in Snipe-IT (all releases before 8.7.0) allows an attacker who already knows a victim's
Session Fixation in GitHub repository snipe/snipe-it prior to 6.0.10. Rated high severity (CVSS 8.0), this vulnerability
Old sessions are not blocked by the login enable function. Rated high severity (CVSS 7.4), this vulnerability is remotel
snipe-it is vulnerable to Server-Side Request Forgery (SSRF). Rated high severity (CVSS 7.2), this vulnerability is remo
Broken authorization in Snipe-IT before 8.6.2 lets an authenticated non-admin user who holds users.view and users.edit -
Privilege escalation via authorization bypass in Snipe-IT versions prior to 8.6.0 allows any authenticated user holding
Improper permission handling in Snipe-IT before 8.6.0 lets a privileged user strip another user's administrative or gran
Snipe-IT before 7.0.10 allows remote code execution (associated with cookie serialization) when an attacker knows the AP
EUVD-2026-42997
GHSA-whrx-mmgr-gpcf
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB