Abstract overhead

Amatera Stealer: Rebranded ACR Stealer With Improved Evasion, Sophistication

Share with your network!

Key takeaways 

  • Proofpoint identified a new, rebranded stealer based on ACR Stealer called Amatera Stealer.  
  • It is delivered via web injects featuring sophisticated attack chains. 
  • Significant portions of code overlap with existing ACR Stealer analysis. 
  • Amatera Stealer, which is sold as a malware-as-a-service (MaaS), is actively in development. 
  • Recent updates to Amatera Stealer introduced interesting anti-analysis features, improving the sophistication of the malware. 
  • Recent builds of Amatera Stealer no longer use Steam/Telegram dead drops for command and control (C2). 
  • As information stealers become increasingly popular across the landscape, identification, reverse engineering, and detection of such emerging threats is vital. 

Overview 

Proofpoint has been closely monitoring a stealer malware formerly known as ACR Stealer. In 2025, Proofpoint analysts identified a new, unnamed malware exhibiting significant code overlap, shared features, and capabilities with ACR Stealer. Further investigation revealed that ACR Stealer was significantly updated and rebranded as Amatera Stealer. While Amatera Stealer retains the core of its predecessor, it has undergone enough development and enhancement to stand out as a distinct and noteworthy threat. 

Figure 1

Figure 1: Pricing information for Amatera Stealer from a publicly accessible panel. 

The Amatera panels allow any visitor to create an account. After creating an account and signing in, it’s possible to purchase the service straight from the panel. Amatera is available for purchase via subscription plans that range from $199 per month to $1,499 for a year subscription. Like many malware-as-a-service (MaaS) offerings, Amatera customer service support is offered through Telegram messenger.  

Interestingly, in July 2024, the ACR Support channel on Telegram announced the suspension of ACR Stealer sales, but that it wasn't a goodbye from the team.  

Figure 2

Figure 2: Post on ACR Stealer Telegram channel (left) and machine translation of the post (right).  

This was the final post in that channel, and in December 2024 the first public mentions and scans of the Amatera Stealer panel surfaced online. This wouldn't be the first time the creator of this malware family has rebranded the stealer. According to reporting from Sekoia, it was likely previously sold under a different name linked to the GrMsk Stealer. 

Information stealers, especially those sold as MaaS options, are very popular for cybercriminal threat actors. With the disruption of Lumma Stealer, the most popular MaaS information stealer on the market, threat actors may be looking for other options. It is likely Amatera Stealer will become more popular in the threat landscape as another option for threat actors.  

Campaign analysis 

Proofpoint observed Amatera Stealer distributed via ClearFake website injects in April and May 2025. ClearFake is a web inject activity cluster that compromises legitimate websites with malicious HTML and JavaScript.   

In the observed email-based campaigns, messages contained links to compromised websites. Although it’s likely neither the sender nor the site owner intended harm, the websites were compromised with a malicious injection. This injection prompted the website to load a malicious script hosted on the blockchain via Binance’s Smart Chain contracts, a technique referred to as “EtherHiding.” This then loaded a secondary script from a URL controlled by the attacker. The functionality of the second script changes over time, but it is currently used to create an overlay of the compromised website to present a fake and localized CAPTCHA instructing users to verify they are human. The full chain is described below. 

ClearFake campaigns have led to Amatera Stealer as well as Lumma Stealer and Rhadamanthys. Third-party researchers have also observed Amatera Stealer distributed via software cracks or fake software downloads.  

ClearFake update 

The ClearFake cluster, known for compromising websites to trick users into executing malicious code, continues to demonstrate innovation. This cluster was among the earliest to adopt both the EtherHiding technique and the ClickFix method, a term Proofpoint introduced in June 2024 detailing social engineering chains leveraging both clipboard access and the Windows Run dialog or PowerShell terminal. The ClickFix term has since been adopted industry wide.  

Since Proofpoint’s last update, ClearFake has continued to evolve its use of EtherHiding by adding new obfuscation layers, encryption, and staging logic to improve stealth and bypass defenses. As EtherHiding has been extensively covered by the research community, this blog focuses on a new ClickFix payload observed in May 2025.  

