Exfiltration Over Alternative Protocol

Adversaries may steal data by exfiltrating it over a different protocol than that of the existing command and control channel. The data may also be sent to an alternate network location from the main command and control server.

Alternate protocols include FTP, SMTP, HTTP/S, DNS, SMB, or any other network protocol not being used as the main command and control channel. Different protocol channels could also include Web services such as cloud storage. Adversaries may also opt to encrypt and/or obfuscate these alternate channels.

Exfiltration Over Alternative Protocol can be done using various common operating system utilities such as Net/SMB or FTP.[1]

ID: T1048
Sub-techniques:  T1048.001, T1048.002, T1048.003
Tactic: Exfiltration
Platforms: Linux, Windows, macOS
Data Sources: Command: Command Execution, File: File Access, Network Traffic: Network Connection Creation, Network Traffic: Network Traffic Content, Network Traffic: Network Traffic Flow
Requires Network:  Yes
Contributors: Alfredo Abarca
Version: 1.2
Created: 31 May 2017
Last Modified: 28 March 2020

Procedure Examples

ID Name Description
S0503 FrameworkPOS

FrameworkPOS can use DNS tunneling for exfiltration of credit card data.[2]

S0203 Hydraq

Hydraq connects to a predefined domain on port 443 to exfil gathered information.[3]

S0428 PoetRAT

PoetRAT has used a .NET tool named dog.exe to exiltrate information over an e-mail account.[4]


ID Mitigation Description
M1037 Filter Network Traffic

Enforce proxies and use dedicated servers for services such as DNS and only allow those systems to communicate over respective ports/protocols, instead of all systems within a network.

M1031 Network Intrusion Prevention

Network intrusion detection and prevention systems that use network signatures to identify traffic for specific adversary command and control infrastructure and malware can be used to mitigate activity at the network level.

M1030 Network Segmentation

Follow best practices for network firewall configurations to allow only necessary ports and traffic to enter and exit the network.[5]


Analyze network data for uncommon data flows (e.g., a client sending significantly more data than it receives from a server). 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. [6]