ChromeLoader Observations on the Rise

Adversaries don’t work 9-5 and neither do we. At eSentire, our 24/7 SOCs are staffed with Elite Threat Hunters and Cyber Analysts who hunt, investigate, contain and respond to threats within minutes.

We have discovered some of the most dangerous threats and nation state attacks in our space – including the Kaseya MSP breach and the more_eggs malware.

Our Security Operations Centers are supported with Threat Intelligence, Tactical Threat Response and Advanced Threat Analytics driven by our Threat Response Unit – the TRU team.

In TRU Positives, eSentire’s Threat Response Unit (TRU) provides a summary of a recent threat investigation. We outline how we responded to the confirmed threat and what recommendations we have going forward.

Here’s the latest from our TRU Team…

What did we find?

  • In a case investigated by our team of 24/7 SOC Cyber Analysts in October 2022, we discovered encoded PowerShell commands loading a suspicious extension called “chrome-help” into the victim’s browser using the “–load-extension” command-line argument for Chrome.
  • Subsequent analysis by TRU identified the extension as ChromeLoader, malware distributed through pirated content such as software, video games or eBooks (Figure 1), which are distributed on various websites and social media platforms.
  • ChromeLoader is generally considered adware, with its primary goal being to intercept web traffic and push advertisements.
  • It has been widely observed in several variations since January 2022 and is typically delivered using ISO files containing a shortcut file that when clicked executes a hidden batch file.
  • Figure 1 Sample ISO Filenames from VirusTotal

  • The batch file unpacks the malware binary into the AppDataRoaming directory then establishes persistence using a Run key (Figure 2).
  • Figure 2 ISO shortcut execution and registry persistence as seen from a ChromeLoader sample from earlier in 2022.

ChromeLoader’s PowerShell Execution

The first stage PowerShell script is responsible for executing an XOR-Encrypted C# source file that is decompiled to install the ChromeLoader extension from registry (Figures 3 and 4).

The decryption routine base64 decodes then takes the first 5 bytes from the XOR-encrypted registry value. These bytes are used as a key to XOR a string (in this case “Get-ItemPropertyValue”) which is base64 encoded. The resulting 28-character key is then used to decrypt the C# source file (minus the first 5 bytes) and the code is executed. The PowerShell script also contains redundancy to retrieve code from the C2 (hxxps://evelopedsev[.]autos in this case) and write it to the registry should it be missing or removed.

Figure 3 Endpoint view of ChromeLoader extension being loaded into Chrome.
Figure 4 Snippets of the first stage PowerShell executing code from registry.

Examining the cleartext C# source file shows how the Chrome extension is loaded via PowerShell. The code contains a JSON list object which is base64 encoded and XOR-encrypted using similar logic to the function above. In this case, the first 5 bytes of the encrypted JSON object are used as a key. The resulting list items (Figure 5) are then passed as arguments to the Start-Process cmdlet.

Figure 5 Cleaned up snippet of the cleartext C# source file. Comments added for clarity.
Figure 6 Cleaned up snippet of cleartext C# source file showing Chrome execution with load-extension parameter.

PowerShell will attempt to start Chrome from various paths using the “load-extension” argument to load the “chrome_data” extension (Figure 6). It also contains logic to replace this name with others in the list below.

  • “chrome_metric”
  • “chrome_pref”
  • “chrome_settings”
  • “chrome_tools”
  • “chrome_storage”
  • “chrome_configuration”
  • “chrome_bookmarks”
  • “chrome_flags”
  • “chrome_history”
  • “chrome_cast”
  • “chrome_view”
  • “chrome_tab”
  • “chrome_panel”
  • “chrome_window”
  • “chrome_control”
  • “chrome_glass”
  • “chrome_nav”
  • “chrome_profile”
  • “chrome_zoom”
  • “chrome_find”
  • “chrome_help”

The extension files (Figure 7) are stored in C:UsersuserAppDataLocalchrome_data (or another name from the list above). The code contains logic to retrieve a new copy of the extension in from asanttackl[.]autos if removed.

Figure 7 Contents of the ChromeLoader extension folder

The ChromeLoader extension contains high privileges, such as reading browsing history, managing apps/extensions, page content manipulation, etc. (Figure 8). These privileges are core to its functionality, mainly serving ads and capturing browser history/search terms (Figure 9). It also attempts to block the user from editing Chrome extensions to hinder removal.

Figure 8 ChromeLoader browser extension details.
Figure 9 Ad injection/page redirection.

How did we find it?

  • Our Machine Learning PowerShell classifier detected malicious code execution resulting in the victim manually executing a disguised script file.

What did we do?

  • Our team of Cyber Analysts investigated the threat, alerted the customer, and isolated the host on their behalf.

What can you learn from this TRU positive?

  • ISO shortcut attacks remain a popular means of code delivery and execution. Few barriers exist to prevent users from easily mounting ISO files and executing their contents.
  • ChromeLoader is generally considered adware. However, it poses a risk of redirecting traffic to risky websites or potentially loading more nefarious code, as others have suggested.
  • ChromeLoader has shown continuous updates and improvements since it was discovered. TRU has observed the threat across numerous customers/verticals.

Recommendations from our Threat Response Unit (TRU) Team:

  • Raise awareness of unknown ISO files among your users, and include in your Phishing and Security Awareness Training (PSAT) program. An effective PSAT program emphasizes building cyber resilience by increasing risk awareness, rather than trying to turn everyone into security experts.
  • Display file extensions for known file types and consider showing hidden files to users by default.
  • Protect endpoints against malware.

Ask Yourself…

  • What level of visibility do you have across your network, endpoint and overall environment to detect malicious behavior at scale?
  • Are you monitoring your endpoints 24/7 and what degree of control do you have to initiate a kill switch when required?

eSentire’s Threat Response Unit (TRU) is a world-class team of threat researchers who develop new detections enriched by original threat intelligence and leverage new machine learning models that correlate multi-signal data and automate rapid response to advanced threats.

If you are not currently engaged with an MDR provider, eSentire MDR can help you reclaim the advantage and put your business ahead of disruption.

Learn what it means to have an elite team of Threat Hunters and Researchers that works for you. Connect with an eSentire Security Specialist.

Indicators of Compromise

Indicator Note
10CE7795E0D7D0AACB487A3C67A2F59F ChromeLoader Stage 1 PowerShell
EA0FCD070E59389EEA6C280B5B582A18 ChromeLoader XOR-encrypted C# Source File
5DEFEA9D05D5A2EBB03FBEAC464A948A ChromeLoader C# Source File
evelopedsev[.]autos C2 Domain (Stage 1 PowerShell)
asanttackl[.]autos C2 Domain (C# Source File)
usesianeduke[.]xyz C2 Domain (Browser Extension)

Source: https://www.esentire.com/blog/chromeloader-observations-on-the-rise