Proxy: Internal Proxy

Adversaries may use an internal proxy to direct command and control traffic between two or more systems in a compromised environment. Many tools exist that enable traffic redirection through proxies or port redirection, including HTRAN, ZXProxy, and ZXPortMap. [1] Adversaries use internal proxies to manage command and control communications inside a compromised environment, to reduce the number of simultaneous outbound network connections, to provide resiliency in the face of connection loss, or to ride over existing trusted communications paths between infected systems to avoid suspicion. Internal proxy connections may use common peer-to-peer (p2p) networking protocols, such as SMB, to better blend in with the environment.

By using a compromised internal system as a proxy, adversaries may conceal the true destination of C2 traffic while reducing the need for numerous connections to external systems.

ID: T1090.001
Sub-technique of:  T1090
Platforms: Linux, Windows, macOS
Data Sources: Network Traffic: Network Connection Creation, Network Traffic: Network Traffic Content, Network Traffic: Network Traffic Flow
Version: 1.0
Created: 14 March 2020
Last Modified: 15 March 2020

Procedure Examples

ID Name Description
G0016 APT29

APT29 configured at least one instance of Cobalt Strike to use a network pipe over SMB during the 2020 SolarWinds intrusion.[2]

G0087 APT39

APT39 used custom tools to create SOCK5 and custom protocol proxies between infected hosts. [3][4]

S0031 BACKSPACE

The "ZJ" variant of BACKSPACE allows "ZJ link" infections with Internet access to relay traffic from "ZJ listen" to a command server.[5]

S0023 CHOPSTICK

CHOPSTICK used a proxy server between victims and the C2 server.[6]

S0154 Cobalt Strike

Cobalt Strike can be configured to have commands relayed over a peer-to-peer network of infected hosts. This can be used to limit the number of egress points, or provide access to a host without direct internet access.[7]

S0502 Drovorub

Drovorub can use a port forwarding rule on its agent module to relay network traffic through the client module to a remote host on the same network.[8]

S0038 Duqu

Duqu can be configured to have commands relayed over a peer-to-peer network of infected hosts if some of the hosts do not have Internet access.[9]

S0512 FatDuke

FatDuke can used pipes to connect machines with restricted internet access to remote machines via other infected hosts.[10]

G0126 Higaisa

Higaisa discovered system proxy settings and used them if available.[11]

S0009 Hikit

Hikit supports peer connections.[12]

S0260 InvisiMole

InvisiMole can function as a proxy to create a server that relays communication between the client and C&C server, or between two clients.[13]

S0265 Kazuar

Kazuar has used internal nodes on the compromised network for C2 communications.[14]

S0051 MiniDuke

MiniDuke can can use a named pipe to forward communications from one compromised machine with internet access to other compromised machines.[10]

G0116 Operation Wocao

Operation Wocao can proxy traffic through multiple infected systems.[15]

S0556 Pay2Key

Pay2Key has designated machines in the compromised network to serve as reverse proxy pivot points to channel communications with C2.[16][17]

G0041 Strider

Strider has used local servers with both local network and Internet access to act as internal proxy nodes to exfiltrate data from other parts of the network without direct Internet access.[18]

Mitigations

ID Mitigation Description
M1031 Network Intrusion Prevention

Network intrusion detection and prevention systems that use network signatures to identify traffic for specific adversary malware can be used to mitigate activity at the network level. Signatures are often for unique indicators within protocols and may be based on the specific C2 protocol used by a particular adversary or tool, and will likely be different across various malware families and versions. Adversaries will likely change tool C2 signatures over time or construct protocols in such a way as to avoid detection by common defensive tools.[19]

Detection

Analyze network data for uncommon data flows between clients that should not or often do not communicate with one another. Processes utilizing the network that do not normally have network communication or have never been seen before are suspicious. Analyze packet contents to detect communications that do not follow the expected protocol behavior for the port that is being used.[19]

References