195 lines
8.2 KiB
JSON
195 lines
8.2 KiB
JSON
{
|
|
"dataType": "CVE_RECORD",
|
|
"dataVersion": "5.2",
|
|
"cveMetadata": {
|
|
"cveId": "CVE-2026-86744",
|
|
"assignerOrgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
|
|
"state": "PUBLISHED",
|
|
"assignerShortName": "VulnCheck",
|
|
"dateReserved": "2026-09-08T11:31:38.679Z",
|
|
"datePublished": "2026-09-09T13:32:09.284Z",
|
|
"dateUpdated": "2026-09-18T17:23:08.679Z"
|
|
},
|
|
"containers": {
|
|
"cna": {
|
|
"providerMetadata": {
|
|
"orgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
|
|
"shortName": "VulnCheck",
|
|
"dateUpdated": "2026-09-09T13:32:09.284Z"
|
|
},
|
|
"datePublic": "2026-08-24T00:00:00.000Z",
|
|
"title": "snipe-it before 8.7.0 Race Condition in Asset Checkout",
|
|
"descriptions": [
|
|
{
|
|
"lang": "en",
|
|
"value": "Snipe-IT 8.6.3 and earlier (and develop pre-release commits prior to the fix) contain a race condition in the asset checkout paths. Api\\AssetsController::checkout() and Assets\\AssetCheckoutController::store() call Asset::availableForCheckout() outside the mutation path and then invoke Asset::checkOut() without taking a row lock or re-checking availability, so two concurrent checkout requests for the same available asset can both observe it as available and both commit. This produces duplicate checkout-history rows, a doubled checkout_counter, and two CheckoutableCheckedOut events for a single-assignment asset, corrupting the audit trail and utilization/reconciliation reporting; the asset's final assigned_to remains singular, so the visible assignment stays intact. Exploitation requires an authenticated session holding the assets.checkout permission (or superuser) and precise concurrent timing. Fixed in 8.7.0."
|
|
}
|
|
],
|
|
"problemTypes": [
|
|
{
|
|
"descriptions": [
|
|
{
|
|
"lang": "en",
|
|
"description": "Concurrent Execution using Shared Resource with Improper Synchronization ('Race Condition')",
|
|
"cweId": "CWE-362",
|
|
"type": "CWE"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"affected": [
|
|
{
|
|
"vendor": "grokability",
|
|
"product": "snipe-it",
|
|
"defaultStatus": "unaffected",
|
|
"versions": [
|
|
{
|
|
"version": "0",
|
|
"status": "affected",
|
|
"versionType": "semver",
|
|
"lessThan": "8.7.0"
|
|
},
|
|
{
|
|
"version": "8.7.0",
|
|
"status": "unaffected",
|
|
"versionType": "semver"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"cpeApplicability": [
|
|
{
|
|
"nodes": [
|
|
{
|
|
"operator": "OR",
|
|
"negate": false,
|
|
"cpeMatch": [
|
|
{
|
|
"vulnerable": true,
|
|
"criteria": "cpe:2.3:a:snipeitapp:snipe-it:*:*:*:*:*:*:*:*",
|
|
"versionEndExcluding": "8.7.0"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"metrics": [
|
|
{
|
|
"format": "CVSS",
|
|
"cvssV4_0": {
|
|
"version": "4.0",
|
|
"vectorString": "CVSS:4.0/AV:N/AC:H/AT:P/PR:H/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N",
|
|
"attackVector": "NETWORK",
|
|
"attackComplexity": "HIGH",
|
|
"attackRequirements": "PRESENT",
|
|
"privilegesRequired": "HIGH",
|
|
"userInteraction": "NONE",
|
|
"vulnConfidentialityImpact": "NONE",
|
|
"vulnIntegrityImpact": "LOW",
|
|
"vulnAvailabilityImpact": "NONE",
|
|
"subConfidentialityImpact": "NONE",
|
|
"subIntegrityImpact": "NONE",
|
|
"subAvailabilityImpact": "NONE",
|
|
"baseScore": 2.1,
|
|
"baseSeverity": "LOW"
|
|
}
|
|
},
|
|
{
|
|
"format": "CVSS",
|
|
"cvssV3_1": {
|
|
"version": "3.1",
|
|
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:N/I:L/A:N",
|
|
"attackVector": "NETWORK",
|
|
"attackComplexity": "HIGH",
|
|
"privilegesRequired": "HIGH",
|
|
"userInteraction": "NONE",
|
|
"scope": "UNCHANGED",
|
|
"confidentialityImpact": "NONE",
|
|
"integrityImpact": "LOW",
|
|
"availabilityImpact": "NONE",
|
|
"baseScore": 2.2,
|
|
"baseSeverity": "LOW"
|
|
}
|
|
}
|
|
],
|
|
"references": [
|
|
{
|
|
"url": "https://github.com/grokability/snipe-it/security/advisories/GHSA-h992-9438-26v8",
|
|
"tags": [
|
|
"vendor-advisory"
|
|
],
|
|
"name": "GitHub Security Advisory (GHSA-h992-9438-26v8)"
|
|
},
|
|
{
|
|
"url": "https://github.com/grokability/snipe-it/commit/f71806b1e0efbd3bc2b6be61994ad2a5d5d6c206",
|
|
"tags": [
|
|
"patch"
|
|
],
|
|
"name": "Patch Commit"
|
|
},
|
|
{
|
|
"name": "VulnCheck Advisory: snipe-it before 8.7.0 Race Condition in Asset Checkout",
|
|
"tags": [
|
|
"third-party-advisory"
|
|
],
|
|
"url": "https://www.vulncheck.com/advisories/snipe-it-before-8.7.0-race-condition-in-asset-checkout"
|
|
}
|
|
],
|
|
"credits": [
|
|
{
|
|
"lang": "en",
|
|
"value": "PizzaStev3",
|
|
"type": "reporter"
|
|
},
|
|
{
|
|
"lang": "en",
|
|
"value": "snipe",
|
|
"type": "finder"
|
|
},
|
|
{
|
|
"lang": "en",
|
|
"value": "christopherfi-dev",
|
|
"type": "finder"
|
|
}
|
|
],
|
|
"x_generator": {
|
|
"engine": "vulncheck-endgame"
|
|
}
|
|
},
|
|
"adp": [
|
|
{
|
|
"metrics": [
|
|
{
|
|
"other": {
|
|
"type": "ssvc",
|
|
"content": {
|
|
"id": "CVE-2026-86744",
|
|
"role": "CISA Coordinator",
|
|
"options": [
|
|
{
|
|
"Exploitation": "none"
|
|
},
|
|
{
|
|
"Automatable": "no"
|
|
},
|
|
{
|
|
"Technical Impact": "partial"
|
|
}
|
|
],
|
|
"version": "2.0.3",
|
|
"timestamp": "2026-09-18T17:09:37.025208Z"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"title": "CISA ADP Vulnrichment",
|
|
"providerMetadata": {
|
|
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
|
|
"shortName": "CISA-ADP",
|
|
"dateUpdated": "2026-09-18T17:23:08.679Z"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
} |