Task-specific Atlas Agents investigate threats at machine speed with full transparency, expert validation, and explainable outcomes you can trust.
Atlas Extended Detection and ResponseOpen XDR with Agentic AI & machine learning that eliminates noise, enables real-time detection and response, and automatically blocks threats.
Atlas User ExperienceSee what our SOC sees, review investigations, and see how we are protecting your business.
Atlas Platform IntegrationsSeamless integrations and threat investigation that adapts to your tools and evolves with your business.
24/7 SOC-as-a-Service with unlimited threat hunting and incident handling.
Threat Response Unit (TRU)Proactive threat intelligence, original threat research and a world-class team of seasoned industry veterans.
Cyber Resilience TeamExtend your team capabilities and prevent business disruption with expertise from eSentire.
Response and RemediationWe balance automated blocks with rapid human-led investigations to manage threats.
Combine AI-driven security operations, multi-signal attack surface coverage and 24/7 Elite Threat Hunters to help you take your security program to the next level.
Get unlimited Incident Response with threat suppression guarantee - anytime, anywhere.
CTEM and advisory programs that identify security gaps and build proactive strategies to address them.
Flexible MDR pricing and packages that fit your unique security requirements.
Entry level foundational MDR coverage
Comprehensive Next Level eSentire MDR
Next Level eSentire MDR with Cyber Risk Advisors to continuously advance your security program
Stop ransomware before it spreads.
Identity ResponseStop identity-based cyberattacks.
Zero Day AttacksDetect and respond to zero-day exploits.
Cybersecurity ComplianceMeet regulatory compliance mandates.
Third-Party RiskDefend third-party and supply chain risk.
Cloud MisconfigurationEnd misconfigurations and policy violations.
Cyber RiskAdopt a risk-based security approach.
Mid-Market SecurityMid-market security essentials to prioritize.
Sensitive Data SecurityProtect your most sensitive data.
Cyber InsuranceMeet insurability requirements with MDR.
Cyber Threat IntelligenceOperationalize cyber threat intelligence.
Security LeadershipBuild a proven security program.
On March 18th, 2026, Amazon reported that the Interlock ransomware group has been exploiting the maximum severity vulnerability, CVE-2026-20131 (CVSS: 10), in Cisco Secure Firewall…
Security Researchers have identified publicly exposed open directories linked to the Iranian APT MuddyWater. The exposed information was reviewed by eSentire's Threat Response Unit (TRU)…
eSentire is The Authority in Managed Detection and Response Services, protecting the critical data and applications of 2000+ organizations in 80+ countries from known and unknown cyber threats. Founded in 2001, the company’s mission is to hunt, investigate and stop cyber threats before they become business disrupting events.
About Us Leadership Careers Event Calendar → Newsroom → Aston Villa Football Club →We provide sophisticated cybersecurity solutions for Managed Security Service Providers (MSSPs), Managed Service Providers (MSPs), and Value-Added Resellers (VARs). Find out why you should partner with eSentire, the Authority in Managed Detection and Response, today.
Search our site
Multi-Signal MDR with 300+ technology integrations to support your existing investments.
24/7 SOC-as-a-Service with unlimited threat hunting and incident handling.
We offer three flexible MDR pricing packages that can be customized to your unique needs.
The latest security advisories, blogs, reports, industry publications and webinars published by TRU.
Compare eSentire to other Managed Detection and Response vendors to see how we stack up against the competition.
See why 2000+ organizations globally have chosen eSentire for their MDR Solution.
In March 2026, eSentire's Threat Response Unit (TRU) detected EtherRAT in a customer's environment in the Retail industry. EtherRAT is a Node.js-based backdoor reportedly linked by Sysdig to a North Korean advanced persistent threat (APT) group due to significant overlaps with "Contagious Interview" tactics, techniques, and procedures (TTPs).
EtherRAT allows threat actors to run arbitrary commands on compromised hosts, gather extensive system information, and steal assets such as cryptocurrency wallets and cloud credentials. Command-and-Control (C2) addresses are retrieved using "EtherHiding", a technique to make C2 addresses more resilient by storing and updating them in Ethereum smart contracts, allowing threat actors to rotate infrastructure at a small cost and avoid takedowns by law enforcement. After retrieving the C2 address through public Ethereum RPC providers, the malware blends in with normal network traffic through CDN-like beaconing.
TRU discovered many similarities between the code in the Malware-as-a-Service botnet Tsundere and EtherRAT. Notably, both use similar commands in OS fingerprinting and CIS language checking, can be delivered through ClickFix and IT Support scams, and make use of Obfuscator.io, a free JavaScript obfuscation tool, though it is widely used among Node.js malware in general.
For more information, please see our previous blog post, MuddyWater APT + Tsundere Botnet: EtherHiding the C2.
Initial access vectors in observed EtherRAT incidents vary. In this case, TRU observed the use of ClickFix; however, in most incidents TRU has observed, IT Support scams are conducted over Microsoft Teams, followed by the use of QuickAssist.
The ClickFix command makes use a technique called Indirect Command Execution where the LOLBin pcalua.exe executes a command line for mshta.exe, effectively bypassing security restrictions that limit use on command-line interpreters and retrieving a malicious HTA script named "shep.hta" from the compromised website, "shepherdsestates[.]uk". Additionally, as is a common practice in obfuscating command lines, the caret "^" character is used.
The deobfuscated contents of the command line are shown below.
The figure below illustrates the progression of the attack, beginning with ClickFix for initial access and culminating in the deployment of EtherRAT, followed by a C2-delivered module we've dubbed "SYS_INFO" that performs extensive host fingerprinting – information the threat actors use to support target selection and decisions for follow-on payloads.

