T1557.003 DHCP Spoofing
Sub-technique of: T1557
High-Level Description
Adversaries may redirect network traffic to adversary-owned systems by spoofing Dynamic Host Configuration Protocol (DHCP) traffic and acting as a malicious DHCP server on the victim network. By achieving the adversary-in-the-middle (AiTM) position, adversaries may collect network communications, including passed credentials, especially those sent over insecure, unencrypted protocols. This may also enable follow-on behaviors such as Network Sniffing or Transmitted Data Manipulation.
DHCP is based on a client-server model and has two functionalities: a protocol for providing network configuration settings from a DHCP server to a client and a mechanism for allocating network addresses to clients. The typical server-client interaction is as follows:
The client broadcasts a
DISCOVERmessage.The server responds with an
OFFERmessage, which includes an available network address.The client broadcasts a
REQUESTmessage, which includes the network address offered.The server acknowledges with an
ACKmessage and the client receives the network configuration parameters.
Adversaries may spoof as a rogue DHCP server on the victim network, from which legitimate hosts may receive malicious network configurations. For example, malware can act as a DHCP server and provide adversary-owned DNS servers to the victimized computers. Through the malicious network configurations, an adversary may achieve the AiTM position, route client traffic through adversary-controlled systems, and collect information from the client network.
DHCPv6 clients can receive network configuration information without being assigned an IP address by sending a INFORMATION-REQUEST (code 11) message to the All_DHCP_Relay_Agents_and_Servers multicast address. Adversaries may use their rogue DHCP server to respond to this request message with malicious network configurations.
Rather than establishing an AiTM position, adversaries may also abuse DHCP spoofing to perform a DHCP exhaustion attack (i.e, Service Exhaustion Flood) by generating many broadcast DISCOVER messages to exhaust a network’s DHCP allocation pool.
Kill Chain Phase
- Credential Access (TA0006)
- Collection (TA0009)
Platforms: Linux, Windows, macOS
What to Check
- Identify if DHCP Spoofing technique is applicable to target environment
- Check Linux systems for indicators of DHCP Spoofing
- Check Windows systems for indicators of DHCP Spoofing
- Check macOS systems for indicators of DHCP Spoofing
- Verify mitigations are bypassed or absent (2 known mitigations)
- Assess detection coverage (1 detection strategies)
How to Test
Manual Testing
Identify Attack Surface: Determine if the target environment is susceptible to DHCP Spoofing by examining the target platforms (Linux, Windows, macOS).
Assess Existing Defenses: Review whether mitigations for T1557.003 are in place. If defenses are absent or misconfigured, this technique may be exploitable.
Execute Test: Use tools and methods described in the MITRE ATT&CK page and external references below.
Note: No Atomic Red Team tests available for this technique. See Atomic Red Team GitHub for updates.
Remediation Guide
M1037 Filter Network Traffic
Consider filtering DHCP traffic on ports 67 and 68 to/from unknown or untrusted DHCP servers. Additionally, port security may also be enabled on layer switches. Furthermore, consider enabling DHCP snooping on layer 2 switches as it will prevent DHCP spoofing attacks and starvation attacks. Consider tracking available IP addresses through a script or a tool.
Additionally, block DHCPv6 traffic and incoming router advertisements, especially if IPv6 is not commonly used in the network.
M1031 Network Intrusion Prevention
Network intrusion detection and prevention systems that can identify traffic patterns indicative of AiTM activity can be used to mitigate activity at the network level.
Detection
Detect DHCP Spoofing Across Linux, Windows, and macOS
Risk Assessment
| Finding | Severity | Impact |
|---|---|---|
| DHCP Spoofing technique applicable | High | Credential Access |
CWE Categories
| CWE ID | Title |
|---|---|
| CWE-522 | Insufficiently Protected Credentials |