Adversary-in-the-Middle

Adversaries may attempt to position themselves between two or more networked devices using an adversary-in-the-middle (AiTM) technique to support follow-on behaviors such as Network Sniffing, Transmitted Data Manipulation, or replay attacks (Exploitation for Credential Access). By abusing features of common networking protocols that can determine the flow of network traffic (e.g. ARP, DNS, LLMNR, etc.), adversaries may force a device to communicate through an adversary controlled system so they can collect information or perform additional actions.[1]

For example, adversaries may manipulate victim DNS settings to enable other malicious activities such as preventing/redirecting users from accessing legitimate sites and/or pushing additional malware.[2][3][4] Adversaries may also manipulate DNS and leverage their position in order to intercept user credentials and session cookies.[5] Downgrade Attacks can also be used to establish an AiTM position, such as by negotiating a less secure, deprecated, or weaker version of communication protocol (SSL/TLS) or encryption algorithm.[6][7][8]

Adversaries may also leverage the AiTM position to attempt to monitor and/or modify traffic, such as in Transmitted Data Manipulation. Adversaries can setup a position similar to AiTM to prevent traffic from flowing to the appropriate destination, potentially to Impair Defenses and/or in support of a Network Denial of Service.

ID: T1557
Sub-techniques:  T1557.001, T1557.002, T1557.003
Platforms: Linux, Network, Windows, macOS
Contributors: Daniil Yugoslavskiy, @yugoslavskiy, Atomic Threat Coverage project; Mayuresh Dani, Qualys; NEC
Version: 2.3
Created: 11 February 2020
Last Modified: 27 September 2023

Procedure Examples

ID Name Description
S0281 Dok

Dok proxies web traffic to potentially monitor and alter victim HTTP(S) traffic.[9][10]

G0094 Kimsuky

Kimsuky has used modified versions of PHProxy to examine web traffic between the victim and the accessed website.[11]

Mitigations

ID Mitigation Description
M1042 Disable or Remove Feature or Program

Disable legacy network protocols that may be used to intercept network traffic if applicable, especially those that are not needed within an environment.

M1041 Encrypt Sensitive Information

Ensure that all wired and/or wireless traffic is encrypted appropriately. Use best practices for authentication protocols, such as Kerberos, and ensure web traffic that may contain credentials is protected by SSL/TLS.

M1037 Filter Network Traffic

Use network appliances and host-based security software to block network traffic that is not necessary within the environment, such as legacy protocols that may be leveraged for AiTM conditions.

M1035 Limit Access to Resource Over Network

Limit access to network infrastructure and resources that can be used to reshape traffic or otherwise produce AiTM conditions.

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.

M1030 Network Segmentation

Network segmentation can be used to isolate infrastructure components that do not require broad network access. This may mitigate, or at least alleviate, the scope of AiTM activity.

M1017 User Training

Train users to be suspicious about certificate errors. Adversaries may use their own certificates in an attempt to intercept HTTPS traffic. Certificate errors may arise when the application’s certificate does not match the one expected by the host.

Detection

ID Data Source Data Component Detects
DS0015 Application Log Application Log Content

Monitor application logs for changes to settings and other events associated with network protocols and other services commonly abused for AiTM.[12]

DS0029 Network Traffic Network Traffic Content

Monitor network traffic for anomalies associated with known AiTM behavior.

Network Traffic Flow

Monitor for network traffic originating from unknown/unexpected hardware devices. Local network traffic metadata (such as source MAC addressing) as well as usage of network management protocols such as DHCP may be helpful in identifying hardware.

DS0019 Service Service Creation

Monitor for newly constructed services/daemons through Windows event logs for event IDs 4697 and 7045. Data and events should not be viewed in isolation, but as part of a chain of behavior that could lead to other activities, such as remote logins or process creation events.

DS0024 Windows Registry Windows Registry Key Modification

Monitor HKLM\Software\Policies\Microsoft\Windows NT\DNSClient for changes to the "EnableMulticast" DWORD value. A value of "0" indicates LLMNR is disabled.

References