The first stage Node.js script simply decrypts/executes the next stage. It uses AES-256-CBC to decrypt the encrypted stager payload from the file "aeJ8aMT9ogQtKEb.dat". It makes use of the internal Node.js function module._compile() to run the next stage in memory.

Using CyberChef we can see the decrypted plaintext of the next stage. This is a simple process, first by using the AES Decrypt operation and specifying the embedded AES key / IV as BASE64.

Given the appearance and functionality of this stage, we conclude it was obfuscated via Obfuscator.io and serves to decrypt/launch EtherRAT and establish persistence via HKCU Run key. The encrypted code for EtherRAT is stored in a seemingly innocuous file named, "2htgIPQLUYA3aWq.cfg".
The script decrypts this file using AES-256-CBC via Node's crypto module, using the AES key and IV that are embedded in this stage as base64-encoded strings. The resulting plaintext (obfuscated EtherRAT) is written to disk as a file named, "TLHA1IlxoF.bin", and executed via child_process.spawn().

The next portion of this stage generates a random 12-character hexadecimal string for use as the value name of a new registry value in the HKCU Run key. The registry key is created via the LOLBin reg.exe, effectively establishing persistence for EtherRAT.
The associated code and resulting command line are shown in the figure below. Notably, the command uses conhost.exe (Windows Console Host) to proxy-execute node.exe via the undocumented --headless argument.

The final stage is EtherRAT, a Node.js script that communicates with RPC providers to acquire C2 addresses and enables arbitrary code execution from threat actor controlled C2 server. It polls the C2 for code to execute through randomized and seemingly benign "CDN-like" URLs.
Like the prior stage, it was also likely obfuscated via Obfuscator.io, given the presence of a large strings array and shuffling loop to re-order it at runtime.

There is an existing open-source project by @ben-sb that handles Obfuscator.io obfuscation quite well, however it did not work against samples in this incident, due to assumptions in the "isBasicStringArrayWrapper" function that assumes a specific structure of the function responsible for returning a string by index.
In our case, the function doesn't redefine itself and contains several statements of "dead code", effectively breaking the existing pattern matching in the isBasicStringArrayWrapper function.

