The sub-techniques beta is now live! Read the release blog post for more info.

Data Encoding

Command and control (C2) information is encoded using a standard data encoding system. Use of data encoding may be to adhere to existing protocol specifications and includes use of ASCII, Unicode, Base64, MIME, UTF-8, or other binary-to-text and character encoding systems. [1] [2] Some data encoding systems may also result in data compression, such as gzip.

ID: T1132
Tactic: Command And Control
Platform: Linux, macOS, Windows
Permissions Required: User
Data Sources: Packet capture, Process use of network, Process monitoring, Network protocol analysis
Requires Network:  Yes
Contributors: Itzik Kotler, SafeBreach
Version: 1.0
Created: 31 May 2017
Last Modified: 14 June 2019

Procedure Examples

Name Description

C2 traffic from ADVSTORESHELL is encrypted, then encoded with Base64 encoding.[14]


An APT19 HTTP malware variant used Base64 to encode communications to the C2 server.[38]


APT33 has used base64 to encode command and control traffic.[41]


Astaroth encodes data using Base64 before sending it to the C2 server.[28]

AutoIt backdoor

AutoIt backdoor has sent a C2 response that was base64-encoded.[15]


BabyShark has encoded data using certutil.[37]


BADNEWS encodes C2 traffic with base64.[15][18][19]


Bankshot encodes commands from the control server using a range of characters and gzip.[23]


Several BRONZE BUTLER tools encode data with base64 when posting it to a C2 server.[25]


BS2005 uses Base64 encoding for communication in the message body of an HTTP request.[4]


CORESHELL C2 messages are Base64-encoded.[20]


Daserf uses custom base64 encoding to obfuscate HTTP traffic.[25]


Denis encodes the data sent to the server in Base64.[26]


Dipsind encodes C2 traffic with base64.[9]


Ebury has encoded C2 traffic. [30]


Elise exfiltrates data using cookie values that are Base64-encoded.[3]


Fysbis can use Base64 to encode its C2 traffic.[35]


For C2 over HTTP, Helminth encodes data with base64 and sends it via the "Cookie" field of HTTP requests. For C2 over DNS, Helminth converts ASCII characters into their hexadecimal values and sends the data in cleartext.[22]


A JHUHUGIT variant encodes C2 POST data base64.[16]


Kazuar encodes communications to the C2 server in Base64.[13]

Lazarus Group

A Lazarus Group malware sample encodes data with base64.[39]

Linux Rabbit

Linux Rabbit sends the payload from the C2 server as an encoded URL parameter.[27]


Mis-Type uses Base64 encoding for C2 traffic.[6]


Misdat network traffic is Base64-encoded plaintext.[6]


More_eggs has used basE91 encoding, along with encryption, for C2 communication.[36]


njRAT uses Base64 encoding for C2 traffic.[32]


OceanSalt can encode data with a NOT operation before sending the data to the control server.[5]


Octopus encodes C2 communications in Base64.[17]


OopsIE encodes data in hexadecimal format over the C2 channel.[10]


Patchwork used Base64 to encode C2 traffic.[40]


Responses from the Pisloader C2 server are base32-encoded.[7]


POWERSTATS encoded C2 traffic with base64.[24]


POWRUNER can use base64 encoded C2 communications.[21]


Prikormka encodes C2 traffic with Base64.[8]

Revenge RAT

Revenge RAT uses Base64 to encode information sent to the C2 server.[31]


S-Type uses Base64 encoding for C2 traffic.[6]


SeaDuke C2 traffic is base64-encoded.[11]


SpeakUp encodes C&C communication using Base64.[29]


Ursnif has used encoded data in HTTP URLs for C2. [33]


Volgmer encodes files before exfiltration.[12]


Zebrocy has used URL/Percent Encoding on data exfiltrated via HTTP POST requests.[34]


