Cross-source coverage
T1557.002 / ATT&CK
Adversary-in-the-Middle: ARP Cache Poisoning
5 rules across 3 sources.
From MITRE ATT&CK 19.2
Adversaries may poison Address Resolution Protocol (ARP) caches to position themselves between the communication of two or more networked devices. This activity may be used to enable follow-on behaviors such as Network Sniffing or Transmitted Data Manipulation.
The ARP protocol is used to resolve IPv4 addresses to link layer addresses, such as a media access control (MAC) address. Devices in a local network segment communicate with each other by using link layer addresses. If a networked device does not have the link layer address of a particular networked device, it may send out a broadcast ARP request to the local network to translate the IP address to a MAC address. The device with the associated IP address directly replies with its MAC address. The networked device that made the ARP request will then use as well as store that information in its ARP cache.
An adversary may passively wait for an ARP request to poison the ARP cache of the requesting device. The adversary may reply with their MAC address, thus deceiving the victim by making them believe that they are communicating with the intended networked device. For the adversary to poison the ARP cache, their reply must be faster than the one made by the legitimate IP address owner. Adversaries may also send a gratuitous ARP reply that maliciously announces the ownership of a particular IP address to all the devices in the local network segment.
The ARP protocol is stateless and does not require authentication. Therefore, devices may wrongly add or update the MAC address of the IP address in their ARP cache.
Adversaries may use ARP cache poisoning as a means to intercept network traffic. This activity may be used to collect and/or relay data such as credentials, especially those sent over an insecure, unencrypted protocol.
- Tactics
- Credential Access · Collection
- Platforms
- Linux · Windows · macOS
- Telemetry
-
WinEventLog:SysmonWinEventLog:Securityauditd:SYSCALLNSM:Flowmacos:unifiedlog
How MITRE says to detect it DET0387
Detect ARP Cache Poisoning Across Linux, Windows, and macOS
Windows Analytic 1091
Detects anomalous ARP traffic or cache modifications on Windows endpoints that indicate ARP poisoning. Behavioral focus is on multiple IP addresses resolving to a single MAC, or unsolicited ARP replies from unauthorized devices.
WinEventLog:SysmonEventCode=3, 22WinEventLog:SecurityARP cache modification attempts observed through event tracing or security baselines
Linux Analytic 1092
Detects suspicious gratuitous ARP responses or inconsistent IP-to-MAC mappings using auditd and packet capture. Behavioral focus is on unsolicited replies overriding legitimate ARP ownership.
auditd:SYSCALLsetsockopt, ioctl modifying ARP entriesNSM:FlowGratuitous ARP replies with mismatched IP-MAC binding
macOS Analytic 1093
Detects anomalous ARP cache changes and unsolicited ARP broadcasts using unified logs and packet capture. Behavioral detection includes multiple IP addresses mapped to the same MAC address and repeated gratuitous ARP traffic.
macos:unifiedlogARP table updates inconsistent with expected gateway or DHCP lease assignmentsNSM:FlowExcessive gratuitous ARP replies on local subnet
splunk/security_content
3 rules| Detection | Severity | Format |
|---|---|---|
| Detect ARP Poisoning | Undefined | SPL |
| Detect IPv6 Network Infrastructure Threats | Undefined | SPL |
| Detect Port Security Violation | Undefined | SPL |
Wazuh Core Ruleset
1 rule| Detection | Severity | Format |
|---|---|---|
| MS-DHCP: Codes above 50 are used for Rogue Server Detection information. | High | Wazuh XML |
falcosecurity/rules
1 rule| Detection | Severity | Format |
|---|---|---|
| Packet socket created in container | Low | Falco YAML |