We created this pull request in the repository to handle this type of obfuscation. In time, it should become part of the web-based version of the deobfuscator. In the meantime, the forked repository can be used to deobfuscate scripts using this technique through the following commands:
EtherHiding is a technique becoming more popular in malware and allows threat actors to embed malicious code or configuration data on the Ethereum blockchain by transaction or smart contract input data, resulting in a takedown-proof storage medium.
Beyond takedown resilience, threat actors conduct additional transactions that redirect previously infected machines to new C2 infrastructure, effectively reasserting control over older infected machines at the cost of a small amount of crypto.

The Ethereum smart contract address 0xe26c57b7fa8de030238b0a71b3d063397ac127d3 in this incident appears frequently in eSentire case data related to EtherRAT and has also been associated with attacks against other customers in the Business Services, Software, and Finance industries. These campaigns have involved IT Support scams conducted via Microsoft Teams and QuickAssist for unauthorized remote access.
Much like other Node.js malware that we have blogged about, EtherRAT sends requests to all the RPC providers concurrently and evaluates the responses for the most common C2 address. This gives threat actors the ability to use setString function to store high priority C2 server addresses on the existing smart contract, thus refreshing the C2 address for bots that may no longer have connection to a valid C2.
The full list of RPC providers used in this process are as follows:
By searching EtherScan.io for the smart contract and navigating to "Events", we are able to see a list of events where threat actors repeatedly used the setString function to store additional C2 addresses.

Once the malware retrieves the C2 address from the Ethereum blockchain, it builds the final beacon URL in a way that looks like a benign CDN request, using a common "/api/" path, random-looking hexadecimal directories "5f459179", a UUID, and an innocuous-looking static file name, ".ico".
The format of a generated URL is shown in the code snippet below:
For example, we saw beaconing to the following URL:
In building this URL, EtherRAT selects at random one of each of the following "file extensions" and query parameters:

If configured to do so, EtherRAT will write to a debug log at %APPDATA%\svchost.log. Modifying the script by changing the default false boolean used in enabling or disabling debug logging to true is effective for analysis purposes. The figure below displays the contents of the log file after the malware retrieved the C2 from the Ethereum blockchain and began polling for commands.
TRU observed EtherRAT communicating over HTTPS using TLS 1.3, preventing inspection of HTTP-specific malware traffic in PCAP captures, so using this technique and re-writing the malware on-the-fly was helpful in dumping requests and responses from C2 infrastructure.

EtherRAT reobfuscates itself by sending the current EtherRAT source code to the C2 server via POST request in JSON format. If the reobfuscation request is successful, it overwrites itself with the response returned from the C2 and restarts.

In our analysis, TRU observed the EtherRAT C2 at aurineuroth[.]com (185.218.19.162 - ASN#400992 "ZhouyiSat Communications") return additional code to execute. This code is responsible for the fingerprinting commands shown in the Attack Diagram (Figure 1) and Indicators of Compromise table below and frequently references "SYS_INFO" throughout.

Before proceeding to collect comprehensive information from the victim machine, it checks for CIS language use by the victim machine. The full list of languages checked are: Russian, Belarusian, Kazakh, Kyrgyz, Tajik, Uzbek, Armenian, Azerbaijani, and Georgian.
If any language matches, it "self-destructs" by deleting itself and exiting. For Windows, a specific PowerShell command is used, whereas for other operating systems, the environment variables "LANG"and "LC_ALL" are checked.

It then proceeds to collect the following information from the victim machine:


To learn how your organization can build cyber resilience and prevent business disruption with eSentire’s Next Level MDR, connect with an eSentire Security Specialist now.
GET STARTEDThe eSentire Threat Response Unit (TRU) is an industry-leading threat research team committed to helping your organization become more resilient. TRU is an elite team of threat hunters and researchers that supports our 24/7 Security Operations Centers (SOCs), builds threat detection models across the eSentire XDR Cloud Platform, and works as an extension of your security team to continuously improve our Managed Detection and Response service. By providing complete visibility across your attack surface and performing global threat sweeps and proactive hypothesis-driven threat hunts augmented by original threat research, we are laser-focused on defending your organization against known and unknown threats.