Notably, on May 16, there was a transaction to the current ClearFake smart chain contract, zeroing out the payload. This means that while many websites are still compromised, it will not lead to the ClickFix instruction, and the compromise can't be visually identified. Proofpoint has not determined the reason for the removal of the payload, but in practice, any of the compromised websites could start serving the malicious payload if the contract was updated again. 

Campaign example 

In the third week of May 2025, Proofpoint observed a notable ClearFake campaign leveraging the ClickFix technique leading to Amatera Stealer. When users visited a website compromised by ClearFake, the users were presented with a fake CAPTCHA, asking users to prove they are not a robot. This simple lure triggered the ClickFix technique, where users were instructed to press Windows key + R to open an alleged “verification window”, but actually opened a Windows Run dialog box.  

 

Figure 3

Figure 3: Fake CAPTCHA verification. 

The next step instructed the user to press Ctrl+V, which pastes the command into the Windows Run dialog, followed by the final step of pressing Enter to run the command. The command observed: 

Figure 4

Figure 4: ClickFix PowerShell command.

This command uses PowerShell to download a malicious C# project file (.csproj) from a remote server using Invoke-RestMethod (irm), saves it to the temporary directory, and then executes it using msbuild.exe — a legitimate .NET build tool included in Windows. 

Figure 4

Figure 5: Decoded second-stage payload. 

The .csproj file contained obfuscated logic that reconstructs and runs another layer of Base64-encoded PowerShell using the Exec task within the build process. 
 
When decoded, the second-stage payload revealed code like the following (reformatted for readability): 

Figure 5

Figure 6: Decoded payload URL invoking PowerShell. 

This multilayered loader uses: 

  • Wildcard matching (clike) to dynamically find method names. 
  • Reflection and indirect method invocation to execute code without calling functions by name. 

The obfuscated code above effectively resolves to the following: 

Figure 7

Figure 7: Payload URL 

This third PowerShell script is again heavily obfuscated and uses XOR encoding to eventually run a script called “Early Bird + Context Hijack Injector x86/x64 PowerShell” which is well-documented with comments in the script. The script first disables PowerShell logging and suppresses output by setting all preference variables (such as ErrorActionPreference, VerbosePreference, etc.) to SilentlyContinue and overriding built-in functions like Write-Host. It then uses the open-source project Null-AMSI to bypass AMSI (AntiMalware Scan Interface) and disable Event Tracing for Windows (ETW). 

Finally, the script performs a shellcode injection routine using a combination of Early Bird and Context Hijack techniques. It begins with the Early Bird injection by launching a legitimate Windows process — OpenWith.exe — in a suspended state, meaning the process is created but not yet allowed to run.  

The script then downloads the shellcode from a remote server directly into memory via a variable, allocates executable memory inside the suspended process, and writes the shellcode into that space. 

Next, it uses context hijacking by retrieving and modifying the CPU context of the suspended thread — specifically changing the instruction pointer (EIP) so that when the process is resumed, it begins executing the injected shellcode instead of its original code. 
 
The executed shellcode is believed, based on external research, to have been generated using the open-source tool Clematis. This shellcode ultimately runs Amatera Stealer. 

Malware analysis 

Overview 

Amatera Stealer is a stealer written in C++ which is actively being developed and maintained as a MaaS. The rebranded malware is equipped with new features, including improved stealer capabilities and evasion features used to circumvent detection. The second part of this blog explores several noteworthy developments in the malware, including its use of NTSockets for command and control (C2), the adoption of direct WoW64 system calls (Syscalls), and other recent changes in its behavior. 

Malware initialization 

The Amatera Stealer samples observed by Proofpoint in May 2025 did not package the malware configuration within the binary itself. Instead, the malware initiates contact with its configured command and control (C2) server via HTTP shortly after execution. The goal is to receive a response from the C2 with an encoded, JSON-formatted configuration used to determine the malware’s next actions. 

C2 initialization 

