title: Junos OS: Memory leak leads to kernel crash (vmcore) due to SNMP polling
description: On Juniper Networks Junos OS devices, a specific SNMP OID poll causes a memory leak which over time leads to a kernel crash (vmcore). Prior to the kernel crash other processes might be impacted, such as failure to establish SSH connection to the device. The administrator can monitor the output of the following command to check if there is memory leak caused by this issue: user@device> show system virtual-memory | match "pfe_ipc|kmem" pfe_ipc 147 5K - 164352 16,32,64,8192 <-- increasing vm.kmem_map_free: 127246336 <-- decreasing pfe_ipc 0 0K - 18598 32,8192 vm.kmem_map_free: 134582272 This issue affects Juniper Networks Junos OS: 17.4R3; 18.1 version 18.1R3-S5 and later versions prior to 18.1R3-S10; 18.2 version 18.2R3 and later versions prior to 18.2R3-S3; 18.2X75 version 18.2X75-D420, 18.2X75-D50 and later versions prior to 18.2X75-D430, 18.2X75-D53, 18.2X75-D60; 18.3 version 18.3R3 and later versions prior to 18.3R3-S2; 18.4 version 18.4R1-S4, 18.4R2 and later versions prior to 18.4R2-S5, 18.4R3-S1; 19.1 version 19.1R2 and later versions prior to 19.1R2-S2, 19.1R3; 19.2 version 19.2R1 and later versions prior to 19.2R1-S5, 19.2R2; 19.3 versions prior to 19.3R2-S5, 19.3R3; 19.4 versions prior to 19.4R1-S3, 19.4R2. This issue does not affect Juniper Networks Junos OS prior to 17.4R3.
problem types: CWE-401: Missing Release of Memory after Effective Lifetime
affected:
{
product: Junos OS
vendor: Juniper Networks
versions:
status: affected, version: 17.4R3
lessThan: 17.4R3, status: unaffected, version: unspecified, versionType: custom
changes: [at: 18.1R3-S10, status: unaffected], lessThan: 18.1*, status: affected, version: 18.1R3-S5, versionType: custom
changes: [at: 18.2R3-S3, status: unaffected], lessThan: 18.2*, status: affected, version: 18.2R3, versionType: custom
changes: [at: 18.2X75-D430, 18.2X75-D53, 18.2X75-D60, status: unaffected], lessThan: 18.2X75*, status: affected, version: 18.2X75-D420, 18.2X75-D50, versionType: custom
changes: [at: 18.3R3-S2, status: unaffected], lessThan: 18.3*, status: affected, version: 18.3R3, versionType: custom
changes: [at: 18.4R2-S5, 18.4R3-S1, status: unaffected], lessThan: 18.4*, status: affected, version: 18.4R1-S4, 18.4R2, versionType: custom
changes: [at: 19.1R2-S2, 19.1R3, status: unaffected], lessThan: 19.1*, status: affected, version: 19.1R2, versionType: custom
changes: [at: 19.2R1-S5, 19.2R2, status: unaffected], lessThan: 19.2*, status: affected, version: 19.2R1, versionType: custom
lessThan: 19.3R2-S5, 19.3R3, status: affected, version: 19.3, versionType: custom
lessThan: 19.4R1-S3, 19.4R2, status: affected, version: 19.4, versionType: custom
}
metrics:
cvssV3_1: [
attackComplexity: LOW
attackVector: NETWORK
availabilityImpact: HIGH
baseScore: 7.5
baseSeverity: HIGH
confidentialityImpact: NONE
integrityImpact: NONE
privilegesRequired: NONE
scope: UNCHANGED
userInteraction: NONE
vectorString: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
version: 3.1
]
exploits: Juniper SIRT is not aware of any malicious exploitation of this vulnerability.
solutions: The following software releases have been updated to resolve this specific issue: Junos OS 17.4R3-S1, 18.1R3-S10, 18.2R3-S3, 18.2X75-D41, 18.2X75-D430, 18.2X75-D53, 18.2X75-D60, 18.3R3-S2, 18.4R2-S5, 18.4R3-S1, 19.1R2-S2, 19.1R3, 19.2R1-S5, 19.2R2, 19.3R2-S5, 19.3R3, 19.4R1-S3, 19.4R2, 20.1R1, and all subsequent releases.
workarounds: Disable SNMP (disabled by default), utilize edge filtering with source-address validation (uRPF, etc.), access control lists (ACLs), and/or SNMPv3 authentication to limit access to the device only from trusted hosts.