Bug 1959397 (CVE-2020-13529)

Summary: CVE-2020-13529 systemd: DHCP FORCERENEW authentication not implemented can cause a system running the DHCP client to have its network reconfigured
Product: [Other] Security Response Reporter: Guilherme de Almeida Suckevicz <gsuckevi>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: unspecifiedCC: acardace, atragler, bdettelb, bgalvani, fedoraproject, fge, filbranden, flepied, kaycoth, lnykryn, lpoetter, lrintel, msekleta, nm-team, rkhan, sparks, ssahani, s, sukulkar, systemd-maint-list, systemd-maint, till, tomckay, vmugicag, yuwatana, zbyszek, zjedrzej
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
An exploitable denial of service vulnerability exists in systemd which does not fully implement RFC3203, as it does not support authentication of FORCERENEW packets. A specially crafted DHCP FORCERENEW packet can cause a system, running the DHCP client, to be vulnerable to a DHCP ACK spoofing attack. An attacker can forge a pair of FORCERENEW and DCHPACK packets to reconfigure the system with arbitrary network settings.
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-11-09 22:21:33 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1962041, 1959398, 1961234, 1961238, 1961239, 1961240, 1961241, 1961251, 1962040, 1966123    
Bug Blocks: 1959399    

Description Guilherme de Almeida Suckevicz 2021-05-11 13:09:58 UTC
An exploitable denial-of-service vulnerability exists in Systemd 245. A specially crafted DHCP FORCERENEW packet can cause a server running the DHCP client to be vulnerable to a DHCP ACK spoofing attack. An attacker can forge a pair of FORCERENEW and DCHP ACK packets to reconfigure the server.

References:
https://talosintelligence.com/vulnerability_reports/TALOS-2020-1142
https://github.com/systemd/systemd/issues/16774

Comment 1 Guilherme de Almeida Suckevicz 2021-05-11 13:10:37 UTC
Created systemd tracking bugs for this issue:

Affects: fedora-all [bug 1959398]

Comment 2 Riccardo Schirone 2021-05-17 14:43:15 UTC
DHCP reconfigure extension RFC: https://datatracker.ietf.org/doc/html/rfc3203

Comment 3 Riccardo Schirone 2021-05-17 14:43:57 UTC
Authentication for DHCP Messages RFC: https://datatracker.ietf.org/doc/html/rfc3118

Comment 8 Riccardo Schirone 2021-05-17 16:06:19 UTC
systemd in upstream version v216 introduced partial support for DHCP FORCERENEW (RFC 3203) with [1]. However authentication of FORCERENEW packets is not implemented, thus it is possible for an adjacent attacker on the local network to forge such packets and trick a system into re-accepting DHCPACK packets, which include all the network settings.

[1] https://github.com/systemd/systemd/commit/615c1467c81411bf1d19fd7092e8995b5ebadc13

Comment 9 Riccardo Schirone 2021-05-17 16:08:50 UTC
There is no available fix at this time for this issue, as upstream is considering this issue as a RFE rather than a vulnerability [2].

[2] https://bugzilla.redhat.com/show_bug.cgi?id=1959398#c2

Comment 12 Riccardo Schirone 2021-06-24 09:06:08 UTC
Temporary fix upstream, at least until RFC6704 (Forcerenew Nonce Authentication) is implemented:
https://github.com/systemd/systemd/commit/6222acc2b59309ac6187450d9e65eceb1b7cc1c5

Comment 14 errata-xmlrpc 2021-11-09 18:28:27 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 8

Via RHSA-2021:4361 https://access.redhat.com/errata/RHSA-2021:4361

Comment 15 Product Security DevOps Team 2021-11-09 22:21:30 UTC
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):

https://access.redhat.com/security/cve/cve-2020-13529