CVE-2021-25217: A buffer overrun in lease file parsing code can be used to exploit a common vulnerability shared by dhcpd and dhclient

Published May 21, 2021
·
Updated

A flaw was found in the Dynamic Host Configuration Protocol (DHCP). There is a discrepancy between the code that handles encapsulated option information in leases transmitted "on the wire" and the code which reads and parses lease information after it has been written to disk storage. This flaw allows an attacker to deliberately cause a situation where dhcpd while running in DHCPv4 or DHCPv6 mode, or the dhclient attempts to read a stored lease that contains option information, to trigger a stack-based buffer overflow in the option parsing code for colon-separated hex digits values. The highest threat from this vulnerability is to data confidentiality and integrity as well as service availability.

Other sources

In ISC DHCP 4.1-ESV-R1 -> 4.1-ESV-R16, ISC DHCP 4.4.0 -> 4.4.2 (Other branches of ISC DHCP (i.e., releases in the 4.0.x series or lower and releases in the 4.3.x series) are beyond their End-of-Life (EOL) and no longer supported by ISC. From inspection it is clear that the defect is also present in releases from those series, but they have not been officially tested for the vulnerability), The outcome of encountering the defect while reading a lease that will trigger it varies, according to: the component being affected (i.e., dhclient or dhcpd) whether the package was built as a 32-bit or 64-bit binary whether the compiler flag -fstack-protection-strong was used when compiling In dhclient, ISC has not successfully reproduced the error on a 64-bit system. However, on a 32-bit system it is possible to cause dhclient to crash when reading an improper lease, which could cause network connectivity problems for an affected system due to the absence of a running DHCP client process. In dhcpd, when run in DHCPv4 or DHCPv6 mode: if the dhcpd server binary was built for a 32-bit architecture AND the -fstack-protection-strong flag was specified to the compiler, dhcpd may exit while parsing a lease file containing an objectionable lease, resulting in lack of service to clients. Additionally, the offending lease and the lease immediately following it in the lease database may be improperly deleted. if the dhcpd server binary was built for a 64-bit architecture OR if the -fstack-protection-strong compiler flag was NOT specified, the crash will not occur, but it is possible for the offending lease and the lease which immediately followed it to be improperly deleted.

Program code used by the ISC DHCP package to read and parse stored leases has a defect that can be exploited by an attacker to cause one of several undesirable outcomes, depending on the component attacked and the way in which it was compiled.

Because of a discrepancy between the code which handles encapsulated option information in leases transmitted "on the wire" and the code which reads and parses lease information after it has been written to disk storage, it is potentially possible for an attacker to deliberately cause a situation where:

- dhcpd, while running in DHCPv4 or DHCPv6 mode, or - dhclient, the ISC DHCP client implementation

will attempt to read a stored lease that contains option information which will trigger a bug in the option parsing code.

Red Hat

Affected Software