Mitigation Description
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 obfuscation technique 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.


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. [42]


  1. Wikipedia. (2016, December 26). Binary-to-text encoding. Retrieved March 1, 2017.
  2. Wikipedia. (2017, February 19). Character Encoding. Retrieved March 1, 2017.
  3. Falcone, R., et al.. (2015, June 16). Operation Lotus Blossom. Retrieved February 15, 2016.
  4. Villeneuve, N., Bennett, J. T., Moran, N., Haq, T., Scott, M., & Geers, K. (2014). OPERATION “KE3CHANG”: Targeted Attacks Against Ministries of Foreign Affairs. Retrieved November 12, 2014.
  5. Sherstobitoff, R., Malhotra, A. (2018, October 18). ‘Operation Oceansalt’ Attacks South Korea, U.S., and Canada With Source Code From Chinese Hacker Group. Retrieved November 30, 2018.
  6. Gross, J. (2016, February 23). Operation Dust Storm. Retrieved September 19, 2017.
  7. Grunzweig, J., et al. (2016, May 24). New Wekby Attacks Use DNS Requests As Command and Control Mechanism. Retrieved August 17, 2016.
  8. Cherepanov, A.. (2016, May 17). Operation Groundbait: Analysis of a surveillance toolkit. Retrieved May 18, 2016.
  9. Windows Defender Advanced Threat Hunting Team. (2016, April 29). PLATINUM: Targeted attacks in South and Southeast Asia. Retrieved February 15, 2018.
  10. Lee, B., Falcone, R. (2018, February 23). OopsIE! OilRig Uses ThreeDollars to Deliver New Trojan. Retrieved July 16, 2018.
  11. Grunzweig, J.. (2015, July 14). Unit 42 Technical Analysis: Seaduke. Retrieved August 3, 2016.
  12. US-CERT. (2017, November 01). Malware Analysis Report (MAR) - 10135536-D. Retrieved July 16, 2018.
  13. Levene, B, et al. (2017, May 03). Kazuar: Multiplatform Espionage Backdoor with API Access. Retrieved July 17, 2018.
  14. Kaspersky Lab's Global Research and Analysis Team. (2015, December 4). Sofacy APT hits high profile targets with updated toolset. Retrieved December 10, 2015.
  15. Settle, A., et al. (2016, August 8). MONSOON - Analysis Of An APT Campaign. Retrieved September 22, 2016.
  16. Unit 42. (2017, December 15). Unit 42 Playbook Viewer. Retrieved December 20, 2017.
  17. Kaspersky Lab's Global Research & Analysis Team. (2018, October 15). Octopus-infested seas of Central Asia. Retrieved November 14, 2018.
  18. Levene, B. et al.. (2018, March 7). Patchwork Continues to Deliver BADNEWS to the Indian Subcontinent. Retrieved March 31, 2018.
  19. Lunghi, D., et al. (2017, December). Untangling the Patchwork Cyberespionage Group. Retrieved July 10, 2018.
  20. FireEye. (2015). APT28: A WINDOW INTO RUSSIA’S CYBER ESPIONAGE OPERATIONS?. Retrieved August 19, 2015.
  21. Sardiwal, M, et al. (2017, December 7). New Targeted Attack in the Middle East by APT34, a Suspected Iranian Threat Group, Using CVE-2017-11882 Exploit. Retrieved December 20, 2017.
  1. Falcone, R. and Lee, B.. (2016, May 26). The OilRig Campaign: Attacks on Saudi Arabian Organizations Deliver Helminth Backdoor. Retrieved May 3, 2017.
  2. Sherstobitoff, R. (2018, March 08). Hidden Cobra Targets Turkish Financial Sector With New Bankshot Implant. Retrieved May 18, 2018.
  3. Lancaster, T.. (2017, November 14). Muddying the Water: Targeted Attacks in the Middle East. Retrieved March 15, 2018.
  4. Counter Threat Unit Research Team. (2017, October 12). BRONZE BUTLER Targets Japanese Enterprises. Retrieved January 4, 2018.
  5. Dahan, A. (2017). Operation Cobalt Kitty. Retrieved December 27, 2018.
  6. Anomali Labs. (2018, December 6). Pulling Linux Rabbit/Rabbot Malware Out of a Hat. Retrieved March 4, 2019.
  7. Doaty, J., Garrett, P.. (2018, September 10). We’re Seeing a Resurgence of the Demonic Astaroth WMIC Trojan. Retrieved April 17, 2019.
  8. Check Point Research. (2019, February 4). SpeakUp: A New Undetected Backdoor Linux Trojan. Retrieved April 17, 2019.
  9. M.Léveillé, M.. (2014, February 21). An In-depth Analysis of Linux/Ebury. Retrieved April 19, 2019.
  10. Livelli, K, et al. (2018, November 12). Operation Shaheen. Retrieved May 1, 2019.
  11. Fidelis Cybersecurity. (2013, June 28). Fidelis Threat Advisory #1009: "njRAT" Uncovered. Retrieved June 4, 2019.
  12. Proofpoint Staff. (2016, August 25). Nightmare on Tor Street: Ursnif variant Dreambot adds Tor functionality. Retrieved June 5, 2019.
  13. Accenture Security. (2018, November 29). SNAKEMACKEREL. Retrieved April 15, 2019.
  14. Doctor Web. (2014, November 21). Linux.BackDoor.Fysbis.1. Retrieved December 7, 2017.
  15. Villadsen, O.. (2019, August 29). More_eggs, Anyone? Threat Actor ITG08 Strikes Again. Retrieved September 16, 2019.
  16. Unit 42. (2019, February 22). New BabyShark Malware Targets U.S. National Security Think Tanks. Retrieved October 7, 2019.
  17. Grunzweig, J., Lee, B. (2016, January 22). New Attacks Linked to C0d0so0 Group. Retrieved August 2, 2018.
  18. Sherstobitoff, R. (2018, February 12). Lazarus Resurfaces, Targets Global Banks and Bitcoin Users. Retrieved February 19, 2018.
  19. Cymmetria. (2016). Unveiling Patchwork - The Copy-Paste APT. Retrieved August 3, 2016.
  20. Ackerman, G., et al. (2018, December 21). OVERRULED: Containing a Potentially Destructive Adversary. Retrieved January 17, 2019.
  21. Gardiner, J., Cova, M., Nagaraja, S. (2014, February). Command & Control Understanding, Denying and Detecting. Retrieved April 20, 2016.