title: Junos OS: CRL failing to download causes a memory leak and ultimately a DoS
description: A Missing Release of Memory after Effective Lifetime vulnerability in the Public Key Infrastructure daemon (pkid) of Juniper Networks Junos OS allows an unauthenticated networked attacker to cause Denial of Service (DoS). In a scenario where Public Key Infrastructure (PKI) is used in combination with Certificate Revocation List (CRL), if the CRL fails to download the memory allocated to store the CRL is not released. Repeated occurrences will eventually consume all available memory and lead to an inoperable state of the affected system causing a DoS. This issue affects Juniper Networks Junos OS: All versions prior to 18.3R3-S6; 18.4 versions prior to 18.4R2-S9, 18.4R3-S10; 19.1 versions prior to 19.1R2-S3, 19.1R3-S7; 19.2 versions prior to 19.2R1-S8, 19.2R3-S4; 19.3 versions prior to 19.3R3-S4; 19.4 versions prior to 19.4R2-S5, 19.4R3-S5; 20.1 versions prior to 20.1R3-S1; 20.2 versions prior to 20.2R3-S2; 20.3 versions prior to 20.3R3-S1; 20.4 versions prior to 20.4R3; 21.1 versions prior to 21.1R2, 21.1R3; 21.2 versions prior to 21.2R1-S1, 21.2R2. This issue can be observed by monitoring the memory utilization of the pkid process via: root@jtac-srx1500-r2003> show system processes extensive | match pki 20931 root 20 0 733M 14352K select 0:00 0.00% pkid which increases over time: root@jtac-srx1500-r2003> show system processes extensive | match pki 22587 root 20 0 901M 181M select 0:03 0.00% pkid
problem types: CWE-401 Improper Release of Memory Before Removing Last Reference
affected:
{
product: Junos OS
vendor: Juniper Networks
versions:
lessThan: 18.3R3-S6, status: affected, version: unspecified, versionType: custom
lessThan: 18.4R2-S9, 18.4R3-S10, status: affected, version: 18.4, versionType: custom
lessThan: 19.1R2-S3, 19.1R3-S7, status: affected, version: 19.1, versionType: custom
lessThan: 19.2R1-S8, 19.2R3-S4, status: affected, version: 19.2, versionType: custom
lessThan: 19.3R3-S4, status: affected, version: 19.3, versionType: custom
lessThan: 19.4R2-S5, 19.4R3-S5, status: affected, version: 19.4, versionType: custom
lessThan: 20.1R3-S1, status: affected, version: 20.1, versionType: custom
lessThan: 20.2R3-S2, status: affected, version: 20.2, versionType: custom
lessThan: 20.3R3-S1, status: affected, version: 20.3, versionType: custom
lessThan: 20.4R3, status: affected, version: 20.4, versionType: custom
lessThan: 21.1R2, 21.1R3, status: affected, version: 21.1, versionType: custom
lessThan: 21.2R1-S1, 21.2R2, status: affected, version: 21.2, 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: 18.3R3-S6, 18.4R2-S9, 18.4R3-S10, 19.1R2-S3, 19.1R3-S7, 19.2R1-S8, 19.2R3-S4, 19.3R3-S4, 19.4R2-S5, 19.4R3-S5, 20.1R3-S1, 20.2R3-S2, 20.3R3-S1, 20.4R3, 21.1R2, 21.1R3, 21.2R1-S1, 21.2R2, 21.3R1, and all subsequent releases.
workarounds: There are no viable workarounds for this issue.