75 affected componentsFixes available
redhat/dhcp<12:4.1.1-64.P1.el6_10
12:4.1.1-64.P1.el6_10
redhat/dhcp<12:4.2.5-83.el7_9.1
12:4.2.5-83.el7_9.1
redhat/dhcp<12:4.2.5-42.el7_2.2
12:4.2.5-42.el7_2.2
redhat/dhcp<12:4.2.5-47.el7_3.2
12:4.2.5-47.el7_3.2
redhat/dhcp<12:4.2.5-58.el7_4.5
12:4.2.5-58.el7_4.5
redhat/dhcp<12:4.2.5-69.el7_6.1
12:4.2.5-69.el7_6.1
redhat/dhcp<12:4.2.5-77.el7_7.1
12:4.2.5-77.el7_7.1
redhat/dhcp<12:4.3.6-44.el8_4.1
12:4.3.6-44.el8_4.1
redhat/dhcp<12:4.3.6-34.el8_1.2
12:4.3.6-34.el8_1.2
redhat/dhcp<12:4.3.6-40.el8_2.2
12:4.3.6-40.el8_2.2
redhat/cri-o<0:1.20.3-6.rhaos4.7.git0d0f863.el8
0:1.20.3-6.rhaos4.7.git0d0f863.el8
redhat/dhcp<12:4.3.6-41.el8_3.1
12:4.3.6-41.el8_3.1
redhat/openshift-clients<0:4.7.0-202106252127.p0.git.8b4b094.el7
0:4.7.0-202106252127.p0.git.8b4b094.el7
redhat/openshift-kuryr<0:4.7.0-202106232224.p0.git.c7654fb.el8
0:4.7.0-202106232224.p0.git.c7654fb.el8
redhat/polkit<0:0.115-11.el8_3.2
0:0.115-11.el8_3.2
redhat/redhat-virtualization-host<0:4.3.16-20210615.0.el7_9
0:4.3.16-20210615.0.el7_9
redhat/dhcp<4.4.2
4.4.2
redhat/dhcp<4.1
4.1
ISC DHCP>=4.4.0<=4.4.2
ISC DHCP=4.1-esv-r1
ISC DHCP=4.1-esv-r10
ISC DHCP=4.1-esv-r10_b1
ISC DHCP=4.1-esv-r10_rc1
ISC DHCP=4.1-esv-r10b1
ISC DHCP=4.1-esv-r10rc1
ISC DHCP=4.1-esv-r11
ISC DHCP=4.1-esv-r11_b1
ISC DHCP=4.1-esv-r11_rc1
ISC DHCP=4.1-esv-r11_rc2
ISC DHCP=4.1-esv-r11b1
ISC DHCP=4.1-esv-r11rc1
ISC DHCP=4.1-esv-r11rc2
ISC DHCP=4.1-esv-r12
ISC DHCP=4.1-esv-r12-p1
ISC DHCP=4.1-esv-r12_b1
ISC DHCP=4.1-esv-r12_p1
ISC DHCP=4.1-esv-r12b1
ISC DHCP=4.1-esv-r13
ISC DHCP=4.1-esv-r13_b1
ISC DHCP=4.1-esv-r13b1
ISC DHCP=4.1-esv-r14
ISC DHCP=4.1-esv-r14_b1
ISC DHCP=4.1-esv-r14b1
ISC DHCP=4.1-esv-r15
ISC DHCP=4.1-esv-r15-p1
ISC DHCP=4.1-esv-r15_b1
ISC DHCP=4.1-esv-r16
Fedoraproject Fedora=33
Fedoraproject Fedora=34
Debian Debian Linux=9.0
Siemens Ruggedcom Rox Rx1400 Firmware<2.15.0
Siemens RUGGEDCOM ROX RX1400
Siemens Ruggedcom Rox Rx1500 Firmware>=2.3.0<2.15.0
Siemens RUGGEDCOM ROX RX1500
Siemens Ruggedcom Rox Rx1501 Firmware>=2.3.0<2.15.0
Siemens RUGGEDCOM ROX RX1501
Siemens Ruggedcom Rox Rx1510 Firmware>=2.3.0<2.15.0
Siemens RUGGEDCOM ROX RX1510
Siemens Ruggedcom Rox Rx1511 Firmware>=2.3.0<2.15.0
Siemens RUGGEDCOM ROX RX1511
Siemens Ruggedcom Rox Rx1512 Firmware>=2.3.0<2.15.0
Siemens RUGGEDCOM ROX RX1512
Siemens Ruggedcom Rox Rx1524 Firmware<2.15.0
Siemens Ruggedcom Rox Rx1524
Siemens Ruggedcom Rox Rx1536 Firmware<2.15.0
Siemens Ruggedcom Rox Rx1536
Siemens Ruggedcom Rox Rx5000 Firmware>=2.3.0<2.15.0
Siemens Ruggedcom Rox Rx5000
Siemens Ruggedcom Rox Mx5000 Firmware>=2.3.0<2.15.0
Siemens RUGGEDCOM ROX MX5000
NetApp ONTAP Select Deploy administration utility
NetApp Solidfire \& Hci Management Node
Siemens Sinec Ins<1.0
Siemens Sinec Ins=1.0
Siemens Sinec Ins=1.0-sp1

Remediation

Information

Upgrade to the patched release most closely related to your current version of ISC DHCP: ISC DHCP 4.1-ESV-R16-P1 ISC DHCP 4.4.2-P1

Event History

May 26, 2021
CVE Published
12:00 AM
CVE Published
via MITRE·10:10 PM
Data Sourced
via MITRE·10:10 PM
RemedyDescriptionSeverityWeakness
Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is the severity of CVE-2021-25217?

CVE-2021-25217 is classified as a moderate severity vulnerability.

2

How do I fix CVE-2021-25217?

To mitigate CVE-2021-25217, upgrade the DHCP package to the appropriate versions specified in the advisory.

3

Which systems are affected by CVE-2021-25217?

CVE-2021-25217 affects multiple versions of the ISC DHCP server and related software packages.

4

Can CVE-2021-25217 lead to data loss?

Yes, CVE-2021-25217 can potentially lead to data loss due to discrepancies in the handling of lease information.

5

Is CVE-2021-25217 exploitable remotely?

CVE-2021-25217 can be exploited remotely, allowing an attacker to manipulate DHCP lease information.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203