| ID | Name |
|---|---|
| T1521.001 | Symmetric Cryptography |
| T1521.002 | Asymmetric Cryptography |
| T1521.003 | SSL Pinning |
Adversaries may employ a known asymmetric encryption algorithm to conceal command and control traffic, rather than relying on any inherent protections provided by a communication protocol. Asymmetric cryptography, also known as public key cryptography, uses a keypair per party: one public that can be freely distributed, and one private that should not be distributed. Due to how asymmetric algorithms work, the sender encrypts data with the receiver’s public key and the receiver decrypts the data with their private key. This ensures that only the intended recipient can read the encrypted data. Common public key encryption algorithms include RSA, ElGamal, and ECDSA.
For efficiency, many protocols (including SSL/TLS) use symmetric cryptography once a connection is established, but use asymmetric cryptography to establish or transmit a key. As such, these protocols are classified as Asymmetric Cryptography.
| ID | Name | Description |
|---|---|---|
| S0529 | CarbonSteal |
CarbonSteal has performed rudimentary SSL certificate validation to verify C2 server authenticity before establishing a SSL connection.[1] |
| S0555 | CHEMISTGAMES |
CHEMISTGAMES has used HTTPS for C2 communication.[2] |
| S0507 | eSurv |
eSurv’s Android version has used public key encryption for C2 communication.[3] |
| S1067 | FluBot |
FluBot has encrypted C2 message bodies with RSA and encoded them in base64.[4] |
| C0054 | Operation Triangulation |
During Operation Triangulation, the threat actors used RSA to encrypt C2 communication.[5] |
| S1055 | SharkBot |
SharkBot has used RSA to encrypt the symmetric encryption key used for C2 messages.[6] |
| S0549 | SilkBean | |
| S1216 | TriangleDB |
TriangleDB has encrypted data using RSA.[5] |
This type of attack technique cannot be easily mitigated with preventive controls since it is based on the abuse of system features.
| ID | Name | Analytic ID | Analytic Description |
|---|---|---|---|
| DET0667 | Detection of Asymmetric Cryptography | AN1762 |
An application generates, imports, or accesses asymmetric keypairs (e.g., RSA/ECC), uses a public key to encrypt outbound data or establish encrypted sessions, and transmits resulting ciphertext in structured communication patterns. Detection correlates keypair lifecycle activity + asymmetric crypto API usage + data transformation + background execution context + network transmission, especially when inconsistent with expected application functionality. |
| AN1763 |
Indirect evidence of asymmetric cryptographic channel usage inferred through key exchange-like network patterns and application background execution behavior, where direct observation of keypair operations is limited. Detection correlates app entitlement posture + background execution + asymmetric handshake patterns + subsequent encrypted communication. |