The code used to initialize contact with the C2 at this stage leverages NTSockets by interfacing with the device “\\Device\\Afd\\Endpoint” directly, rather than using the Winsock library. Proofpoint believes the use of NTSockets is primarily to increase the stealthiness of the malware’s C2 communication. Interfacing directly with the AFD device, as implemented by NTSockets, effectively bypasses almost all commonly used Windows networking APIs which many EDR and analysis tools rely on for visibility into HTTP requests. 

Figure 8

Figure 8: Pseudocode of Amatera Stealer’s implementation of the NTSocket CreateTcpSocket functionality. 

The code in Figure 8 shows a partially defined structure used to set up the AFD endpoint to create a socket. The NTSockets project hardcodes this structure, but Proofpoint analysts note that it mostly aligns with the AFD_CREATE_PACKET structure defined in an UnknownCheats forum post. The forum post itself is clearly inspired by NTSockets. Interestingly, we found several similarities between code in this malware and the code from the UnknownCheats forum post — most notably with some socket helper functions, as well as the absence of the CreateEvent API as implemented in NTSockets. 

Another significant deviation from NTSockets is that the malware does not use DNS. Instead, the malware is programmed to reach out to its C2 by IP address. The IP address is not owned by the threat actor, but is a public Content Delivery Network (CDN) endpoint IP address. In this sample, the CDN is Cloudflare. After establishing a TCP connection, the malware will add a host header to the HTTP request with a hard-coded host name which has no DNS resolution. Figure 8 below denotes code in the malware which establishes a connection to the C2, followed by setup required to initiate an HTTP request. 

Figure 9

Figure 9: Pseudocode for C2 initialization and initial check-in. 

Proofpoint believes this quirky C2 initialization is intentional. While investigating, it was noted that the hostname wasn’t resolvable with DNS and attempts to access the C2 using a browser were met with a Cloudflare intercepted response saying that Direct IP access to the webpage is disallowed. This buys the malware author a few benefits: 

  • Security Operations may be reluctant to block the IP address or alert on it, because it belongs to a legitimate CDN (Cloudflare) that is also used by non-malicious websites 
  • The domain name also can’t be blocked or alerted on through DNS monitoring, because there is no DNS lookup of the domain name 
  • No need to implement UDP support using NTSockets 
  • Allows for an additional layer of protection (Cloudflare in this case) to prevent potential meddling from researchers/analysts 

Samples of Amatera Stealer observed in May 2025 contain code which suggests new support for HTTPS requests, but we have not yet observed this feature utilized by any samples within Proofpoint’s visibility. The code to support HTTPS requests is as follows: 

  • AcquireCredentialsHandleA (Using Microsoft Unified Security Protocol Provider) 
  • InitializeSecurityContextA (pszTargetName argument is hardcoded to amaprox[.]icu) 
  • EncryptMessage + DecryptMessage 

Pivoting from the target name in the InitializeSecurityContextA API, Proofpoint analysts noted a response from an HTTP server which displayed a login page to the panel for Amatera Stealer. 

Figure 10

Figure 10: C2 Panel for Amatera Stealer. 

Through hunting in VirusTotal, Proofpoint researchers discovered  samples of Amatera Stealer that make use of this HTTPS C2. One slight change in these samples is the malware no longer hardcodes amaprox[.]icu into the pszTargetName argument of InitializeSecurityContextA, but it instead parses the previously created buffer of HTTP headers, extracting the hostname from the host header. 

Dynamic API resolution and execution using WoW64 Syscalls 

Another interesting feature that was not previously documented relative to this malware is its use of WoW64 Syscalls. Similar in concept to Indirect Syscalls, this sample defines various functions that stage a Windows API to be resolved and executed dynamically. This method of calling Windows APIs was likely introduced to bypass user-mode hooking techniques used by sandboxes and some EDR. Since NTSockets is exclusively using APIs from NTDLL, the malware can walk the Export Address Table of NTDLL to locate the functions it needs to execute. To facilitate execution of the syscall of the desired API, the malware will extract the System Service Number (SSN) by looking for the instruction “mov eax, imm32” which has the op code B8 <dword for SSN>. The malware assumes the subsequent DWORD after the B8 opcode is the SSN for the desired API. 
 
