Introduction
With millions of users relying on digital platforms in their day-to-day lives, and organizations across the world depending on them for their business operations, they have inevitably also become a prime target for threat actors. The widespread exploitation of popular services, websites and platforms in cyber-attacks highlights the pervasive nature of malicious actors in today’s threat landscape.
A prime illustration can be seen within the content management system WordPress. Its widespread use and extensive plug-in ecosystem make it an attractive target for attackers aiming to breach networks and access sensitive data, thus leading to routine exploitation attempts. In the End of Year Threat Report for 2023, for example, Darktrace reported that a vulnerability in one WordPress plug-in, namely an authentication bypass vulnerability in miniOrange's Social Login and Register. Darktrace observed it as one of the most exploited vulnerabilities observed across its customer base in the latter half of 2023.
Between September and October 2023, Darktrace observed a string of campaign-like activity associated with Balada Injector, a malware strain known to exploit vulnerabilities in popular plug-ins and themes on the WordPress platform in order to inject a backdoor to provide further access to affected devices and networks. Thanks to its anomaly-based detection, Darktrace DETECT™ was able to promptly identify suspicious connections associated with the Balada Injector, ensuring that security teams had full visibility over potential post-compromise activity and allowing them to act against offending devices.
What is Balada Injector?
The earliest signs of the Balada Injector campaign date back to 2017; however, it was not designated the name Balada Injector until December 2022 [1]. The malware utilizes plug-ins and themes in WordPress to inject a backdoor that redirects end users to malicious and fake sites. It then exfiltrates sensitive information, such as database credentials, archive files, access logs and other valuable information which may not be properly secured [1]. Balada Injector compromise activity is also reported to arise in spikes of activity that emerge every couple of weeks [4].
In its most recent attack activity patterns, specifically in September 2023, Balada Injector exploited a cross-site scripting (XSS) vulnerability in CVE-2023-3169 associated with the tagDiv composer plug-in. Some of the injection methods observed included HTML injections, database injections, and arbitrary file injections. In late September 2023, a similar pattern of behavior was observed, with the ability to plant a backdoor that could execute PHP code and install a malicious WordPress plug-in, namely ‘wp-zexit’.
According to external security researchers [2], the most recent infection activity spikes for Balada Injector include the following:
Pattern 1: ‘stay.decentralappps[.]com’ injections
Pattern 2: Autogenerated malicious WordPress users
Pattern 3: Backdoors in the Newspaper theme’s 404.php file
Pattern 4: Malicious ‘wp-zexit’ plug-in installation
Pattern 5: Three new Balada Injector domains (statisticscripts[.]com, dataofpages[.]com, and listwithstats[.]com)
Pattern 6: Promsmotion[.]com domain
Darktrace’s Coverage of Balada Injector
Darktrace detected devices across multiple customer environments making external connections to the malicious Balada Injector domains, including those associated with aforementioned six infection activity patterns. Across the incidents investigated by Darktrace, much of the activity appeared to be associated with TLS/SSL connectivity, related to Balada Injector endpoints, which correlated with the reported infection patterns of this malware. The observed hostnames were all recently registered and, in most cases, had IP geolocations in either the Netherlands or Ukraine.
In the observed cases of Balada Injector across the Darktrace fleet, Darktrace RESPOND™ was not active on the affected customer environments. If RESPOND had been active and enabled in autonomous response mode at the time of these attacks, it would have been able to quickly block connections to malicious Balada Injector endpoints as soon as they were identified by DETECT, thereby containing the threat.
Looking within the aforementioned activity patterns, Darktrace identified a Balada Injector activity within a customer’s environment on October 16, 2023, when a device was observed making a total of 9 connection attempts to ‘sleep[.]stratosbody[.]com’, a domain that had previously been associated with the malware [2]. Darktrace recognized that the endpoint had never been seen on the network, with no other devices having connected to it previously, thus treated it as suspicious.
Similarly, on September 21, 2023, Darktrace observed a device on another customer network connecting to an external IP that had never previously been observed on the environment, 111.90.141[.]193. The associated server name was a known malicious endpoint, ‘stay.decentralappps[.]com’, known to be utilized by Balada Injector to host malicious scripts used to compromise WordPress sites. Although the ‘stay.decentralappps[.]com’ domain was only registered in September 2023, it was reportedly used in the redirect chain of the aforementioned stratosbody[.com] domain [2]. Such scripts can be used to upload backdoors, including malicious plug-ins, and create blog administrators who can perform administrative tasks without having to authenticate [2].
Darktrace observed additional connections within the same customer’s environment on October 10 and October 18, specifically SSL connections from two distinct source devices to the ‘stay.decentralappps[.]com’ endpoint. Within these connections, Darktrace observed the normalized JA3 fingerprints, “473f0e7c0b6a0f7b049072f4e683068b” and “aa56c057ad164ec4fdcb7a5a283be9fc”, the latter of which corresponds to GitHub results mentioning a Python client (curl_cffi) that is able to impersonate the TLS signatures of browsers or JA3 fingerprints [8].
On September 29, 2023, a device on a separate customer’s network was observed connecting to the hostname ‘cdn[.]dataofpages[.]com’, one of the three new Balada Injector domains identified as part of the fifth pattern of activity outlined above, using a new SSL certificate via port 443. Multiple open-source intelligence (OSINT) vendors flagged this domain as malicious and associated with Balada Injector malware [9].
On October 2, 2023, Darktrace observed the device of another customer connecting to the rare hostname, ‘js.statisticscripts[.]com’ with the IP address 185.39.206[.]161, both of which had only been registered in late September and are known to be associated with the Balada Injector.
On September 13, 2023, Darktrace identified a device on another customer’s network connecting to the Balada Injector endpoint ‘stay.decentralappps[.]com’ endpoint, with the destination IP 1.1.1[.]1, using the SSL protocol. This time, however, Darktrace also observed the device making subsequent connections to ‘get.promsmotion[.]com’ a subdomain of the ‘promsmotion[.]com’ domain. This domain is known to be used by Balada Injector actors to host malicious scripts that can be injected into the WordPress Newspaper theme as potential backdoors to be leveraged by attackers.
In a separate case observed on September 14, Darktrace identified a device on another environment connecting to the domain ‘collect[.]getmygateway[.]com’ with the IP 88.151.192[.]254. No other device on the customer’s network had visited this endpoint previously, and the device in question was observed repeatedly connecting to it via port 443 over the course of four days. While this specific hostname had not been linked with a specific activity pattern of Balada Injector, it was reported as previously associated with the malware in September 2023 [2].
In addition to DETECT’s identification of this suspicious activity, Darktrace’s Cyber AI Analyst™ also launched its own autonomous investigation into the connections. AI Analyst was able to recognize that these separate connections that took place over several days were, in fact, connected and likely represented command-and-control (C2) beaconing activity that had been taking place on the customer networks.
By analyzing the large number of external connections taking place on a customer’s network at any one time, AI Analyst is able to view seemingly isolated events as components of a wider incident, ensuring that customers maintain full visibility over their environments and any emerging malicious activity.
Conclusion
While Balada Injector’s tendency to interchange C2 infrastructure and utilize newly registered domains may have been able to bypass signature-based security measures, Darktrace’s anomaly-based approach enabled it to swiftly identify affected devices across multiple customer environments, without needing to update or retrain its models to keep pace with the evolving iterations of WordPress vulnerabilities.
Unlike traditional measures, Darktrace DETECT’s Self-Learning AI focusses on behavioral analysis, crucial for identifying emerging threats like those exploiting commonly used platforms such as WordPress. Rather than relying on historical threat intelligence or static indicators of compromise (IoC) lists, Darktrace identifies the subtle deviations in device behavior, such as unusual connections to newly registered domains, that are indicative of network compromise.
Darktrace’s suite of products, including DETECT+RESPOND, is uniquely positioned to proactively identify and contain network compromises from the onset, offering vital protection against disruptive cyber-attacks.
Credit to: Justin Torres, Cyber Analyst, Nahisha Nobregas, Senior Cyber Analyst
Appendices
Darktrace DETECT Model Coverage
- Anomalous Server Activity / Anomalous External Activity from Critical Network Device
- Anomalous Connection / Anomalous SSL without SNI to New External
- Anomalous Connection / Rare External SSL Self-Signed
- Compliance / Possible DNS Over HTTPS/TLS
- Compliance / External Windows Communications
- Compromise / Repeating Connections Over 4 Days
- Compromise / Beaconing Activity To External Rare
- Compromise / SSL Beaconing to Rare Destination
- Compromise / HTTP Beaconing to Rare Destination
- Compromise / Suspicious TLS Beaconing To Rare External
- Compromise / Large DNS Volume for Suspicious Domain
- Anomalous Server Activity / Outgoing from Server
- Anomalous Server Activity / Rare External from Server
- Device / Suspicious Domain
List of IoCs
IoC - Type - Description + Confidence
collect[.]getmygateway[.]com - Hostname - Balada C2 Endpoint
cdn[.]dataofpages[.]com - Hostname - Balada C2 Endpoint
stay[.]decentralappps[.]com - Hostname - Balada C2 Endpoint
get[.]promsmotion[.]com - Hostname - Balada C2 Endpoint
js[.]statisticscripts[.]com - Hostname - Balada C2 Endpoint
sleep[.]stratosbody[.]com - Hostname - Balada C2 Endpoint
trend[.]stablelightway[.]com - Hostname - Balada C2 Endpoint
cdn[.]specialtaskevents[.]com - Hostname - Balada C2 Endpoint
88.151.192[.]254 - IP Address - Balada C2 Endpoint
185.39.206[.]160 - IP Address - Balada C2 Endpoint
111.90.141[.]193 - IP Address - Balada C2 Endpoint
185.39.206[.]161 - IP Address - Balada C2 Endpoint
2.59.222[.]121 - IP Address - Balada C2 Endpoint
80.66.79[.]253 - IP Address - Balada C2 Endpoint
Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) - User Agent - Observed User Agent in Balada C2 Connections
Gecko/20100101 Firefox/68.0 - User Agent - Observed User Agent in Balada C2 Connections
Mozilla/5.0 (Windows NT 10.0; Win64; x64) - User Agent - Observed User Agent in Balada C2 Connections
AppleWebKit/537.36 (KHTML, like Gecko) - User Agent - Observed User Agent in Balada C2 Connections
Chrome/117.0.0.0 - User Agent - Observed User Agent in Balada C2 Connections
Safari/537.36 - User Agent - Observed User Agent in Balada C2 Connections
Edge/117.0.2045.36 - User Agent - Observed User Agent in Balada C2 Connections
MITRE ATT&CK Mapping
Technique - Tactic - ID - Sub Technique
Exploit Public-Facing Application
INITIAL ACCESS
T1190
Web Protocols
COMMAND AND CONTROL
T1071.001
T1071
Protocol Tunneling
COMMAND AND CONTROL
T1572
Default Accounts
DEFENSE EVASION, PERSISTENCE, PRIVILEGE ESCALATION, INITIAL ACCESS
T1078.001
T1078
Domain Accounts
DEFENSE EVASION, PERSISTENCE, PRIVILEGE ESCALATION, INITIAL ACCESS
T1078.002
T1078
External Remote Services
PERSISTENCE, INITIAL ACCESS
T1133
NA
Local Accounts
DEFENSE EVASION, PERSISTENCE, PRIVILEGE ESCALATION, INITIAL ACCESS
T1078.003
T1078
Application Layer Protocol
COMMAND AND CONTROL
T1071
NA
Browser Extensions
PERSISTENCE
T1176
NA
Encrypted Channel
COMMAND AND CONTROL
T1573
Fallback Channels
COMMAND AND CONTROL
T1008
Multi-Stage Channels
COMMAND AND CONTROL
T1104
Non-Standard Port
COMMAND AND CONTROL
T1571
Supply Chain Compromise
INITIAL ACCESS ICS
T0862
Commonly Used Port
COMMAND AND CONTROL ICS
T0885
References
[4] https://thehackernews.com/2023/10/over-17000-wordpress-sites-compromised.html
[6]https://nvd.nist.gov/vuln/detail/CVE-2023-3169
[7] https://www.geoedge.com/balda-injectors-2-0-evading-detection-gaining-persistence/
[8] https[:]//github[.]com/yifeikong/curl_cffi/blob/master/README.md
[9] https://www.virustotal.com/gui/domain/cdn.dataofpages.com