134 lines
5.8 KiB
JSON
134 lines
5.8 KiB
JSON
{
|
|
"dataType": "CVE_RECORD",
|
|
"cveMetadata": {
|
|
"state": "PUBLISHED",
|
|
"cveId": "CVE-2026-48686",
|
|
"assignerOrgId": "8254265b-2729-46b6-b9e3-3dfca2d5bfca",
|
|
"assignerShortName": "mitre",
|
|
"dateUpdated": "2026-05-26T20:59:11.887Z",
|
|
"dateReserved": "2026-05-22T00:00:00.000Z",
|
|
"datePublished": "2026-05-26T00:00:00.000Z"
|
|
},
|
|
"containers": {
|
|
"cna": {
|
|
"providerMetadata": {
|
|
"orgId": "8254265b-2729-46b6-b9e3-3dfca2d5bfca",
|
|
"shortName": "mitre",
|
|
"dateUpdated": "2026-05-26T14:46:38.784Z"
|
|
},
|
|
"descriptions": [
|
|
{
|
|
"lang": "en",
|
|
"value": "FastNetMon Community Edition through 1.2.9 contains a stack-based buffer overflow in the BGP NLRI (Network Layer Reachability Information) decoder. The function decode_bgp_subnet_encoding_ipv4_raw() in src/bgp_protocol.cpp reads prefix_bit_length directly from the BGP packet (line 99) without validating it is <= 32 for IPv4 prefixes. This value is passed to how_much_bytes_we_need_for_storing_certain_subnet_mask() which computes ceil(prefix_bit_length / 8), returning up to 32 bytes for a prefix_bit_length of 255. The result is used as the length argument to memcpy() (line 106), which copies into a 4-byte uint32_t stack variable (prefix_ipv4). This causes a stack buffer overflow of up to 28 bytes, which can be exploited for arbitrary code execution. Additionally, the unvalidated prefix_bit_length is passed to convert_cidr_to_binary_netmask_local_function_copy() (line 111), where a shift of (32 - cidr) with cidr > 32 causes undefined behavior."
|
|
}
|
|
],
|
|
"affected": [
|
|
{
|
|
"vendor": "n/a",
|
|
"product": "n/a",
|
|
"versions": [
|
|
{
|
|
"version": "n/a",
|
|
"status": "affected"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"references": [
|
|
{
|
|
"url": "https://github.com/pavel-odintsov/fastnetmon"
|
|
},
|
|
{
|
|
"url": "https://github.com/pavel-odintsov/fastnetmon/blob/master/src/bgp_protocol.cpp"
|
|
},
|
|
{
|
|
"url": "https://lorikeetsecurity.com/blog/fastnetmon-cve-2026-48686-bgp-nlri-stack-overflow"
|
|
}
|
|
],
|
|
"problemTypes": [
|
|
{
|
|
"descriptions": [
|
|
{
|
|
"type": "text",
|
|
"lang": "en",
|
|
"description": "n/a"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"adp": [
|
|
{
|
|
"problemTypes": [
|
|
{
|
|
"descriptions": [
|
|
{
|
|
"type": "CWE",
|
|
"cweId": "CWE-787",
|
|
"lang": "en",
|
|
"description": "CWE-787 Out-of-bounds Write"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"descriptions": [
|
|
{
|
|
"type": "CWE",
|
|
"cweId": "CWE-120",
|
|
"lang": "en",
|
|
"description": "CWE-120 Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"metrics": [
|
|
{
|
|
"cvssV3_1": {
|
|
"scope": "UNCHANGED",
|
|
"version": "3.1",
|
|
"baseScore": 9.8,
|
|
"attackVector": "NETWORK",
|
|
"baseSeverity": "CRITICAL",
|
|
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
|
|
"integrityImpact": "HIGH",
|
|
"userInteraction": "NONE",
|
|
"attackComplexity": "LOW",
|
|
"availabilityImpact": "HIGH",
|
|
"privilegesRequired": "NONE",
|
|
"confidentialityImpact": "HIGH"
|
|
}
|
|
},
|
|
{
|
|
"other": {
|
|
"type": "ssvc",
|
|
"content": {
|
|
"timestamp": "2026-05-26T20:58:47.062692Z",
|
|
"id": "CVE-2026-48686",
|
|
"options": [
|
|
{
|
|
"Exploitation": "none"
|
|
},
|
|
{
|
|
"Automatable": "yes"
|
|
},
|
|
{
|
|
"Technical Impact": "total"
|
|
}
|
|
],
|
|
"role": "CISA Coordinator",
|
|
"version": "2.0.3"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"title": "CISA ADP Vulnrichment",
|
|
"providerMetadata": {
|
|
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
|
|
"shortName": "CISA-ADP",
|
|
"dateUpdated": "2026-05-26T20:59:11.887Z"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"dataVersion": "5.2"
|
|
} |