The general flow of these function stubs are as follows: 

1) Define a function stub in which: 

  • Argument 0 is the name of the function 
  • Subsequent arguments are passed to the function specified in argument 0 

2) The function stub accesses the Process Environment Block (PEB) 

3) Gets the NTDLL Export Address Table (EAT) base address 

4) Searches for the requested function name, if found, it creates a hash of the function name using a modified version of djb2 (see Figure 10 for implementation) 

5) It looks up the function by hash and saves off some information 

  • Address of the function 
  • SSN of the function

6) Stores the SSN in a global variable 

7) Calls WoW64Transition (call  large dword ptr fs:0C0h) 

 

Figure 11

Figure 11: Modified djb2 hashing function. 

Figures 12 - 16 show code responsible for resolving and calling an API call with 11 arguments. 

Figure 12

Figure 12: The stub for calling a WoW64 Syscall that requires 11 arguments.

Figure 13

Figure 13: The function responsible for extracting the function address and SSN. 

Figure 14

Figure 14: The function that sets the SSN prior to calling the WoW64 Syscall. 

Figure 15

Figure 15: Disassembly of the function stub that calls the WoW64 Syscall. 

Figure 16

Figure 16: Disassembly of function stub for a system call with 11 arguments. 

Command and control: 

The C2 for Amatera Stealer is largely the same as what was previously documented by AhnLab.  One notable change likely stems from the introduction of an HTTP-based C2 using NTSockets. The malware author appears to directly connect to a hardcoded C2 instead of the previously seen C2 method utilizing intermediary dead-drop resolvers such as Steam, Telegram, or Google Docs. The format of the C2 traffic remains unchanged, continuing to use Base64 encoded data which is then XOR encoded with a hardcoded key. Reversing this encoding yields a JSON blob which has the configuration for the malware. A recent addition to the malware configuration in a JSON key named “ld” (the first character is a lowercase L, probably short for “load”), which is used to execute additional payloads. 

Figure 17

Figure 17: Snippet of HTTP request/response for initial C2 check-in. 

Figure 18

Figure 18: Decoded configuration structure from C2 instructing the malware to execute additional payloads. 

There are various JSON parsing functions in the malware’s entry point function that take an input of some small strings which align exactly to the configuration keys that are given from the C2. Analyzing the code that accesses the newly added ld key helps identify the specific JSON parsing function that handles this new functionality.

Figure 19

Figure 19: JSON parsing for the second stage “loader” key. 

The pseudocode in Figure 19 makes it evident that the tf key is used as a descriptor for a file type which applies the correct file extension to add to the downloaded file. The JSON key tr appears to define what type of payload to run. When the value is set to 1, the sample is executed using ShellExecuteA. If the value is set to 2, the payload is assumed to be a string passed into a PowerShell command line to be used with the DownloadString command and subsequently executed with Invoke-Expression (IEX). Additionally, if the value is set to 1 and the file type is a PowerShell script, the malware will just run the payload with PowerShell using ShellExecuteA instead of running the payload directly. 

Malware capabilities 

Amatera Stealer currently focuses on stealing information from installed software like browsers, crypto wallets and other software depending on what configuration options it receives from its C2. It accomplishes this by searching the file system with glob-syntax search patterns using NtCreateFile and NtQueryDirectoryFile. Proofpoint analysts note that most of the stealer feature set focuses on: 

  • Stealing files on disk for file paths pertaining to software wallets 
  • Stealing files on disk that match a specific extension or keyword 
  • Stealing browser data relating to Cookies, Web Forms, Profile Data (web history) 
  • Bypasses App Bound Encryption for Chrome-related browsers by injecting a shellcode into the browser which causes it to copy sensitive files to a location that can be exfiltrated by the malware 
  • Stealing files relating to browser extensions: 
    • Password Managers 
    • Crypto Wallets 
  • Stealing files on disk relating to common email clients and connection management software (SSH/FTP) 
  • Stealing files on disk relating to common messenger applications (Signal/WhatsApp/XMPP Clients/etc.) 

