ID | Name |
---|---|
T1560.001 | Archive via Utility |
T1560.002 | Archive via Library |
T1560.003 | Archive via Custom Method |
An adversary may compress or encrypt data that is collected prior to exfiltration using a custom method. Adversaries may choose to use custom archival methods, such as encryption with XOR or stream ciphers implemented with no external library or utility references. Custom implementations of well-known compression algorithms have also been used.[1]
ID | Name | Description |
---|---|---|
S0045 | ADVSTORESHELL |
ADVSTORESHELL compresses output data generated by command execution with a custom implementation of the Lempel–Ziv–Welch (LZW) algorithm.[1] |
S0092 | Agent.btz |
Agent.btz saves system information into an XML file that is then XOR-encoded.[2] |
S0438 | Attor |
Attor encrypts collected data with a custom implementation of Blowfish and RSA ciphers.[3] |
S0657 | BLUELIGHT | |
G0052 | CopyKittens |
CopyKittens encrypts data with a substitute cipher prior to exfiltration.[5] |
S0038 | Duqu |
Modules can be pushed to and executed by Duqu that copy data to a staging area, compress it, and XOR encrypt it.[6] |
G0037 | FIN6 |
FIN6 has encoded data gathered from the victim with a simple substitution cipher and single-byte XOR using the 0xAA key, and Base64 with character permutation.[7][8] |
S0036 | FLASHFLOOD |
FLASHFLOOD employs the same encoding scheme as SPACESHIP for data it stages. Data is compressed with zlib, and bytes are rotated four times before being XOR'ed with 0x23.[9] |
S0503 | FrameworkPOS |
FrameworkPOS can XOR credit card information before exfiltration.[10] |
S0391 | HAWKBALL |
HAWKBALL has encrypted data with XOR before sending it over the C2 channel.[11] |
S0260 | InvisiMole |
InvisiMole uses a variation of the XOR cipher to encrypt files before exfiltration.[12] |
G0094 | Kimsuky | |
G0032 | Lazarus Group |
A Lazarus Group malware sample encrypts data using a simple byte based XOR operation prior to exfiltration.[14][15][16][17] |
S0409 | Machete |
Machete's collected data is encrypted with AES before exfiltration.[18] |
S0443 | MESSAGETAP |
MESSAGETAP has XOR-encrypted and stored contents of SMS messages that matched its target list. [19] |
G0129 | Mustang Panda |
Mustang Panda has encrypted documents with RC4 prior to exfiltration.[20] |
S0198 | NETWIRE |
NETWIRE has used a custom encryption algorithm to encrypt collected data.[21] |
S0439 | Okrum |
Okrum has used a custom implementation of AES encryption to encrypt collected data.[22] |
S0264 | OopsIE |
OopsIE compresses collected files with a simple character replacement scheme before sending them to its C2 server.[23] |
S0352 | OSX_OCEANLOTUS.D |
OSX_OCEANLOTUS.D scrambles and encrypts data using AES256 before sending it to the C2 server.[24][25] |
S0072 | OwaAuth |
OwaAuth DES-encrypts captured credentials using the key 12345678 before writing the credentials to a log file.[26] |
S0458 | Ramsay |
Ramsay can store collected documents in a custom container after encrypting and compressing them using RC4 and WinRAR.[27] |
S0169 | RawPOS |
RawPOS encodes credit card data it collected from the victim with XOR.[28][29][30] |
S0172 | Reaver |
Reaver encrypts collected data with an incremental XOR key prior to exfiltration.[31] |
S0258 | RGDoor |
RGDoor encrypts files with XOR before sending them back to the C2 server.[32] |
S0448 | Rising Sun |
Rising Sun can archive data using RC4 encryption and Base64 encoding prior to exfiltration.[33] |
S0035 | SPACESHIP |
Data SPACESHIP copies to the staging area is compressed with zlib. Bytes are rotated by four positions and XOR'ed with 0x23.[9] |
S0491 | StrongPity |
StrongPity can compress and encrypt archived files into multiple .sft files with a repeated xor encryption scheme.[34][35] |
S0603 | Stuxnet |
Stuxnet encrypts exfiltrated data via C2 with static 31-byte long XOR keys.[36] |
S0098 | T9000 |
T9000 encrypts collected data using a single byte XOR key.[37] |
This type of attack technique cannot be easily mitigated with preventive controls since it is based on the abuse of system features.
ID | Data Source | Data Component |
---|---|---|
DS0022 | File | File Creation |
DS0012 | Script | Script Execution |
Custom archival methods can be very difficult to detect, since many of them use standard programming language concepts, such as bitwise operations.