Obfuscation Overdrive: Next-Gen Cryptojacking with Layers
Docker is a prime target for malware, with new strains emerging daily. This blog explores a novel campaign showcasing advanced obfuscation and cryptojacking techniques.
Darktrace cyber analysts are world-class experts in threat intelligence, threat hunting and incident response, and provide 24/7 SOC support to thousands of Darktrace customers around the globe. Inside the SOC is exclusively authored by these experts, providing analysis of cyber incidents and threat trends, based on real-world experience in the field.
Written by
Nate Bill
Threat Researcher
Share
22
Apr 2025
Out of all the services honeypotted by Darktrace, Docker is the most commonly attacked, with new strains of malware emerging daily. This blog will analyze a novel malware campaign with a unique obfuscation technique and a new cryptojacking technique.
What is obfuscation?
Obfuscation is a common technique employed by threat actors to prevent signature-based detection of their code, and to make analysis more difficult. This novel campaign uses an interesting technique of obfuscating its payload.
Docker image analysis
The attack begins with a request to launch a container from Docker Hub, specifically the kazutod/tene:ten image. Using Docker Hub’s layer viewer, an analyst can quickly identify what the container is designed to do. In this case, the container is designed to run the ten.py script which is built into itself.
Figure 1: Docker Hub Image Layers, referencing the script ten.py.
To gain more information on the Python file, Docker’s built in tooling can be used to download the image (docker pull kazutod/tene:ten) and then save it into a format that is easier to work with (docker image save kazutod/tene:ten -o tene.tar). It can then be extracted as a regular tar file for further investigation.
Figure 2: Extraction of the resulting tar file.
The Docker image uses the OCI format, which is a little different to a regular file system. Instead of having a static folder of files, the image consists of layers. Indeed, when running the file command over the sha256 directory, each layer is shown as a tar file, along with a JSON metadata file.
Figure 3: Output of the file command over the sha256 directory.
As the detailed layers are not necessary for analysis, a single command can be used to extract all of them into a single directory, recreating what the container file system would look like:
find blobs/sha256 -type f -exec sh -c 'file "{}" | grep -q "tar archive" && tar -xf "{}" -C root_dir' \;
Figure 4: Result of running the command above.
The find command can then be used to quickly locate where the ten.py script is.
find root_dir -name ten.py
root_dir/app/ten.py
Figure 5: Details of the above ten.py script.
This may look complicated at first glance, however after breaking it down, it is fairly simple. The script defines a lambda function (effectively a variable that contains executable code) and runs zlib decompress on the output of base64 decode, which is run on the reversed input. The script then runs the lambda function with an input of the base64 string, and then passes it to exec, which runs the decoded string as Python code.
To help illustrate this, the code can be cleaned up to this simplified function:
decoded_string = decode(the_big_text_blob) exec(decoded_string) # run the decoded string
This can then be set up as a recipe in Cyberchef, an online tool for data manipulation, to decode it.
Figure 6: Use of Cyberchef to decode the ten.py script.
The decoded payload calls the decode function again and puts the output into exec. Copy and pasting the new payload into the input shows that it does this another time. Instead of copy-pasting the output into the input all day, a quick script can be used to decode this.
The script below uses the decode function from earlier in order to decode the base64 data and then uses some simple string manipulation to get to the next payload. The script will run this over and over until something interesting happens.
# Decode the initial base64
decoded = decode(initial) # Remove the first 11 characters and last 3
# so we just have the next base64 string
clamped = decoded[11:-3]
for i in range(1, 100): # Decode the new payload
decoded = decode(clamped) # Print it with the current step so we
# can see what’s going on
print(f"Step {i}")
print(decoded) # Fetch the next base64 string from the
# output, so the next loop iteration will
# decode it
clamped = decoded[11:-3]
Figure 7: Result of the 63rd iteration of this script.
After 63 iterations, the script returns actual code, accompanied by an error from the decode function as a stopping condition was never defined. It not clear what the attacker’s motive to perform so many layers of obfuscation was, as one round of obfuscation versus several likely would not make any meaningful difference to bypassing signature analysis. It’s possible this is an attempt to stop analysts or other hackers from reverse engineering the code. However, it took a matter of minutes to thwart their efforts.
Cryptojacking 2.0?
Figure 8: Cleaned up version of the de-obfuscated code.
The cleaned up code indicates that the malware attempts to set up a connection to teneo[.]pro, which appears to belong to a Web3 startup company.
Teneo appears to be a legitimate company, with Crunchbase reporting that they have raised USD 3 million as part of their seed round [1]. Their service allows users to join a decentralized network, to “make sure their data benefits you” [2]. Practically, their node functions as a distributed social media scraper. In exchange for doing so, users are rewarded with “Teneo Points”, which are a private crypto token.
The malware script simply connects to the websocket and sends keep-alive pings in order to gain more points from Teneo and does not do any actual scraping. Based on the website, most of the rewards are gated behind the number of heartbeats performed, which is likely why this works [2].
Checking out the attacker’s dockerhub profile, this sort of attack seems to be their modus operandi. The most recent container runs an instance of the nexus network client, which is a project to perform distributed zero-knowledge compute tasks in exchange for cryptocurrency.
Typically, traditional cryptojacking attacks rely on using XMRig to directly mine cryptocurrency, however as XMRig is highly detected, attackers are shifting to alternative methods of generating crypto. Whether this is more profitable remains to be seen. There is not currently an easy way to determine the earnings of the attackers due to the more “closed” nature of the private tokens. Translating a user ID to a wallet address does not appear to be possible, and there is limited public information about the tokens themselves. For example, the Teneo token is listed as “preview only” on CoinGecko, with no price information available.
Conclusion
This blog explores an example of Python obfuscation and how to unravel it. Obfuscation remains a ubiquitous technique employed by the majority of malware to aid in detection/defense evasion and being able to de-obfuscate code is an important skill for analysts to possess.
We have also seen this new avenue of cryptominers being deployed, demonstrating that attackers’ techniques are still evolving - even tried and tested fields. The illegitimate use of legitimate tools to obtain rewards is an increasingly common vector. For example, as has been previously documented, 9hits has been used maliciously to earn rewards for the attack in a similar fashion.
Docker remains a highly targeted service, and system administrators need to take steps to ensure it is secure. In general, Docker should never be exposed to the wider internet unless absolutely necessary, and if it is necessary both authentication and firewalling should be employed to ensure only authorized users are able to access the service. Attacks happen every minute, and even leaving the service open for a short period of time may result in a serious compromise.
Darktrace cyber analysts are world-class experts in threat intelligence, threat hunting and incident response, and provide 24/7 SOC support to thousands of Darktrace customers around the globe. Inside the SOC is exclusively authored by these experts, providing analysis of cyber incidents and threat trends, based on real-world experience in the field.
Darktrace researchers observed threat actors exploiting reports of Venezuelan President Maduro’s arrest to deliver backdoor malware. Attackers often use ongoing world events make their malicious content appear more credible, increasingly the likelihood of a successful attack.
Under Medusa’s Gaze: How Darktrace Uncovers RMM Abuse in Ransomware Campaigns
Medusa ransomware increasingly exploits remote monitoring and management (RMM) tools for persistence, lateral movement, and data exfiltration. This blog explores Medusa’s tactics, real-world detections, and how anomaly-based solutions with Autonomous Response can stop attacks.
React2Shell: How Opportunist Attackers Exploited CVE-2025-55182 Within Hours
Darktrace observed opportunistic exploitation of the React2Shell vulnerability within minutes of honeypot deployment. Attackers leveraged shell scripts, HTTP beaconing, and cryptomining activity, highlighting rapid adaptation to unpatched flaws.
Threat actors frequently exploit ongoing world events to trick users into opening and executing malicious files. Darktrace security researchers recently identified a threat group using reports around the arrest of Venezuelan President Nicolàs Maduro on January 3, 2025, as a lure to deliver backdoor malware.
Technical Analysis
While the exact initial access method is unknown, it is likely that a spear-phishing email was sent to victims, containing a zip archive titled “US now deciding what’s next for Venezuela.zip”. This file included an executable named “Maduro to be taken to New York.exe” and a dynamic-link library (DLL), “kugou.dll”.
The binary “Maduro to be taken to New York.exe” is a legitimate binary (albeit with an expired signature) related to KuGou, a Chinese streaming platform. Its function is to load the DLL “kugou.dll” via DLL search order. In this instance, the expected DLL has been replaced with a malicious one with the same name to load it.
Figure 1: DLL called with LoadLibraryW.
Once the DLL is executed, a directory is created C:\ProgramData\Technology360NB with the DLL copied into the directory along with the executable, renamed as “DataTechnology.exe”. A registry key is created for persistence in “HKCU\Software\Microsoft\Windows\CurrentVersion\Run\Lite360” to run DataTechnology.exe --DATA on log on.
Figure 2. Registry key added for persistence.
Figure 3: Folder “Technology360NB” created.
During execution, a dialog box appears with the caption “Please restart your computer and try again, or contact the original author.”
Figure 4. Message box prompting user to restart.
Prompting the user to restart triggers the malware to run from the registry key with the command --DATA, and if the user doesn't, a forced restart is triggered. Once the system is reset, the malware begins periodic TLS connections to the command-and-control (C2) server 172.81.60[.]97 on port 443. While the encrypted traffic prevents direct inspection of commands or data, the regular beaconing and response traffic strongly imply that the malware has the ability to poll a remote server for instructions, configuration, or tasking.
Conclusion
Threat groups have long used geopolitical issues and other high-profile events to make malicious content appear more credible or urgent. Since the onset of the war in Ukraine, organizations have been repeatedly targeted with spear-phishing emails using subject lines related to the ongoing conflict, including references to prisoners of war [1]. Similarly, the Chinese threat group Mustang Panda frequently uses this tactic to deploy backdoors, using lures related to the Ukrainian war, conventions on Tibet [2], the South China Sea [3], and Taiwan [4].
The activity described in this blog shares similarities with previous Mustang Panda campaigns, including the use of a current-events archive, a directory created in ProgramData with a legitimate executable used to load a malicious DLL and run registry keys used for persistence. While there is an overlap of tactics, techniques and procedures (TTPs), there is insufficient information available to confidently attribute this activity to a specific threat group. Users should remain vigilant, especially when opening email attachments.
Credit to Tara Gould (Malware Research Lead) Edited by Ryan Traill (Analyst Content Lead)
Indicators of Compromise (IoCs)
172.81.60[.]97 8f81ce8ca6cdbc7d7eb10f4da5f470c6 - US now deciding what's next for Venezuela.zip 722bcd4b14aac3395f8a073050b9a578 - Maduro to be taken to New York.exe aea6f6edbbbb0ab0f22568dcb503d731 - kugou.dll
Under Medusa’s Gaze: How Darktrace Uncovers RMM Abuse in Ransomware Campaigns
What is Medusa Ransomware in 2025?
In 2025, the Medusa Ransomware-as-a-Service (RaaS) emerged as one of the top 10 most active ransomware threat actors [1]. Its growing impact prompted a joint advisory from the US Cybersecurity and Infrastructure Security Agency (CISA) and the Federal Bureau of Investigation (FBI) [3]. As of January 2026, more than 500 organizations have fallen victim to Medusa ransomware [2].
Darktrace previously investigated Medusa in a 2024 blog, but the group’s rapid expansion and new intelligence released in late 2025 has lead Darktrace’s Threat Research team to investigate further. Recent findings include Microsoft’s research on Medusa actors exploiting a vulnerability in Fortra’s GoAnywhere MFT License Servlet (CVE-2025-10035)[4] and Zencec’s report on Medusa’s abuse of flaws in SimpleHelp’s remote support software (CVE-2024-57726, CVE-2024-57727, CVE-2024-57728) [5].
Reports vary on when Medusa first appeared in the wild. Some sources mention June 2021 as the earliest sightings, while others point to late 2022, when its developers transitioned to the RaaS model, as the true beginning of its operation [3][11].
Madusa Ransomware history and background
The group behind Medusa is known by several aliases, including Storm-1175 and Spearwing [4] [7]. Like its mythological namesake, Medusa has many “heads,” collaborating with initial access brokers (IABs) and, according to some evidence, affiliating with Big Game Hunting (BGH) groups such as Frozen Spider, as well as the cybercriminal group UNC7885 [3][6][13].
Use of Cyrillic in its scripts, activity on Russian-language cybercrime forums, slang unique to Russian criminal subcultures, and avoidance of targets in Commonwealth of Independent States (CIS) countries suggest that Medusa operates from Russia or an allied state [11][12].
Medusa ransomware should not be confused with other similarly named malware, such as the Medusa Android Banking Trojan, the Medusa Botnet/Medusa Stealer, or MedusaLocker ransomware. It is easily distinguishable from these variants because it appends the extension .MEDUSA to encrypted files and drops the ransom note !!!READ_ME_MEDUSA!!!.txt on compromised systems [8].
Who does Madusa Ransomware target?
The group appears to show little restraint, indiscriminately attacking organizations across all sectors, including healthcare, and is known to employ triple extortion tactics whereby sensitive data is encrypted, victims are threatened with data leaks, and additional pressure is applied through DDoS attacks or contacting the victim’s customers, rather than the more common double extortion model [13].
Madusa Ransomware TTPs
To attain initial access, Medusa actors typically purchase access to already compromised devices or accounts via IABs that employ phishing, credential stuffing, or brute-force attacks, and also target vulnerable or misconfigured Internet-facing systems.
Between December 2023 and November 2025, Darktrace observed multiple cases of file encryption related to Medusa ransomware across its customer base. When enabled, Darktrace’s Autonomous Response capability intervened early in the attack chain, blocking malicious activity before file encryption could begin.
Some of the affected were based in Europe, the Middle East and Africa (EMEA), others in the Americas (AMS), and the remainder in the Asia-Pacific and Japan region. The most impacted sectors were financial services and the automotive industry, followed by healthcare, and finally organizations in arts, entertainment and recreation, ICT, and manufacturing.
Remote Monitoring and Management (RMM) tool abuse
In most customer environments where Medusa file encryption attempts were observed, and in one case where the compromise was contained before encryption, unusual external HTTP connections associated with JWrapper were also detected. JWrapper is a legitimate tool designed to simplify the packaging, distribution, and management of Java applications, enabling the creation of executables that run across different operating systems. Many of the destination IP addresses involved in this activity were linked to SimpleHelp servers or associated with Atera.
Medusa actors appear to favor RMM tools such as SimpleHelp. Unpatched or misconfigured SimpleHelp RMM servers can serve as an initial access vector to the victims’ infrastructure. After gaining access to SimpleHelp management servers, the threat actors edit server configuration files to redirect existing SimpleHelp RMM agents to communicate with unauthorized servers under their control.
The SimpleHelp tool is not only used for command-and-control (C2) and enabling persistence but is also observed during lateral movement within the network, downloading additional attack tools, data exfiltration, and even ransomware binary execution. Other legitimate remote access tools abused by Medusa in a similar manner to evade detection include Atera, AnyDesk, ScreenConnect, eHorus, N-able, PDQ Deploy/Inventory, Splashtop, TeamViewer, NinjaOne, Navicat, and MeshAgent [4][5][15][16][17].
Data exfiltration
Another correlation among Darktrace customers affected by Medusa was observed during the data exfiltration phase. In several environments, data was exfiltrated to the endpoints erp.ranasons[.]com or pruebas.pintacuario[.]mx (143.110.243[.]154, 144.217.181[.]205) over ports 443, 445, and 80. erp.ranasons[.]com was seemingly active between November 2024 and September 2025, while pruebas.pintacuario[.]mx was seen from November 2024 to March 2025. Evidence suggests that pruebas.pintacuario[.]mx previously hosted a SimpleHelp server [22][23].
Apart from RMM tools, Medusa is also known to use Rclone and Robocopy for data exfiltration [3][19]. During one Medusa compromise detected in mid-2024, the customer’s data was exfiltrated to external destinations associated with the Ngrok proxy service using an SSH-2.0-rclone client.
Medusa Compromise Leveraging SimpleHelp
In Q4 2025, Darktrace assisted a European company impacted by Medusa ransomware. The organization had partial Darktrace / NETWORK coverage and had configured Darktrace’s Autonomous Response capability to require manual confirmation for all actions. Despite these constraints, data received through the customer’s security integration with CrowdStrike Falcon enabled Darktrace analysts to reconstruct the attack chain, although the initial access vector remains unclear due to limited visibility.
In late September 2025, a device out of the scope of Darktrace's visibility began scanning the network and using RDP, NTLM/SMB, DCE_RPC, and PowerShell for lateral movement.
CrowdStrike “Defense Evasion: Disable or Modify Tools” alerts related to a suspicious driver (c:\windows\[0-9a-b]{4}.exe) and a PDQ Deploy executable (share=\\<device_hostname>\ADMIN$ file=AdminArsenal\PDQDeployRunner\service-1\exec\[0-9a-b]{4}.exe) suggest that the attackers used the Bring Your Own Vulnerable Driver (BYOVD) technique to terminate antivirus processes on network devices, leveraging tools such as KillAV or AbyssWorker along with the PDQ Software Deployment solution [19][26].
A few hours later, Darktrace observed the same device that had scanned the network writing Temp\[a-z]{2}.exe over SMB to another device on the same subnet. According to data from the CrowdStrike alert, this executable was linked to an RMM application located at C:\Users\<compromised_user>\Documents\[a-z]{2}.exe. The same compromised user account later triggered a CrowdStrike “Command and Control: Remote Access Tools” alert when accessing C:\ProgramData\JWrapper-Remote Access\JWrapper-Remote Access Bundle-[0-9]{11}\JWrapperTemp-[0-9]{10}-[0-9]{1}-app\bin\windowslauncher.exe [27].
Figure 1: An executable file associated with the SimpleHelp RMM tool being written to other devices using the SMB protocol, as detected by Darktrace.
Soon after, the destination device and multiple other network devices began establishing connections to 31.220.45[.]120 and 213.183.63[.]41, both of which hosted malicious SimpleHelp RMM servers. These C2 connections continued for more than 20 days after the initial compromise.
CrowdStrike integration alerts for the execution of robocopy . "c:\windows\\" /COPY:DT /E /XX /R:0 /W:0 /NP /XF RunFileCopy.cmd /IS /IT commands on several Windows servers, suggested that this utility was likely used to stage files in preparation for data exfiltration [19].
Around two hours later, Darktrace detected another device connecting to the attacker’s SimpleHelp RMM servers. This internal server had ‘doc’ in its hostname, indicating it was likely a file server. It was observed downloading documents from another internal server over SMB and uploading approximately 70 GiB of data to erp.ranasons[.]com (143.110.243[.]154:443).
Figure 2: Data uploaded to erp.ranasons[.]com and the number of model alerts from the exfiltrating device, represented by yellow and orange dots.
Darktrace’s Cyber AI Analyst autonomously investigated the unusual connectivity, correlating the separate C2 and data exfiltration events into a single incident, providing greater visibility into the ongoing attack.
Figure 3: Cyber AI Analyst identified a file server making C2 connections to an attacker-controlled SimpleHelp server (213.183.63[.]41) and exfiltrating data to erp.ranasons[.]com.
Figure 4: The same file server that connected to 213.183.63[.]41 and exfiltrated data to erp.ranasons[.]com was also observed attempting to connect to an IP address associated with Moscow, Russia (193.37.69[.]154:7070).
One of the devices connecting to the attacker's SimpleHelp RMM servers was also observed downloading 35 MiB from [0-9]{4}.filemail[.]com. Filemail, a legitimate file-sharing service, has reportedly been abused by Medusa actors to deliver additional malicious payloads [11].
Figure 5: A device controlled remotely via SimpleHelp downloading additional tooling from the Filemail file-sharing service.
Finally, integration alerts related to the ransomware binary, such as c:\windows\system32\gaze.exe and <device_hostname>\ADMIN$ file=AdminArsenal\PDQDeployRunner\service-1\exec\gaze.exe, along with “!!!READ_ME_MEDUSA!!!.txt” ransom notes were observed on network devices. This indicates that file encryption in this case was most likely carried out directly on the victim hosts rather than via the SMB protocol [3].
Conclusion
Threat actors, including nation-state actors and ransomware groups like Medusa, have long abused legitimate commercial RMM tools, typically used by system administrators for remote monitoring, software deployment, and device configuration, instead of relying on remote access trojans (RATs).
Attackers employ existing authorized RMM tools or install new remote administration software to enable persistence, lateral movement, data exfiltration, and ingress tool transfer. By mimicking legitimate administrative behavior, RMM abuse enables attackers to evade detection, as security software often implicitly trusts these tools, allowing attackers to bypass traditional security controls [28][29][30].
To mitigate such risks, organizations should promptly patch publicly exposed RMM servers and adopt anomaly-based detection solutions, like Darktrace / NETWORK, which can distinguish legitimate administrative activity from malicious behavior, applying rapid response measures through its Autonomous Response capability to stop attacks in their tracks.
Darktrace delivers comprehensive network visibility and Autonomous Response capabilities, enabling real-time detection of anomalous activity and rapid mitigation, even if an organization fall under Medusa’s gaze.
Credit to Signe Zaharka (Principal Cyber Analyst) and Emma Foulger (Global Threat Research Operations Lead
Edited by Ryan Traill (Analyst Content Lead)
Appendices
List of Indicators of Compromise (IoCs)
IoC - Type - Description + Confidence + Time Observed
185.108.129[.]62 IP address Malicious SimpleHelp server observed during Medusa attacks (High confidence) - March 7, 2023
185.126.238[.]119 IP address Malicious SimpleHelp server observed during Medusa attacks (High confidence) - November 26-27, 2024
213.183.63[.]41 IP address Malicious SimpleHelp server observed during Medusa attacks (High confidence) - November 28, 2024 - Sep 30, 2025
213.183.63[.]42 IP address Malicious SimpleHelp server observed during Medusa attacks (High confidence) - July 4 -9 , 2024
31.220.45[.]120 IP address Malicious SimpleHelp server observed during Medusa attacks (High confidence) - September 12 - Oct 20 , 2025
91.92.246[.]110 IP address Malicious SimpleHelp server observed during Medusa attacks (High confidence) - May 24, 2024
45.9.149[.]112:15330 IP address Malicious SimpleHelp server observed during Medusa attacks (High confidence) - June 21, 2024
89.36.161[.]12 IP address Malicious SimpleHelp server observed during Medusa attacks (High confidence) - June 26-28, 2024
193.37.69[.]154:7070 IP address Suspicious RU IP seen on a device being controlled via SimpleHelp and exfiltrating data to a Medusa related endpoint - September 30 - October 20, 2025
erp.ranasons[.]com·143.110.243[.]154 Hostname Data exfiltration destination - November 27, 2024 - September 30, 2025
pruebas.pintacuario[.]mx·144.217.181[.]205 - Hostname Data exfiltration destination - November 27, 2024 - March 26, 2025
lirdel[.]com · 44.235.83[.]125/a.msi (1b9869a2e862f1e6a59f5d88398463d3962abe51e19a59) File & hash Atera related file downloaded with PowerShell - June 20, 2024
wizarr.manate[.]ch/108.215.180[.]161:8585/$/1dIL5 File Suspicious file observed on one of the devices exhibiting unusual activity during a Medusa compromise - February 28, 2024
!!!READ_ME_MEDUSA!!!.txt" File - Ransom note
*.MEDUSA - File extension File extension added to encrypted files
gaze.exe – File - Ransomware binary
Darktrace Model Coverage
Darktrace / NETWORK model detections triggered during connections to attacker controlled SimpleHelp servers:
Anomalous Connection/Anomalous SSL without SNI to New External
Anomalous Connection/Multiple Connections to New External UDP Port
Anomalous Connection/New User Agent to IP Without Hostname