In addition to the stealer functionalities, Amatera Stealer is also capable of running secondary payloads. It currently supports the following: 

  • Downloading and executing files with extensions of .exe, .cmd, .dll, and .ps1 using the ShellExecuteA Windows API 
  • Downloading and executing a .ps1 script using PowerShell’s DownloadString and executing it using Invoke-Expression (IEX) 

Upon completion of each function, the malware will submit a POST request with data that is collected by the function responsible for handling capabilities enabled from the initial configuration from the C2.  

Figure 20

Figure 20: Pseudocode for a stealer module to exfiltrate data to the hardcoded C2. 

Conclusion 

Amatera Stealer is actively undergoing improvements to make the malware stealthier from detection by automated analysis as well as endpoint detection agents. By implementing NTSockets functionality to interface with its C2, the malware is able to bypass almost all commonly used networking functions that are hooked by EDRs. Using WoW64 Syscalls may allow the malware to bypass analysis software which implements only user-mode API hooks. 

While the malware is undergoing active development to improve sophistication, it’s also being used by threat actors with clever attack chains featuring unusual obfuscation and filtering, as well as the ClickFix social engineering technique. Organizations should be aware of the entire attack chain and implement defenses against it, including educating users about common lure techniques by incorporating them into existing security training, and restricting average users from running unauthorized PowerShell scripts.  

ET signatures 

2052674 - ET MALWARE ACR/Amatera Stealer CnC Checkin Attempt 

2062510 - ET MALWARE ACR/Amatera Stealer CnC Exfil (POST) M1 

2062511 - ET MALWARE ACR/Amatera Stealer CnC Exfil (POST) M2 

IOCs 

SHA256 

Notes 

120316ecaf06b76a564ce42e11f7074c52df6d79b85d3526c5b4e9f362d2f1c2 

Amatera Stealer: NTSockets usage, no HTTPS support, no support for second stage malware 

7d91a585583f4aa1a3ab3cb808d7bc351d6140b3ae1deeef9d51c6414c11baea 

Amatera Stealer: NTSockets usage, HTTPS support 

120316ecaf06b76a564ce42e11f7074c52df6d79b85d3526c5b4e9f362d2f1c2 

Amatera Stealer: NTSockets usage, no HTTPS support, no support for second stage malware 

35eb93548a0c037d392f870c05e0e9fb1aeff3a5a505e1d4a087f7465ed1f6af 

Amatera Stealer: NTSockets usage, HTTPS C2 

2960d5f8a3d9b0a21d6b744092fe3089517ecf2e49169683f754bfe9800e3991 

ClearFake ClickFix csproj payload 

ad9ffd624e27070092ff18a10e33fa9e2784b2c75ac9ac4540fa81cf5bd84e55 

ClearFake second stage PowerShell 

055a883f18ffcc413973fa45383e72e998aae87909af5f9507b6384bfec34a5b 

ClearFake shellcode leading to Amatera 

IP Address 

Notes 

104.21.80[.]1 

Amatera C2, associated with hardcoded host overplanteasiest[.]top 

172.67.178[.]5 

Amatera C2, associated with hardcoded host header badnesspandemic[.]shop  

Domain/URL 

Notes 

amaprox[.]icu 

Amatera Infrastructure for HTTPS security context initialization 

b1[.]talismanoverblown[.]com 

Amatera Infrastructure for HTTPS security context initialization and C2 

https[:]//cv[.]cbrw[.]ru/t[.]csproj 

ClearFake ClickFix csproj payload 

https[:]//tt[.]cbrw[.]ru/vb7to8[.]psd 

ClearFake second stage PowerShell 

https[:]//cv[.]cbrw[.]ru/init1[.]bin 

ClearFake shellcode leading to Amatera 

Other IOCs 

Notes 

0x80d31D935f0EC978253A26D48B5593599B9542C7 

ClearFake smart contract address on BNB Smart Chain Testnet