APT29 is threat group that has been attributed to Russia's Foreign Intelligence Service (SVR).[1][2] They have operated since at least 2008, often targeting government networks in Europe and NATO member countries, research institutes, and think tanks. APT29 reportedly compromised the Democratic National Committee starting in the summer of 2015.[3][4][5][6]
In April 2021, the US and UK governments attributed the SolarWinds supply chain compromise cyber operation to the SVR; public statements included citations to APT29, Cozy Bear, and The Dukes.[7][8] Victims of this campaign included government, consulting, technology, telecom, and other organizations in North America, Europe, Asia, and the Middle East. Industry reporting referred to the actors involved in this campaign as UNC2452, NOBELIUM, StellarParticle, and Dark Halo.[9][10][11][12][13]
Name | Description |
---|---|
NobleBaron | |
Dark Halo | |
StellarParticle | |
NOBELIUM | |
UNC2452 | |
YTTRIUM | |
The Dukes | |
Cozy Bear | |
CozyDuke |
Domain | ID | Name | Use | |
---|---|---|---|---|
Enterprise | T1548 | .002 | Abuse Elevation Control Mechanism: Bypass User Account Control | |
Enterprise | T1087 | Account Discovery |
APT29 obtained a list of users and their roles from an Exchange server using |
|
Enterprise | T1098 | .001 | Account Manipulation: Additional Cloud Credentials |
APT29 has added credentials to OAuth Applications and Service Principals.[22] |
.002 | Account Manipulation: Exchange Email Delegate Permissions |
APT29 added their own devices as allowed IDs for active sync using |
||
Enterprise | T1583 | .001 | Acquire Infrastructure: Domains |
APT29 has acquired C2 domains, sometimes through resellers.[10][23][15] |
.006 | Acquire Infrastructure: Web Services |
APT29 has registered algorithmically generated Twitter handles that are used for C2 by malware, such as HAMMERTOSS.[24][15] |
||
Enterprise | T1595 | .002 | Active Scanning: Vulnerability Scanning |
APT29 has conducted widespread scanning of target environments to identify vulnerabilities for exploit.[13] |
Enterprise | T1071 | .001 | Application Layer Protocol: Web Protocols | |
Enterprise | T1560 | .001 | Archive Collected Data: Archive via Utility |
APT29 used 7-Zip to compress stolen emails into password-protected archives prior to exfiltration.[12][25] |
Enterprise | T1547 | .001 | Boot or Logon Autostart Execution: Registry Run Keys / Startup Folder | |
.009 | Boot or Logon Autostart Execution: Shortcut Modification | |||
Enterprise | T1110 | .003 | Brute Force: Password Spraying | |
Enterprise | T1059 | .001 | Command and Scripting Interpreter: PowerShell |
APT29 has used encoded PowerShell scripts uploaded to CozyCar installations to download and install SeaDuke. APT29 also used PowerShell to create new tasks on remote machines, identify configuration settings, evade defenses, exfiltrate data, and to execute other commands.[12][27][28][21][26] |
.003 | Command and Scripting Interpreter: Windows Command Shell |
APT29 used |
||
.005 | Command and Scripting Interpreter: Visual Basic | |||
.006 | Command and Scripting Interpreter: Python | |||
Enterprise | T1584 | .001 | Compromise Infrastructure: Domains | |
Enterprise | T1555 | Credentials from Password Stores |
APT29 used account credentials they obtained to attempt access to Group Managed Service Account (gMSA) passwords.[25] |
|
Enterprise | T1213 | .003 | Data from Information Repositories: Code Repositories |
APT29 has downloaded source code from code repositories.[29] |
Enterprise | T1005 | Data from Local System | ||
Enterprise | T1001 | .002 | Data Obfuscation: Steganography |
APT29 has used steganography to hide C2 communications in images.[19] |
Enterprise | T1074 | .002 | Data Staged: Remote Data Staging |
APT29 staged data and files in password-protected archives on a victim's OWA server.[12] |
Enterprise | T1140 | Deobfuscate/Decode Files or Information | ||
Enterprise | T1587 | .001 | Develop Capabilities: Malware |
APT29 has leveraged numerous pieces of malware that appear to be unique to APT29 and were likely developed for or by the group.[9][11][25] |
.003 | Develop Capabilities: Digital Certificates |
APT29 has created self-signed digital certificates to enable mutual TLS authentication for malware.[31][32] |
||
Enterprise | T1484 | .002 | Domain Policy Modification: Domain Trust Modification |
APT29 changed domain federation trust settings using Azure AD administrative permissions to configure the domain to accept authorization tokens signed by their own SAML signing certificate.[33] |
Enterprise | T1482 | Domain Trust Discovery |
APT29 used the |
|
Enterprise | T1568 | Dynamic Resolution |
APT29 used dynamic DNS resolution to construct and resolve to randomly-generated subdomains for C2.[12] |
|
Enterprise | T1114 | .002 | Email Collection: Remote Email Collection |
APT29 collected emails from specific individuals, such as executives and IT staff, using |
Enterprise | T1546 | .003 | Event Triggered Execution: Windows Management Instrumentation Event Subscription |
APT29 has used WMI event subscriptions for persistence.[21][19][33][25] |
.008 | Event Triggered Execution: Accessibility Features |
APT29 used sticky-keys to obtain unauthenticated, privileged console access.[21][34] |
||
Enterprise | T1048 | .002 | Exfiltration Over Alternative Protocol: Exfiltration Over Asymmetric Encrypted Non-C2 Protocol |
APT29 has exfiltrated collected data over a simple HTTPS request to a password-protected archive staged on a victim's OWA servers.[12] |
Enterprise | T1190 | Exploit Public-Facing Application |
APT29 has exploited CVE-2019-19781 for Citrix, CVE-2019-11510 for Pulse Secure VPNs, CVE-2018-13379 for FortiGate VPNs, and CVE-2019-9670 in Zimbra software to gain access. They have also exploited CVE-2020-0688 against the Microsoft Exchange Control Panel to regain access to a network.[20][12][13] |
|
Enterprise | T1203 | Exploitation for Client Execution |
APT29 has used multiple software exploits for common client software, like Microsoft Word, Exchange, and Adobe Reader, to gain code execution.[3][13][15] |
|
Enterprise | T1133 | External Remote Services |
APT29 has used compromised identities to access VPNs and remote access tools.[10][20] |
|
Enterprise | T1083 | File and Directory Discovery |
APT29 obtained information about the configured Exchange virtual directory using |
|
Enterprise | T1606 | .001 | Forge Web Credentials: Web Cookies |
APT29 has bypassed MFA set on OWA accounts by generating a cookie value from a previously stolen secret key.[12] |
.002 | Forge Web Credentials: SAML Tokens |
APT29 created tokens using compromised SAML signing certificates.[22] |
||
Enterprise | T1562 | .001 | Impair Defenses: Disable or Modify Tools |
APT29 used the service control manager on a remote system to disable services associated with security monitoring products.[25] |
.002 | Impair Defenses: Disable Windows Event Logging |
APT29 used |
||
.004 | Impair Defenses: Disable or Modify System Firewall |
APT29 used |
||
Enterprise | T1070 | Indicator Removal on Host |
APT29 removed evidence of email export requests using |
|
.004 | File Deletion |
APT29 routinely removed their tools, including custom backdoors, once remote access was achieved. APT29 has also used SDelete to remove artifacts from victims.[9][21] |
||
.006 | Timestomp |
APT29 modified timestamps of backdoors to match legitimate Windows files.[25] |
||
Enterprise | T1105 | Ingress Tool Transfer |
APT29 has downloaded additional tools, such as TEARDROP malware and Cobalt Strike, to a compromised host following initial access.[9] |
|
Enterprise | T1036 | Masquerading |
APT29 has set the hostnames of its C2 infrastructure to match legitimate hostnames in the victim environment. They have also used IP addresses originating from the same country as the victim for their VPN infrastructure.[9] |
|
.004 | Masquerade Task or Service |
APT29 named tasks |
||
.005 | Match Legitimate Name or Location |
APT29 renamed software and DLL's with legitimate names to appear benign.[12][27][14] |
||
Enterprise | T1095 | Non-Application Layer Protocol | ||
Enterprise | T1027 | Obfuscated Files or Information | ||
.001 | Binary Padding | |||
.002 | Software Packing | |||
Enterprise | T1588 | .002 | Obtain Capabilities: Tool |
APT29 has obtained and used a variety of tools including Mimikatz, SDelete, Tor, meek, and Cobalt Strike.[21][3][26] |
Enterprise | T1003 | .006 | OS Credential Dumping: DCSync |
APT29 leveraged privileged accounts to replicate directory service data with domain controllers.[33][25] |
Enterprise | T1069 | Permission Groups Discovery |
APT29 used the |
|
Enterprise | T1566 | .001 | Phishing: Spearphishing Attachment |
APT29 has used spearphishing emails with an attachment to deliver files with exploits to initial victims.[3][26][19][15] |
.002 | Phishing: Spearphishing Link |
APT29 has used spearphishing with a link to trick victims into clicking on a link to a zip file containing malicious files.[21][15] |
||
.003 | Phishing: Spearphishing via Service |
APT29 has used the legitimate mailing service Constant Contact to send phishing e-mails.[13] |
||
Enterprise | T1057 | Process Discovery |
APT29 has used multiple command-line utilities to enumerate running processes.[12][25] |
|
Enterprise | T1090 | .001 | Proxy: Internal Proxy |
APT29 configured at least one instance of Cobalt Strike to use a network pipe over SMB during the 2020 SolarWinds intrusion.[30] |
.003 | Proxy: Multi-hop Proxy |
A backdoor used by APT29 created a Tor hidden service to forward traffic from the Tor client to local ports 3389 (RDP), 139 (Netbios), and 445 (SMB) enabling full remote access from outside the network.[21] |
||
.004 | Proxy: Domain Fronting |
APT29 has used the meek domain fronting plugin for Tor to hide the destination of C2 traffic.[21] |
||
Enterprise | T1021 | .006 | Remote Services: Windows Remote Management |
APT29 has used WinRM via PowerShell to execute command and payloads on remote hosts.[30] |
Enterprise | T1018 | Remote System Discovery | ||
Enterprise | T1053 | .005 | Scheduled Task/Job: Scheduled Task |
APT29 used |
Enterprise | T1505 | .003 | Server Software Component: Web Shell |
APT29 has installed web shells on exploited Microsoft Exchange servers.[13] |
Enterprise | T1218 | .011 | Signed Binary Proxy Execution: Rundll32 |
APT29 has used |
Enterprise | T1558 | .003 | Steal or Forge Kerberos Tickets: Kerberoasting |
APT29 obtained Ticket Granting Service (TGS) tickets for Active Directory Service Principle Names to crack offline.[25] |
Enterprise | T1553 | .002 | Subvert Trust Controls: Code Signing |
APT29 was able to get SUNBURST signed by SolarWinds code signing certificates by injecting the malware into the SolarWinds Orion software lifecycle.[9] |
Enterprise | T1195 | .002 | Supply Chain Compromise: Compromise Software Supply Chain |
APT29 gained initial network access to some victims via a trojanized update of SolarWinds Orion software.[9][13] |
Enterprise | T1082 | System Information Discovery |
APT29 used |
|
Enterprise | T1016 | .001 | System Network Configuration Discovery: Internet Connection Discovery |
APT29 has used GoldFinder to perform HTTP GET requests to check internet connectivity and identify HTTP proxy servers and other redirectors that an HTTP request travels through.[10] |
Enterprise | T1199 | Trusted Relationship |
APT29 has used compromised certificates issued by Mimecast to authenticate to Mimecast customer systems.[13] |
|
Enterprise | T1552 | .004 | Unsecured Credentials: Private Keys |
APT29 obtained PKI keys, certificate files and the private encryption key from an Active Directory Federation Services (AD FS) container to decrypt corresponding SAML signing certificates.[33][13] |
Enterprise | T1550 | Use Alternate Authentication Material |
APT29 used forged SAML tokens that allowed the actors to impersonate users and bypass MFA, enabling APT29 to access enterprise cloud applications and services.[33] |
|
.003 | Pass the Ticket |
APT29 used Kerberos ticket attacks for lateral movement.[21] |
||
.004 | Web Session Cookie |
APT29 used a forged |
||
Enterprise | T1204 | .001 | User Execution: Malicious Link |
APT29 has used various forms of spearphishing attempting to get a user to click on a malicous link.[26][19][15] |
.002 | User Execution: Malicious File |
APT29 has used various forms of spearphishing attempting to get a user to open attachments, including, but not limited to, malicious Microsoft Word documents, .pdf, and .lnk files. [3] [26][19] |
||
Enterprise | T1078 | Valid Accounts |
APT29 used different compromised credentials for remote access and to move laterally.[9][10][13] |
|
.002 | Domain Accounts |
APT29 has used valid accounts, including administrator accounts, to help facilitate lateral movement on compromised networks.[19][20] |
||
Enterprise | T1102 | .002 | Web Service: Bidirectional Communication |
APT29 has used social media platforms to hide communications to C2 servers.[19] |
Enterprise | T1047 | Windows Management Instrumentation |
APT29 used WMI to steal credentials and execute backdoors at a future time.[21] They have also used WMI for the remote execution of files for lateral movement.[33][25] |