Search/raw[.]githubusercontent[.]com
● IOC

raw[.]githubusercontent[.]com

Type
DOMAIN
Source
News extraction
First seen
Jul 30, 2025
Last seen
Oct 22, 2026
Look up on VirusTotal
Related Stories
2
LiteLLM release pipeline hacked to distribute info-stealer malware
Hackers compromised the LiteLLM project’s PyPI package and published malicious Docker images with a payload that steals credentials, secrets, and environment variables. The supply-chain attack affected all PyPI wheels (.whl installation packages) for LiteLLM version 1.107.0, impacting Windows, Linux, and macOS systems. LiteLLM is an open-source Python SDK and AI gateway that enables applications to access AI models from different providers through a common API. It is a massively popular project with 61,800 GitHub stars, 92 million monthly downloads on PyPI, and is used by high-profile companies like NVIDIA, Netflix, AT&T, and Okta. The project says that the release pipeline was compromised on October 21 and a threat actor pushed version 1.107.0 to the Docker registry and PyPI. "This version contained compiled malware which steals credentials and loads remote-code execution tools," the maintainer says, adding that customers running the private enterprise were not impacted. In a post-mortem of the incident, the maintainer says that the following LiteLLM artifacts were affected in the attack: PyPI: litellm==1.107.0: all seven wheels, live from 11:39:51 to 13:23 UTC Docker Hub: v1.107.0, latest, main-latest, and main-stable: pointed to compromised image index sha256:1bbcb1443bc962e45f5aad53fe3d2c30600e0379715fb6c664cdd3ac126c339e from 11:46:56 to 14:20 UTC GHCR: v1.107.0, latest, main-latest, and main-stable: pointed to the compromised image indexes below from 11:46:56 UTC until they were made unavailable by 13:51 UTC - ghcr.io/berriai/litellm: sha256:1bbcb1443bc9… - ghcr.io/berriai/litellm-database: sha256:c00f9d92c427… - ghcr.io/berriai/litellm-non_root: sha256:7b00e91cd2fe… Multiple application security companies detected the attack within six minutes of publishing the malicious LiteLLM version and analyzed the payload. According to the researchers, the attacker did not touch the LiteLLM application code and modified only the installation package to place three malicious files (cook.pth, cook.py, and sitecustomize.py) in the environment's Python’s library directory. "During normal startup, Python processes executable .pth lines and then attempts to import sitecustomize," Socket researchers explain. Endor Labs notes that this way the payloads are executed before the application every time Python is launched in the environment. Running Python or pip to investigate an affected installation also triggered the malware. The malware targeted the following data: Cloud and deployment credentials: AWS, Azure, Google Cloud, Kubernetes, Docker, and infrastructure-management secrets. AI credentials and configuration: Authentication files for AI development tools, plus LiteLLM’s stored provider credentials and model settings. Developer secrets and private keys: Git, GitHub, npm, PyPI, and CI/CD credentials; .env files; SSH, GPG, and TLS keys. Browser data: Saved login, cookie, autofill/payment, and browsing-history databases. Host and runtime data: Environment variables, shell and application histories, and system and network information. The stolen data is encrypted using an AES-256-CBC key that is encrypted with an RSA-4096 key and then uploaded to ‘litellm[.]dev/healthcheck’ One of the malicious files, sitecustomize.py, launches a detached loader that checks a GitHub-hosted pointer every hour and downloads Python from an external server for execution on the host. The malicious packages have been removed, but potentially impacted users should stop affected deployments and inspect environments without launching the Python interpreter. Infected systems should be isolated and rebuilt from clean backups, and all exposed secrets should be rotated immediately. Removing the LiteLLM package directory alone may leave startup files or an active loader behind. Currently, the recommended recovery version is LiteLLM 1.106.2, which is the latest clean release before the attack. Previously, the project also suffered a breach in March, when the TeamPCP hacking group published malicious LiteLLM versions on PyPI after breaching Aqua Security's Trivy vulnerability scanner used in LiteLLM's CI/CD pipeline. Overall prevention scores can hide what happens after initial access. Once attackers are using valid credentials, prevention drops sharply. The Blue Report 2026 measures defenses technique by technique across 338 million simulations run in customer production environments. Get the report
1 shared
Oct 24, 2026
CISA alerts of active exploitation of three Linux kernel flaws
The U.S. Cybersecurity and Infrastructure Security Agency (CISA) is warning that hackers are exploiting three Linux kernel vulnerabilities, one of them rated critical. The three security issues were added separately last week and have severity ratings ranging from medium to critical. One of them, tracked as CVE-2025-39964, existed in the Linux kernel for 14 years. CISA marked all three flaws with the highest priority for federal agencies, ordering them to apply available security updates and mitigations by the end of today. The three vulnerabilities are: CVE-2025-39964: a race condition in the kernel’s AF_ALG cryptographic socket interface that allows concurrent writes to corrupt per-socket state and potentially crash systems or alter cryptographic results. CVE-2026-53266: an out-of-bounds write vulnerability in the Linux kernel’s ebtables SNAT implementation that can cause an ARP address rewrite to modify shared file-backed memory without first making the affected packet range writable. CVE-2025-39682: a Linux kernel TLS receive-path logic flaw that mishandles zero-length records queued for later processing, potentially allowing different TLS record types to be processed together when kTLS is in use. CISA says [1, 2] the vulnerabilities have been exploited in attacks but has not revealed any details about the incidents or the nature of the threat actors. Offensive security company STAR Labs found CVE-2025-39964, saying that its researchers found the issue with no help from an AI system. They demonstrated the vulnerability by achieving privilege escalation and container escape in Google’s kernelCTF. For CVE-2025-39682, there are public exploits available, as also confirmed by Red Hat in its security bulletin. Red Hat also confirmed a known exploit available for CVE-2026-53266. Researcher Kimmo Suominen has published a technical analysis and patch-status tracker for CVE-2026-53266 on GitHub, outlining a potential privilege-escalation path involving modifications to file-backed memory. However, the researcher notes that the proposed exploitation chain is inferred by analogy with Dirty Pipe and has not been demonstrated with public exploit code. CISA has marked all three flaws as requiring “forensic triage.” This means that for every affected asset, federal agencies need to examine it for signs that exploitation already occurred. Currently, none of the three flaws is flagged as exploited by ransomware groups. Join Mikko Hyppönen and security leaders from the NFL, CHANEL, and Atlassian for a two-hour digital summit on what AI-speed attacks change, what defenders should stop doing, and how to validate, decide, fix, and re-validate at machine speed. Save your seat
1 shared
Sep 25, 2026
Connections
7 relationships
Armored Likho expands its cyber-espionage toolkit
In May 2026, we discovered a new cyber-espionage campaign by the Armored Likho group, also known as Eagle Werewolf, that targets private individuals and organizations across various industries in Russia, including major corporations, the public sector, IT, and education. The attackers used a fake app as bait that mimics a service for donations. However, the most interesting part of this campaign isn’t the initial infection method – it’s the malicious implants the attackers use for cyber-espionage. We’ve written previously about recent Armored Likho attacks, but our analysis shows that the campaign discussed below has more in common with the group’s activity from February. That said, the attackers have significantly expanded their arsenal. During our research, we found a new cyber-espionage toolkit written in Rust: the Still Toolkit. One of its components, Still Sync, steals Telegram session data to gain ongoing access to the victim’s account. With this stolen data, attackers can leverage the Telegram API to automatically pull chat logs, media files, and other information from the account. The second component, Still Audio, is an implant for covert audio surveillance. It analyzes the incoming audio stream, automatically detects speech, records conversations, and sends the recordings to a command-and-control server. In this article, we’ll look at the initial infection method, how the new Still Toolkit components are built, and the technical details of how they operate. Kaspersky products detect this threat as Trojan.Win64.Agent.* and HEUR:Backdoor.Win32.Generic. Background Armored Likho’s malicious activity has been documented several times before: in November 2024, and in February and July 2026. The current campaign shows significant overlap with the November and February campaigns, which used malicious droppers disguised as documents and applications related to Starlink activation or fundraising efforts as the initial infection vector. This campaign also uses fundraising as its lure. At the same time, our research uncovered a number of new tools that point to the attackers expanding their capabilities. Initial infection The infection chain starts with an app that mimics a donation service. As of this writing, the app distribution method remains unknown. During our research, however, we obtained several samples posing as apps from different Russian foundations. In reality, the app is a dropper. Its developers wrote it in Rust on top of the popular Tauri framework, and it has a graphical interface designed to deceive the user. After launch, it displays a login form that asks for a password, presumably one the attackers supplied. After the user enters a valid password, they see a catalog of donatable items. The app pulls item and category information from orderapiserver[.]info through the public/categories and public/products endpoints. A clickable catalog makes the app look legitimate. While the user browses the items, the dropper quietly decrypts and launches the payload for the next stage in the background. Our analysis shows that the mechanism for decrypting the payload and launching subsequent stages hasn’t changed since the February campaign. However, we found a new cyber-espionage toolkit – the Still Toolkit – made up of two components: Still Sync and Still Audio. Still Sync Still Sync is a stealer written in Rust that steals Telegram session data. However, its capabilities don’t stop there. With this stolen data, Sync can log in to the victim’s account and pull messages and media files through the Telegram API. Architecturally, Sync is an asynchronous application based on the Tokio library. It talks to the server over gRPC and serializes messages with FlatBuffers. It supports both HTTP and HTTPS as transport protocols; the URL of the command-and-control server determines which one it uses. How it works When Sync launches, the attackers set several environment variables. Before starting any malicious activity, the implant pulls configuration parameters from these: STILL_SYNC_ADDR: the address of the command-and-control server. By default, this is https://tg4service[.]com:443 . STILL_SEND_PATH: the path to the tdata STILL_TELEGRAM_PASSCODE: the password for decrypting the tdata folder, if Telegram data encryption is enabled on the victim’s device. Sync also supports several command-line arguments: --console : runs as a console application. If this parameter is absent, the implant creates a TReload service to keep running in the background. --version : prints version information and exits. --firefly : launches a trace thread that monitors the program’s operation. It writes error messages to a hidden file, bin, located in the same folder as the main executable. --db : turns on debug mode with detailed logging. Once it launches, the malware begins registering the device with the C2 server. To do this, Sync collects the following information about the victim’s system: Motherboard serial number CPU ID System UUID BIOS serial number Computer domain name The malware combines the collected data into a single string with a colon as the separator. It then hashes that string with SHA-256 and stores the resulting hash under the key sysmarker. Worth noting: other Armored Likho tools, AquilaRAT included, use this same hashing algorithm. Sync then serializes a package containing all the collected information and the agent version, and sends it in a POST request to /still.rpc.Sync/RegisterMachine. The response contains a machine_id value, which Sync uses to identify itself in subsequent requests. Once registration succeeds, Sync sends a POST request with the machine_id parameter to /still.rpc.Sync/GetMachineSettings. The server responds with the following settings: enabled: triggers malicious activity on the infected device. scan_portable: turns on extended scanning when searching for the tdata We’ll cover this feature in more detail below. fetch_telegram: if this parameter is on, Sync attempts to log in to Telegram and extract data. We’ll cover this feature in more detail below. download_channels: if this parameter is off, Sync skips channel dialogs when exfiltrating Telegram data. These parameters have no default values, so Sync doesn’t perform any malicious actions until the registration and settings-retrieval processes both complete successfully. Telegram data collection Before stealing a Telegram session, Sync searches for the tdata folder, unless the STILL_SEND_PATH variable is already set. The list of search paths includes both standard and nonstandard directories, if the scan_portable option is turned on: C:\Users\ \AppData\Roaming\Telegram Desktop\: the standard Telegram Desktop installation directory. C:\Users\ \AppData\Local\Packages\ \LocalCache\Roaming\: the installation directory for the Microsoft Store version. Sync identifies the package folder by a name that contains the string TelegramMessenge. C:\: used for the extended search (if the scan_portable option is on). Sync then sends a POST request with a list of files from the tdata folder to the /still.rpc.Sync/CheckFiles endpoint. The server responds with the following values: snapshot_id: an identifier the server assigns to the current data snapshot. present: a list of file paths that are already present on the server. This lets the C2 server avoid re-receiving files it already has. In addition, if Sync can’t access files on disk through standard methods, it falls back on three mechanisms that abuse the SeBackupPrivilege privilege: Opening files with the CreateFileW function using theFILE_FLAG_BACKUP_SEMANTICS parameter Creating a backup copy through the Shadow Copy service and reading files from there If the previous methods all fail, attempting to copy the file using the Robocopy utility in backup mode Beyond stealing Telegram session data, Sync can carry out full-scale collection of user information from the messaging app. When the fetch_telegram option is on, it launches a separate thread that authenticates to the chat app using the previously obtained tdata. Once authentication succeeds, Sync gains access to the account data and sends the following collected information to the server: User details, such as username, phone number, first and last name Information about private chats, groups, or channels, such as chat name and ID, the member list, and so on Dialogs from private chats, groups, and channels (if the download_channels option is on) Media files under 250MB: photos, documents, stickers, and contacts Still Audio Still Audio is an audio surveillance implant written in Rust. Its main job is to analyze the incoming audio stream and start recording voice when certain conditions are met – we’ll cover those in the next section. Architecturally, Still Audio largely mirrors Sync and uses the same mechanisms for communicating with the C2 server. On launch, Still Audio performs a sequence of actions: It extracts libmp3lame.dll , a file stored inside the executable. This is a library used to encode audio data. If the --console command-line argument is absent, the implant creates a service namedauxhost , connects to it, and continues running in the background. While running in the background, it creates a file, logfile.log , to write logs to. Next, Still Audio retrieves the C2 server address. As with Sync, it stores the URL in an environment variable – in this case, STILL_AUDIO_SYNC_ADDR. If that variable isn’t set, it falls back to STILL_SYNC_ADDR, which shows the two modules are compatible with each other. If neither variable is set, it uses the default URL, https://srwinservice[.]com. Still Audio also uses the Dead Drop Resolver technique as a fallback mechanism for obtaining the C2 address. If the current server stays unreachable for three days, the tool tries to pull the current C2 URL from a GitHub repository. In the sample under analysis, we found the following URL for the page containing C2 information: hxxps://raw.githubusercontent[.]com/mmarln/pi-mono/refs/heads/main/packages/pods/src/array12.json The repository, a fork of a popular project, contains the server URL Base64-encoded and encrypted with the Blowfish algorithm in ECB mode, using the key 5c8e153228edd3c6cbf75684 (lowercase string). Older AquilaRAT samples use this exact same algorithm and key. Once it obtains the current C2 address, the Audio module starts a registration process similar to Sync’s, but through a different endpoint: /still.rpc.Audio/RegisterAudioMachine. Also, unlike Sync, Audio sends a list of available audio input devices along with the system information. The server responds with settings for the implant: machine_id: a unique identifier for the current device. vad_threshold: the threshold value for the VAD (Voice Activity Detection) algorithm. Expressed as a decimal fraction, it represents a proportion of the maximum sound level the input device can pick up. Sound above this threshold counts as voice activity. The default vad_threshold is 02. max_silence_duration: the number of audio samples with a VAD value below the set threshold after which the implant considers the recording finished. max_buffer_size: the maximum buffer size for recorded audio data. active_device: the name of the input device selected for recording, from the list of available devices. The eavesdropping process Still Audio works with raw audio samples it captures directly from the input device. To detect voice activity, it implements an algorithm based on Root Mean Square (RMS), a lightweight signal-processing method that distinguishes speech from silence by measuring the audio signal’s average power over time. The implant doesn’t rely on any third-party libraries here; it implements all the calculations itself. The implant compares the calculated RMS value against the vad_threshold parameter. If RMS meets or exceeds this threshold, recording starts. To avoid losing the beginning of the recording, Still Audio uses a pre-buffer, a size-limited buffer that stores samples from just before the current recording moment. A sequence of max_silence_duration samples (320 by default) with RMS values below the threshold signals the end of the recording. For example, with a standard headset running at a 44.1kHz sampling rate, recording stops after roughly 7ms of silence. Interestingly, the Audio module makes no attempt to hide its use of the microphone: its name shows up in Windows settings. In the sample we examined, the file was saved to disk as IntAudio.exe, and it appeared in the list of apps using the microphone as “Intel Audio”: Before sending recordings to the server, the implant uses the libmp3lame library to encode the raw audio samples. It sends the recording files via a POST request to /tgfrg, adding a Client-Id header containing the machine_id obtained during registration to identify the device. Infrastructure This campaign draws on a broad set of hosting providers and domains registered at different points in time, which suggests the attackers are trying to make their infrastructure harder to detect. We found no direct overlap in domains or IP addresses with the February campaign. Even so, the two infrastructures share some similarities: They use the same hosting providers, with the ASNs 149440, 202448, and 215311. Their domain names follow similar naming patterns that mimic Windows system services and update mechanisms. Victims In this campaign, we’ve determined that the attackers’ primary targets are users in Russia. Most victims are private individuals, though the corporate sector, government organizations, IT companies, and educational institutions are also affected. Attribution This campaign has been using both new tools and malware families documented in BI.ZONE’s February report. While some components turned up for the first time, they show significant code-level overlap with malicious tools seen in earlier Armored Likho campaigns. Based on these overlaps, along with additional technical artifacts, we’re highly confident the Armored Likho group is behind the campaign. The overlaps we identified include: Identical dropper architecture in the February and current campaigns, which includes the use of the Tauri library to build the graphical interface, a similar user-input handler, a payload with the ICRYPTMP header, and the same multi-part encryption format. The same encryption algorithm and key used in AquilaRAT from the previous campaign and in the Still Audio module from the current campaign, both implementing the Dead Drop Resolver technique. Identical logic for generating the sysmarker value in older AquilaRAT samples and in the Still toolkit from the current campaign. The algorithms match down to the PowerShell commands used to collect system information. Substantial infrastructure overlap, which includes the hosting providers and domain-naming patterns described in the Infrastructure section. Takeaways The campaign described in this post shows Armored Likho’s toolkit evolving, with the group steadily expanding its cyber-espionage capabilities. Beyond the components we already knew about, the attackers rolled out new modules that let them not only access Telegram data but also conduct audio surveillance on victims. Together, these capabilities significantly widen the range of information attackers can collect in a single compromise. One point deserves particular attention: the new tools form a cohesive set, sharing similar architecture, C2 communication mechanisms, and common implementation elements. This points to the group building out its own tool ecosystem, designed for long-term use and further expansion. The emergence of new, specialized modules shows the attackers aren’t just trying to preserve their existing capabilities – they’re working to make intelligence-gathering more effective by controlling multiple communication channels at once. Indicators of compromise Additional information about this threat, indicators of compromise included, is available to customers of Kaspersky Threat Intelligence Reporting. Contact [email protected] for more details. File hashes Droppers C1D1EE16B92E6A138FFA048855F75D7D 17674B250D8B422A50A86C9FF207186D 62801F6223E860A7CCA271522E303B2D Still Sync 68F0365D2FA8C828D012D8859E52A773 4BD7C352AE277B0E38D07BEEDD4DD507 D4BC09FB10EA2A5DC0BCBEEDA5E5AFDD Still Audio 2CA8ADBAB98EBE305EACF272CF48F5A0 3AC41B097236A7723821848AE31EF141 439255736797BC88BD19F282449E0436
securelist.comAug 13, 2026extracted
Facebook ads spread fake Windows 11 downloads that steal passwords and crypto wallets
Attackers are running paid Facebook ads that look like official Microsoft promotions, then directing users to near-perfect clones of the Windows 11 download page. Click Download Now and instead of a Windows update, you get a malicious installer—one that silently steals saved passwords, browser sessions, and cryptocurrency wallet data. “I just wanted to update Windows” The attack starts with something completely ordinary: a Facebook ad. It looks professional, uses Microsoft branding, and promotes what appears to be the latest Windows 11 update. If you have been meaning to keep your PC current, it feels like a convenient shortcut. Click the ad and you land on a site that looks almost identical to Microsoft’s real Software Download page. The logo, layout, fonts, and even the legal text in the footer are copied. The only obvious difference is in the address bar. Instead of microsoft.com, you’ll see one of these lookalike domains: ms-25h2-download[.]pro ms-25h2-update[.]pro ms25h2-download[.]pro ms25h2-update[.]pro The “25H2” in domain names is deliberate. It mimics the naming convention Microsoft uses for Windows releases—24H2, the current version, was on everyone’s lips when this campaign launched, making the fake domains look plausible at a glance. Geofencing: only the right targets get the payload This campaign does not blindly infect everyone who visits the site. Before delivering the malware, the fake page checks who you are. If you connect from a data center IP address—often used by security researchers and automated scanners—you get redirected to google.com. The site looks harmless. Only visitors who appear to be regular home or office users receive the malicious file. This technique, known as geofencing combined with sandbox detection, is what allowed this campaign to run for as long as it did without being caught and shut down by automated systems. The infrastructure is configured to evade automated security analysis. When a targeted user clicks Download now, the site triggers a Facebook Pixel “Lead” event—the same tracking method legitimate advertisers use to measure conversions. The attackers are monitoring which victims take the bait and optimizing their ad spend in real time. A 75 MB “installer” served straight from GitHub If you pass the checks, the site downloads a file named ms-update32.exe. At 75 MB, it feels like a legitimate Windows installer. The file is hosted on GitHub, a trusted platform used by millions of developers. That means the download arrives over HTTPS with a valid security certificate. Because it comes from a reputable domain, browsers do not automatically flag it as suspicious. The installer was built using Inno Setup, a legitimate tool often abused by malware authors because it creates professional-looking installation packages. What happens when you run it Before doing anything damaging, the installer checks whether it is being watched. It looks for virtual machine environments, debugger software, and analysis tools. If it finds any of them, it stops. This is the same evasion logic that lets it slip past many automated security sandboxes—those systems run inside virtual machines by design. On a real user’s machine, the installer proceeds to extract and deploy its components. The most significant component is a full Electron-based application installed to C:\Users\ \AppData\Roaming\LunarApplication\. Electron is a legitimate framework used by apps like Slack and Visual Studio Code. That makes it a useful disguise. The choice of name is not accidental. “Lunar” is a brand associated with cryptocurrency tooling, and the application comes bundled with Node.js libraries specifically designed to create ZIP archives—suggesting it collects data, packages it up, and sends it out. Likely targets include cryptocurrency wallet files, seed phrases, browser credential stores, and session cookies. At the same time, two obfuscated PowerShell scripts with randomised filenames are written to the %TEMP% folder and executed with a command line that deliberately disables Windows script-signing protections: powershell.exe -NoProfile -NoLogo -InputFormat Text -NoExit -ExecutionPolicy Unrestricted -Command - Hiding in the registry, covering its tracks To survive reboots, the malware writes a large binary blob to the Windows registry under: HKEY_LOCAL_MACHINE\SYSTEM\Software\Microsoft\TIP\AggregateResults. The TIP (Text Input Processor) registry path is a legitimate Windows component, which makes it less likely to raise suspicion. Telemetry also shows behavior consistent with process injection. The malware creates Windows processes in a suspended state, injects code into them, and resumes execution. This allows the malicious code to run under the identity of a legitimate process, reducing the chance of detection. Once execution is established, the installer deletes temporary files to reduce its forensic footprint. It can also initiate system shutdown or reboot operations, potentially to interfere with analysis. The malware uses multiple encryption and obfuscation techniques, including RC4, HC-128, XOR encoding, and FNV hashing for API resolution. These methods make static analysis more difficult. The Facebook ads angle The use of paid Facebook advertising to distribute malware is worth pausing on. This is not a phishing email that lands in a spam folder, or a malicious result buried in a search page. These are paid Facebook ads appearing alongside posts from friends and family. The attackers ran two parallel ad campaigns, each pointing to separate phishing domains. Each campaign used its own Facebook Pixel ID and tracking parameters. If one domain or ad account gets shut down, the other can continue running. The use of two parallel domains and two separate advertising campaigns suggests the operators have redundancy built in—if one domain is taken down or one ad account is suspended, the other continues running. What to do if you think you’ve been affected This campaign is technically polished and operationally aware. The infrastructure demonstrates awareness of common security research and sandboxing techniques. They understand how people download software and have chosen Facebook advertising as their delivery vector precisely because it reaches real users in a context where trust is high. Remember: Windows updates come from Windows Update inside your system settings—not from a website and never from a social media ad. Microsoft does not advertise Windows updates on Facebook. And a pro tip: Malwarebytes would have detected and blocked the identified payload and associated infrastructure. If you downloaded and ran a file from either of these sites, treat the system as compromised and act quickly. Do not log into any accounts from that computer until it has been scanned and cleaned. Run a full scan with Malwarebytes immediately. Change passwords for important accounts like email, banking, and social media from a different, clean device. If you use cryptocurrency wallets on that machine, move funds to a new wallet with a new seed phrase generated on a clean device. Consider alerting your bank and enabling fraud monitoring if any financial credentials were stored on or accessible from that device. For IT and security teams: Block the phishing domains at DNS and web proxy Alert on PowerShell execution with -ExecutionPolicy Unrestricted in non-administrative contexts Hunt for the LunarApplication directory and randomized .yiz.ps1 /.unx.ps1 files in%TEMP% Indicators of Compromise (IOCs) File hash (SHA-256) c634838f255e0a691f8be3eab45f2015f7f3572fba2124142cf9fe1d227416aa (ms-update32.exe) Domains ms-25h2-download[.]pro ms-25h2-update[.]pro ms25h2-download[.]pro ms25h2-update[.]pro raw.githubusercontent.com/preconfigured/dl/refs/heads/main/ms-update32.exe (payload delivery URL) File system artifacts C:\Users\ \AppData\Roaming\LunarApplication\ C:\Users\ \AppData\Local\Temp\[random].yiz.ps1 C:\Users\ \AppData\Local\Temp\[random].unx.ps1 Registry HKEY_LOCAL_MACHINE\SYSTEM\Software\Microsoft\TIP\AggregateResults (large binary data — persistence) Facebook advertising infrastructure Pixel ID: 1483936789828513 Pixel ID: 955896793066177 Campaign ID: 52530946232510 Campaign ID: 6984509026382
malwarebytes.comFeb 20, 2026extracted
The Shadow Campaigns: Uncovering Global Espionage
This investigation unveils a new cyberespionage group that Unit 42 tracks as TGR-STA-1030. We refer to the group’s activity as the Shadow Campaigns. We assess with high confidence that TGR-STA-1030 is a state-aligned group that operates out of Asia. Over the past year, this group has compromised government and critical infrastructure organizations across 37 countries. This means that approximately one out of every five countries has experienced a critical breach from this group in the past year. Further, between November and December 2025, we observed the group conducting active reconnaissance against government infrastructure associated with 155 countries. This group primarily targets government ministries and departments. For example, the group has successfully compromised: Five national-level law enforcement/border control entities Three ministries of finance and various other government ministries Departments globally that align with economic, trade, natural resources and diplomatic functions Given the scale of compromise and the significance of these organizations, we have notified impacted entities and offered them assistance through responsible disclosure protocols. Here we describe the technical sophistication of the actors, including the phishing and exploitation techniques, tooling and infrastructure used by the group. We provide defensive indicators to include infrastructure that is active at the time of this publication. Further, we explore an in-depth look at victimology by region with the intent of demonstrating the suspected motivations of the group. The results indicate that this group prioritizes efforts against countries that have established or are exploring certain economic partnerships. Additionally, we have also pre-shared these indicators with industry peers to ensure robust cross-industry defenses against this threat actor. Palo Alto Networks customers are better protected from the threats described in this article through products and services, including: Advanced URL Filtering and Advanced DNS Security Advanced WildFire Advanced Threat Prevention Cortex XDR and XSIAM If you think you might have been compromised or have an urgent matter, contact the Unit 42 Incident Response team. Unit 42 first identified TGR-STA-1030 (aka UNC6619) upon investigating a cluster of malicious phishing campaigns (referred to here as the Shadow Campaigns) targeting European governments in early 2025. We use the prefix TGR-STA as a placeholder to denote a temporary group of state-aligned activity while we continue to refine attribution to a specific organization. Since our initial investigation, we have identified actor infrastructure dating as far back as January 2024, suggesting that the group has been active for at least two years. Over the past year, we have monitored the evolution and expansion of the group as it has compromised: Five national-level law enforcement/border control entities Three ministries of finance and various other government ministries Departments globally that align with economic, trade, natural resources and diplomatic functions We assess with high confidence that TGR-STA-1030 is a state-aligned group that operates out of Asia. We base this assessment on the following findings: Frequent use of regional tooling and services Language setting preferences Targeting and timing that routinely align with events and intelligence of interest to the region Upstream connections to operational infrastructure originating from the region Actor activity routinely aligning with GMT+8 Additionally, we found that one of the attackers uses the handle “JackMa,” which could refer to the billionaire businessman and philanthropist who co-founded Alibaba Group and Yunfeng Capital. In February 2025, Unit 42 investigated a cluster of malicious phishing campaigns targeting European governments. These campaigns followed a pattern of being sent to government email recipients with a lure of a ministry or department reorganization and links to malicious files hosted on mega[.]nz. Figure 1 below shows an example. Clicking on the link downloads an archive file with language and naming that is consistent with the targeted country and ministry. We assess that an Estonian government entity identified the campaign and uploaded one such ZIP archive to a public malware repository. In this case, the Estonian filename was: Politsei- ja Piirivalveameti organisatsiooni struktuuri muudatused.zip This translates to Changes to the organizational structure of the Police and Border Guard Board.zip Analyzing the archive, we found that the contents were last modified on Feb. 14, 2025. Further, the archive itself contains an executable file containing an identical name as the ZIP and a zero-byte file named pic1.png. Reviewing the executable metadata, we found that the file version is presented as 2025,2,13,0, suggesting that the file was likely created one day prior, on Feb. 13. This date also corresponds to the PE compile timestamp. Additionally, the metadata shows that the file’s original name was DiaoYu.exe. The term Diaoyu translates to fishing, or phishing in a cybersecurity context. The malware employs a dual-stage execution guardrail to thwart automated sandbox analysis. Beyond the hardware requirement of a horizontal screen resolution greater than or equal to 1440, the sample performs an environmental dependency check for a specific file (pic1.png) in its execution directory. In this context, pic1.png acts as a file-based integrity check. If the malware sample is submitted to a sandbox in isolation, the absence of this auxiliary file causes the process to terminate gracefully before detonation, effectively masking its malicious behavior. Only upon satisfying these prerequisites does the malware proceed to audit the host for the following cybersecurity products: Avp.exe (Kaspersky) SentryEye.exe (Avira) EPSecurityService.exe (Bitdefender) SentinelUI.exe (Sentinel One) NortonSecurity.exe (Symantec) This narrow selection of products is interesting, and it is unclear why the actor chose to only look for these specific products. While various malware families commonly check for the presence of antivirus products, malware authors typically include a more comprehensive list that encompasses a variety of global providers. After checking for these products, the malware downloads the following files from GitHub: hxxps[:]//raw.githubusercontent[.]com/padeqav/WordPress/refs/heads/master/wp-includes/images/admin-bar-sprite[.]png hxxps[:]//raw.githubusercontent[.]com/padeqav/WordPress/refs/heads/master/wp-includes/images/Linux[.]jpg hxxps[:]//raw.githubusercontent[.]com/padeqav/WordPress/refs/heads/master/wp-includes/images/Windows[.]jpg It should be noted that the padeqav GitHub project is no longer available. Finally, the malware performs a series of actions on these files that ultimately result in the installation of a Cobalt Strike payload. In addition to phishing campaigns, the group often couples exploitation attempts with their reconnaissance activities to gain initial access to target networks. To date, we have not observed the group developing, testing or deploying any zero-day exploits. However, we assess that the group is comfortable testing and deploying a wide range of common tools, exploitation kits and proof-of-concept code for N-day exploits. For example, over the past year, our Advanced Threat Prevention service has detected and blocked attempts by the group to exploit the following types of vulnerabilities: SAP Solution Manager privilege escalation vulnerability Pivotal Spring Data Commons remote file read XXE vulnerability Microsoft Open Management Infrastructure remote code execution vulnerability Microsoft Exchange Server remote code execution vulnerability D-Link remote code execution vulnerability HTTP directory traversal request attempt HTTP SQL injection attempt Struts2 OGNL remote code execution vulnerability Ruijieyi Networks remote command execution vulnerability Eyou Email System remote command execution vulnerability Beijing Grandview Century eHR Software SQL injection vulnerability Weaver Ecology-OA remote code execution vulnerability Microsoft Windows win.ini access attempt detected Commvault CommCell CVSearchService download file authentication bypass vulnerability Zhiyuan OA remote code execution vulnerability On one occasion, we observed the actor connecting to e-passport and e-visa services associated with a ministry of foreign affairs. Because the server for these services was configured with Atlassian Crowd software, the actor attempted to exploit CVE-2019-11580, uploading a payload named rce.jar. The code included in the payload was similar to the description of code from another analysis of CVE-2019-11580 provided by Anquanke. We assess that the group relies heavily on a mix of command-and–control (C2) frameworks and tools common to the actors’ region to move laterally and maintain persistent access within compromised environments. From 2024 through early 2025, we observed the group commonly deploying Cobalt Strike payloads. However, over time the group slowly transitioned to VShell as its tool of choice. VShell is a Go-based C2 framework. The group often configures its web access on 5-digit ephemeral TCP ports using ordered numbers. In November 2025, NVISO published comprehensive research [PDF] on the origins of this tool, its features and its wide-scale use by multiple threat groups and actors. Within the past year, we assess that the group has also leveraged frameworks like Havoc, SparkRat and Sliver with varying degrees of success. TGR-STA-1030 has frequently deployed web shells on external-facing web servers as well as on internal web servers to maintain access and enable lateral movement. The three most common web shells used by the group are Behinder, Neo-reGeorg and Godzilla. Further, we noted during one investigation that the group attempted to obfuscate its Godzilla web shells using code from the Tas9er GitHub project. This project obfuscates code by creating functions and strings with names like Baidu. It also adds explicit messages to governments. We have observed the group leveraging GO Simple Tunnel (GOST), Fast Reverse Proxy Server (FRPS), and IOX across both their C2 infrastructure and compromised networks to tunnel desired network traffic. During an investigation, we identified the group using a new Linux kernel rootkit, ShadowGuard. The sample we discovered (SHA-256 hash 7808B1E01EA790548B472026AC783C73A033BB90BBE548BF3006ABFBCB48C52D) is an Extended Berkeley Packet Filter (eBPF) rootkit designed for Linux systems. At this time, we assess that the use of this rootkit is unique to this group. eBPF backdoors are notoriously difficult to detect because they operate entirely within the highly trusted kernel space. eBPF programs do not appear as separate modules. Instead, they execute inside the kernel's BPF virtual machine, making them inherently stealthy. This allows them to manipulate core system functions and audit logs before security tools or system monitoring applications can see the true data. This backdoor leverages eBPF technology to provide the following kernel-level stealth capabilities: Kernel-level concealment: It can conceal process information details directly at the kernel level. Process hiding (syscall interception): The tool intercepts critical system calls, specifically using custom kill signals (entry and exit points) to identify which processes the attacker wants to hide. - It conceals specified process IDs (PIDs), making them invisible to standard user-space analysis tools like the standard Linux ps aux command - It can hide up to 32 processes simultaneously File and directory hiding: It features a hard-coded check to specifically conceal directories and files named swsecret. Allow-listing: The backdoor includes an allow list mechanism where processes placed on the list are deliberately excluded and remain unaffected by the hiding functionality. When started, the program will automatically check for the following: Root privileges eBPF support Tracepoint support Example commands once ShadowGuard is started are shown below in Table 1. Table 1. Examples of commands for ShadowGuard. Consistent with any advanced actor conducting cyberespionage, this group goes to great lengths to mask and obfuscate the origin of its operations. However, despite all of its best efforts, it is exceptionally hard to overcome the following two challenges: Network Traffic Inspection: It is widely known that several nations employ methods to censor and filter traffic entering/exiting their respective countries. As such, it is extremely unlikely that foreign cyberespionage groups would willingly route their network traffic through any nation that employs these inspection capabilities. Network evolution: Maintaining infrastructure for cyberespionage operations is hard. It requires the routine creation of new domains, virtual private servers (VPS) and network tunnels. Studying a group’s infrastructure over time almost always reveals mistakes and errors where tunnels collapse or perhaps identity protection services expire. We assess that the group applies a multi-tiered infrastructure approach to obfuscate its activities. Victim-Facing The group routinely leases and configures its C2 servers on infrastructure owned by a variety of legitimate and commonly known VPS providers. However, unlike most groups that configure their malicious infrastructure on bulletproof providers or in obscure locations, this group prefers to establish its infrastructure in countries that have a strong rule of law. For example, the group frequently chooses virtual servers in the U.S., UK and Singapore. We assess this preference in locations likely aids the group in three ways: Infrastructure may appear more legitimate to network defenders This could enable low-latency connections across the Americas, Europe and Southeast Asia These locations have separate laws, policies and priorities that govern the operations of their domestic law enforcement and foreign intelligence organizations. Thus, having infrastructure in these locations likely necessitates cross-agency cooperation efforts for their governments to effectively investigate and track the group. Relays To connect to the C2 infrastructure, the group leases additional VPS infrastructure that it uses to relay traffic through. These hosts are often configured with SSH on port 22 or a high-numbered ephemeral port. In some cases, we have also observed hosts configured with RDP on port 3389. Proxies Over time, the group has leveraged a variety of capabilities to anonymize its connections to the relay infrastructure. In early 2025, we observed the group using infrastructure we associated with DataImpulse, a company that provides residential proxy services. Since then, we have observed the group using the Tor network and other proxy services. Upstream In tracking upstream infrastructure, it is important to recognize that the primary goal of an espionage group is to steal data. To accomplish that task, a group has to build a path from the compromised network back to a network it can access. As such, the flow of data upstream typically correlates geographically to the group’s physical location. As noted above, the act of maintaining all of this infrastructure and its associated connections is quite challenging. On occasion, the group makes mistakes either because it forgets to establish a tunnel or because a tunnel collapses. When this happens, the group connects directly from its upstream infrastructure. On several occasions, we have observed the group connecting directly to relay and victim-facing infrastructure from IP addresses belonging to Autonomous System (AS) 9808. These IP addresses are owned by an internet service provider in the group’s region. We have identified several domains used by the group to facilitate malware C2 communications. Most were registered with the following top-level domains: me live help tech Noteworthy domains include: gouvn[.]me The group used this domain to target Francophone countries that use gouv to denote government domains. While the actor consistently pointed this domain name to leased victim-facing VPS infrastructure, we noted an anomaly in late 2024. While the domain never pointed to it, the actor appears to have copied an X.509 certificate with the common name gouvn[.]me from a victim-facing VPS to a Tencent server located in the actors’ region. Here it was visible for four days in November 2024. dog3rj[.]tech The group used this domain to target European nations. It’s possible that the domain name could be a reference to “DOGE Jr,” which has several meanings in a Western context, such as the U.S. Department of Government Efficiency or the name of a cryptocurrency. This domain was registered using an email address associated with the domain 888910[.]xyz. zamstats[.]me The group used this domain to target the Zambian government. Over the course of the past year the group has substantially increased its scanning and reconnaissance efforts. This shift follows the group's evolution from phishing emails to exploits for initial access. Most emblematic of this activity, we observed the group scanning infrastructure across 155 countries between November and December 2025, as noted in Figure 2. Given the expansive nature of the activity, some analysts might wrongly assume that the group simply launches broad scans across the entire IPv4 space from 1.1.1[.]1 to 255.255.255[.]255, but that is not the case. Based on our observation, the group focuses its scanning narrowly on government infrastructure and specific targets of interest across each country. The group’s reconnaissance efforts shed light on its global interests. We have also observed the group's success at compromising several government and critical infrastructure organizations globally. We assess that over the past year, the group compromised at least 70 organizations across 37 countries, as shown in Figure 3. The attackers were able to maintain access to several of the impacted entities for months. Impacted organizations include ministries and departments of interior, foreign affairs, finance, trade, economy, immigration, mining, justice and energy. This group compromised one nation’s parliament and a senior elected official of another. It also compromised national-level telecommunications companies and several national police and counter-terrorism organizations. While this group might be pursuing espionage objectives, its methods, targets and scale of operations are alarming, with potential long-term consequences for national security and key services. By closely monitoring the timing of the group’s operations, we have drawn correlations between several of its campaigns and real-world events. These correlations inform assessments as to the group’s potential motivations. The following sections provide additional insights from notable situations by geographic region. During the U.S. government shutdown that began in October 2025, the group began to display greater interest in organizations and events occurring across North, Central and South American countries. Over that month, we observed scanning of government infrastructure across Brazil, Canada, Dominican Republic, Guatemala, Honduras, Jamaica, Mexico, Panama and Trinidad and Tobago. Perhaps the most pronounced reconnaissance occurred on Oct. 31, 2025, when we observed connections to at least 200 IP addresses hosting Government of Honduras infrastructure. The timing of this activity falls just 30 days prior to the national election, in which both candidates signaled openness to restoring diplomatic relations with Taiwan. In addition to reconnaissance activities, we assess that the group likely compromised government entities across Bolivia, Brazil, Mexico, Panama, and Venezuela, as noted in Figure 4. We assess that the group likely compromised the network of a Bolivian entity associated with mining. The motivation behind this activity could be associated with interest in rare earth minerals. We find it noteworthy that the topic of mining rights became a central focus in Bolivia’s recent presidential election. In late July 2025, candidate Jorge Quiroga pledged to scrap multi-billion-dollar mining deals that the Bolivian government had previously signed with two nations. We assess that the group compromised Brazil’s Ministry of Mines and Energy. Brazil is considered to have the second largest supply of rare earth mineral reserves in the world. According to public reporting, exports of these minerals tripled in the first half of 2025. As Asian companies tighten their global control on these resources, the U.S. has begun looking to Brazil for alternative sourcing. In October, the U.S. Charge d'Affaires in Brazil held meetings with mining executives in the country. In early November, the U.S. International Development Finance Corporation invested $465 million in Serra Verde (a Brazilian rare earth producer). This has been seen as an effort to reduce reliance on Asia for these key minerals. We assess that the group compromised two of Mexico’s ministries. This activity is very likely associated with international trade agreements. On Sept. 25, 2025, Mexico News Daily reported on an investigation into Mexico’s latest plans to impose tariffs on certain goods. Coincidentally, malicious network traffic was first seen originating from networks belonging to Mexico’s ministries within 24 hours of the trade probe announcement. In December 2025, a report stated that local authorities destroyed a monument, prompting immediate condemnation from some leaders and calls for investigation. Coincidentally, around the same time, we assess that TGR-STA-1030 likely compromised government infrastructure that may be associated with the investigation. On Jan. 3, 2026, the U.S. launched Operation Absolute Resolve. This operation resulted in the capture of the Venezuelan president and his wife. In the days that followed, TGR-STA-1030 conducted extensive reconnaissance activities targeting at least 140 government-owned IP addresses. We further assess that as early as Jan. 4, 2026, the group likely compromised an IP address that geolocates to a Venezolana de Industria Tecnológica facility, as seen in Figure 5. This organization was originally founded as a joint venture between the Venezuelan government and an Asian technology company. The venture enabled the production of computers as an early step toward deepening technology and economic ties between the two regions. Throughout 2025, TGR-STA-1030 increased its focus on European nations. In July 2025, it applied a concerted focus toward Germany, where it initiated connections to over 490 IP addresses hosting government infrastructure. In August 2025, Czech President Petr Pavel privately met with the Dalai Lama during a trip to India. In the weeks that followed, we observed scanning of Czech government infrastructure, including: The Army Police Parliament Ministries of Interior, Finance and Foreign Affairs In early November, a Tibetan news source announced that the Czech president would also co-patronize the Dalai Lama’s 90th birthday gala. Shortly after, we witnessed a second round of scanning focused narrowly on the Czech president’s website. Separately, in late August, the group applied a concerted focus on European Union infrastructure. We observed the group attempting to connect to over 600 IP addresses hosting *.europa[.]eu domains. In addition to reconnaissance activities, we assess that the group likely compromised government entities in countries across Cyprus, Czechia, Germany, Greece, Italy, Poland, Portugal and Serbia, as shown in Figure 6. In doing so, the group compromised at least one ministry of finance where it sought to collect intelligence on international development from both the impacted country as well as the European Union. We assess that the group compromised government infrastructure in early 2025. The timing of this activity coincided with efforts by an Asian nation to expand certain economic partnerships across Europe. At the time, Cyprus was also taking preparatory steps toward assuming the presidency of the Council of the European Union at the end of the year, a position that it currently holds. We assess that the group likely compromised infrastructure associated with the Syzefxis Project. This project was intended to modernize Greek public sector organizations using high-speed internet services. While the group performs scanning widely across both continents, TGR-STA-1030 appears to prioritize its reconnaissance efforts against countries in the South China Sea and Gulf of Thailand regions. We routinely observe scanning of government infrastructure across Indonesia, Thailand and Vietnam. For example, in early November 2025, we observed connections to 31 IP addresses hosting Thai government infrastructure. Additionally, it’s worth noting that the group's reconnaissance efforts often extend beyond connections to web-facing content on ports 80 and 443. In November 2025, we also observed the group attempting to initiate connections to port 22 (SSH) on infrastructure belonging to: Australia’s Treasury Department Afghanistan’s Ministry of Finance Nepal’s Office of the Prime Minister and Council of Ministers In addition to reconnaissance activities, we assess that the group likely compromised government and critical infrastructure entities in countries including Afghanistan, Bangladesh, India, Indonesia, Japan, Malaysia, Mongolia, Papua New Guinea, Saudi Arabia, Sri Lanka, South Korea, Taiwan, Thailand, Uzbekistan and Vietnam, as shown in Figure 7. In March 2024, Indonesia pledged to increase certain counterterrorism coordination efforts. In mid-2025, the group compromised an Indonesian law enforcement entity. We assess that the group also compromised infrastructure associated with an Indonesian government official. This activity might have been associated with the extraction of natural resources from Papua province. We found that the official was tasked with overseeing development in the province and foreign investment in the mining sector. The group also compromised an Indonesian airline. The compromised infrastructure geolocates to facilities at Soekarno-Hatta International Airport as shown in Figure 8. The airline had been in talks with a U.S. aerospace manufacturer to purchase new aircraft as part of its strategic growth plans. At the same time, a competing interest was actively promoting aircraft from a manufacturer based in Southeast Asia. We assess that the group compromised multiple Malaysian government departments and ministries. Using this access, the group sought to extract immigration and economic intelligence data. Additionally, we assess that the group compromised a large private financial entity in Malaysia that provides microloans in support of low-income households and small businesses. The group compromised a Mongolian law enforcement entity on Sept. 15, 2025. Shortly after, Mongolia’s Minister of Justice and Internal Affairs met with a counterpart from an Asian nation. Following the meeting, both countries signaled an intent to expand cooperation to combat transnational crime. Given the timing, we assess that this activity was likely associated with intelligence gathering in support of the initial meeting and ongoing cooperation discussions. In early 2025, the group compromised a major supplier in Taiwan's power equipment industry. With this access, we believe the group was able to access business files and directories pertaining to power generation projects across Taiwan. We further assess that in mid-December 2025, the group regained access to this network. We assess that on Nov. 5, 2025, the group compromised a Thai government department where it likely sought economic and international trade intelligence. The timing of this activity overlaps with the government’s effort to expand diplomatic relations with neighboring nations. As such, we assess the activity was likely intelligence gathering in support of the visit and future cooperation discussions. It is our observation that when it comes to African nations, the group's focus remains split between military interests and the advancement of economic interests, specifically mining efforts. We assess that the group likely compromised government and critical infrastructure entities in countries across the Democratic Republic of the Congo, Djibouti, Ethiopia, Namibia, Niger, Nigeria and Zambia, as shown in Figure 9: We assess that in December 2025, the group compromised a government ministry in this country. We found that earlier in the year, an Asian mining firm was responsible for an acid spill that caused significant impacts to a river in neighboring Zambia. In November 2025, a second spill by another Asian company impacted the waterways around Lubumbashi, the second-largest city in the DRC. This event prompted authorities to suspend mining operations for a subsidiary of the Zhejiang Huayou Cobalt Co. Given the timing and the group's unique focus on mining operations, we assess that activity could be related to this mining situation. Several nations maintain military bases in Djibouti. These bases enable combating piracy on the high seas as well as other regional logistics and defense functions across the Arabian Sea, Persian Gulf and Indian Ocean. In mid-November, a new Naval Escort Group from one of the nations assumed responsibilities in the region. During its operational debut, the group escorted a Panamanian-registered bulk carrier called the Nasco Gem that carries cargo such as coal and ore. In the context of cyber activity, this could be related to the targeting of mining sectors we observed from TGR-STA-1030. We assess that in late October 2025, the group gained access to a Djibouti government network. Given the timing of the activity, we believe it might be associated with intelligence collection in support of the naval handover operations. We assess that the group compromised a Zambian government network in 2025. This activity is likely associated with the Sino-Metals Leach Zambia situation. In February, a dam that held waste from an Asian mining operation collapsed and polluted a major river with cyanide and arsenic. The situation and associated clean-up efforts remain a political point of contention. TGR-STA-1030 remains an active threat to government and critical infrastructure worldwide. The group primarily targets government ministries and departments for espionage purposes. We assess that it prioritizes efforts against countries that have established or are exploring certain economic partnerships. Over the past year, this group has compromised government and critical infrastructure organizations across 37 countries. Given the scale of compromise and the significance of the impacted government entities, we are working with industry peers and government partners to raise awareness of the threat and disrupt this activity. We encourage network defenders and security researchers to leverage the indicators of compromise (IoCs) provided below to investigate and deploy defenses against this group. Palo Alto Networks customers are better protected from the threats discussed above through the following products and services: Advanced URL Filtering and Advanced DNS Security identify known URLs and domains associated with this activity as malicious. The Advanced WildFire machine-learning models and analysis techniques have been reviewed and updated in light of the indicators shared in this research. Advanced Threat Prevention is designed to defend networks against both commodity threats and targeted threats. Cortex XDR and XSIAM help to protect against the threats described in this blog, by employing the Malware Prevention Engine. This approach combines several layers of protection, including Advanced WildFire, Behavioral Threat Protection and the Local Analysis module, designed to prevent both known and unknown malware from causing harm to endpoints. 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: +1 (866) 486-4842 (866.4.UNIT42) UK: +44.20.3743.3660 Europe and Middle East: +31.20.299.3130 Asia: +65.6983.8730 Japan: +81.50.1790.0200 Australia: +61.2.4062.7950 India: 000 800 050 45107 South Korea: +82.080.467.8774 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. 138.197.44[.]208 142.91.105[.]172 146.190.152[.]219 157.230.34[.]45 157.245.194[.]54 159.65.156[.]200 159.203.164[.]101 178.128.60[.]22 178.128.109[.]37 188.127.251[.]171 188.166.210[.]146 208.85.21[.]30 abwxjp5[.]me brackusi0n[.]live dog3rj[.]tech emezonhe[.]me gouvn[.]me msonline[.]help pickupweb[.]me pr0fu5a[.]me q74vn[.]live servgate[.]me zamstats[.]me zrheblirsy[.]me 66ec547b97072828534d43022d766e06c17fc1cafe47fbd9d1ffc22e2d52a9c0 23ee251df3f9c46661b33061035e9f6291894ebe070497ff9365d6ef2966f7fe 5175b1720fe3bc568f7857b72b960260ad3982f41366ce3372c04424396df6fe 358ca77ccc4a979ed3337aad3a8ff7228da8246eebc69e64189f930b325daf6a 293821e049387d48397454d39233a5a67d0ae06d59b7e5474e8ae557b0fc5b06 c876e6c074333d700adf6b4397d9303860de17b01baa27c0fa5135e2692d3d6f b2a6c8382ec37ef15637578c6695cb35138ceab42ce4629b025fa4f04015eaf2 5ddeff4028ec407ffdaa6c503dd4f82fa294799d284b986e1f4181f49d18c9f3 182a427cc9ec22ed22438126a48f1a6cd84bf90fddb6517973bcb0bac58c4231 7808b1e01ea790548b472026ac783c73a033bb90bbe548bf3006abfbcb48c52d 9ed487498235f289a960a5cc794fa0ad0f9ef5c074860fea650e88c525da0ab4 Updated Feb. 5, 2026, at 7:40 a.m. PT to add Cortex product protections language.
unit42.paloaltonetworks.comFeb 5, 2026extracted
Critical Vulnerabilities in React Server Components and Next.js
Unit 42 stopped monitoring this threat and updating the brief on Jan. 30, 2025. Please refer to Vercel's website for the latest information. Unit 42 uncovered the previously unseen KSwapDoor. This Linux backdoor was initially mistaken for BPFDoor. Key features include: P2P mesh network: Enables multi-hop routing for robust C2 communications Strong encryption: Uses AES-256-CFB with Diffie-Hellman key exchange Stealth and persistence: Mimics a legitimate Linux kernel swap daemon Full remote access: Offers an interactive shell, command execution, file operations and lateral movement scanning Unit 42 has identified activity that reportedly shares overlap with North Korean (DPRK) Contagious Interview tooling, though no formal attribution has occurred at this time. Contagious Interview is a campaign where threat actors associated with the DPRK pose as recruiters to install malware on the devices of job seekers in the tech industry. The observed activity includes EtherRAT. The DPRK threat actor UNC5342 is reportedly utilizing the EtherHiding technique for malware delivery and cryptocurrency theft. EtherHiding leverages blockchain technology to store and retrieve malicious payloads. Additionally, we’ve observed a previously unseen Linux backdoor KSwapDoor (previously identified as BPFDoor in this article before December 12). Lastly, Unit 42 has detected multiple instances of a previously undocumented Auto-color backdoor. Auto-color masquerades as a legitimate Pluggable Authentication Module (PAM) library (pamssod). Further details are in the Scope of Post-Exploitation Activity section. Unit 42 has observed post-exploitation activity following the exploitation of CVE-2025-55182 indicating multiple vectors of attack. This attack included initial reconnaissance that involved automated scanning for the remote code execution (RCE) vulnerability as well as Base64-encoded commands to: Rapidly fingerprint compromised systems Verify privilege levels Map network interfaces Enumerate sensitive credentials and DNS configurations Retrieve malicious binaries from attacker-controlled C2 Attackers proceeded with installation activities, leveraging wget and curl to download and execute malicious scripts, including sex.sh and a Linux dropper (x86_64) designed for persistent infection. In one instance, we identified a bash reverse shell connected to a probable Cobalt Strike server. Additionally, we observed activity consistent with an activity cluster we track as CL-STA-1015, an initial access broker (IAB) with suspected ties to the PRC’s Ministry of State Security. This activity involved the fileless execution of a malicious shell script (slt) via curl or wget, followed by the installation of SNOWLIGHT and VShell Trojans. Further details are in the Scope of Post-Exploitation Activity section. On Dec. 3, 2025, researchers publicly disclosed critical remote code execution (RCE) vulnerabilities in the Flight protocol used by React Server Components (RSC). Originally, the flaw was tracked as two vulnerabilities, CVE-2025-55182 (React) and CVE-2025-66478 (Next.js). Both were assigned a maximum severity rating of CVSS 10.0. CVE-2025-66478 has since been rejected as a duplicate of CVE-2025-55182. The flaw allows unauthenticated attackers to execute arbitrary code on the server via insecure deserialization of malicious HTTP requests. Testing indicates the exploit has near-100% reliability and requires no code changes to be effective against default configurations. While there were no reports of exploitation in the wild as of Dec. 3, 2025, Unit 42 has since observed post-exploitation activity, as detailed in our updates. React is heavily implemented in enterprise environments, used by roughly 40% of all developers, while Next.js is used by approximately 18%-20%. This makes it the leading server-side framework for the React ecosystem. Palo Alto Networks Cortex Xpanse has identified the presence of over 968,000 React and Next.js instances in our telemetry. CVE-2025-55182 impacts the React 19 ecosystem and frameworks that implement it. Specifically, it affects the following versions: React: Versions 19.0, 19.1, and 19.2 Next.js: Versions 15.x and 16.x (App Router), as well as Canary builds starting from 14.3.0 Other frameworks: Any library bundling the react-server implementation, including React Router, Waku, RedwoodSDK, Parcel and Vite RSC plugins Palo Alto Networks customers receive protections from and mitigations for CVE-2025-55182 in the following ways: - Advanced URL Filtering and Advanced DNS Security - Next-Generation Firewall with the Advanced Threat Prevention security subscription Cortex XDR and XSIAM agents help protect against post-exploitation activities using the multi-layer protection approach Cortex Xpanse is designed to identify exposed devices and applications on the public internet and escalate these findings to defenders Cortex Cloud and Prisma Cloud both have detection capabilities for cloud resources exposed to the vulnerability discussed in this brief Palo Alto Networks also recommends upgrading to the following hardened versions immediately: React: Upgrade to 19.0.1, 19.1.2, or 19.2.1 Next.js: Upgrade to the latest stable patched versions, including 16.0.7, 15.5.7, 15.4.8, 15.3.6, 15.2.6, 15.1.9 or 15.0.5 The Unit 42 Incident Response team can be engaged to help with a compromise or to provide a proactive assessment to lower your risk. CVE-2025-55182 is classified as Critical (CVSS 10.0) and is caused by insecure deserialization within the RSC architecture, specifically involving the Flight protocol. The vulnerability resides in the react-server package and its implementation of the RSC Flight protocol. It is a logical deserialization flaw where the server processes RSC payloads safely. When a server receives a specially crafted, malformed HTTP payload (typically through data delivered in a POST request), it fails to correctly validate the structure of the data. Because of this insecure deserialization, the server allows attacker-controlled data to influence server-side execution logic. This results in RCE, allowing an attacker to execute arbitrary privileged JavaScript code on the server. Attack complexity: The attack complexity is low. It requires no user interaction and no privileges (unauthenticated). Target endpoints: The attack targets React Server Function endpoints. - Critical nuance: Even if an application does not strictly implement or use React Server Functions, it remains vulnerable if the application supports React Server Components generally. Reliability: Testing has shown the exploit has near-100% reliability. Default configuration: The vulnerability is present in default configurations. For example, a standard Next.js application created with create-next-app and built for production is exploitable without any code changes by the developer. While generally described as affecting React and Next.js, the vulnerability technically exists within specific underlying packages that handle server-side rendering and module loading. The vulnerability is present in versions 19.0.0, 19.1.0, 19.1.1 and 19.2.0 of the following packages: react-server-dom-webpack react-server-dom-parcel react-server-dom-turbopack Any framework bundling these packages is affected: Next.js: Versions 15.x and 16.x (App Router), as well as Canary builds starting from 14.3.0-canary.77 Other ecosystems: React Router, Waku, RedwoodSDK, Parcel and the Vite RSC plugin are all affected if they use the vulnerable React packages Unit 42 has observed interactive sessions related to the exploitation of CVE-2025-55182, including: Scanning for servers vulnerable to RCE Reconnaissance Attempted theft of cloud credential configuration and credential files Installation of downloaders to retrieve payloads from attacker command and control (C2) infrastructure Attempting to install Cobalt Strike Malicious dropper scripts Cryptomining software Interactive web shells masquerading as a React File Manager Executing EtherRAT Executing and installing Noodle RAT IAB activity Executing SNOWLIGHT and VShell findings We are observing automated scanning for the RCE vulnerability: Attacker reconnaissance has been observed in the form of passing Base64-encoded commands for gathering immediate situational awareness after compromising a system. Attackers rapidly fingerprint the operating system and architecture (uname), verify their current privilege level (id) and map network interfaces (hostname). The sequence concludes by enumerating the file system for sensitive credentials and analyzing DNS configurations (resolv.conf) to identify cloud environments or internal targets for lateral movement. The format for running reconnaissance commands is: The decoded Base64 command runs the following reconnaissance commands: Unit 42 has observed multiple clusters of activity related to the deployment of cryptomining software, as well as other commodity malware loaders. In one instance, attackers passed a download-and-execute attack sequence using wget to retrieve a malicious script (named sex.sh) from an attacker-controlled C2 server. The attacker employed the && operator to create a conditional chain, ensuring that the malicious script is passed to the bash interpreter for immediate execution only after it has been successfully downloaded to disk. In another, an automated script was used to perform data theft, verification, and install multiple malware downloaders consistent with internet-of-things (IoT) activity such as a Mirai botnet. The defanged commands are: Figure 1 shows the attack flow of the XMRIG deployment as seen in Cortex XDR. Figure 2 is an alert notification in Cortex XDR for XMRig activity. In one observation, the attacker installed a dropper designed to infect Linux systems. The dropper uses a redundant logic block to ensure the payload is delivered. It first attempts to curl the binary with flags to silence output and follow redirects, and falls back to wget if the first tool is missing or fails. Upon successful download to the /tmp directory, the script executes a chain of commands to make the file universally executable. It then immediately launches the payload, establishing the infection without user intervention. The defanged command for this is: Cloud and Container Exploit Attempts Unit 42 also observed React2Shell exploit attempts across major cloud platforms. These targeted cloud instances hosted containers, including Kubernetes, running applications vulnerable to CVE-2025-55182 via integrated React components. The operations involved command-line execution of wget, curl, chmod and other utilities either directly or though through the BusyBox binary, resulting in attackers attempting to install Mirai loaders and other payloads. Although attackers made attempts to install these files, their malicious downloads were blocked, preventing execution. Unit 42 observed a threat actor leveraging a bash reverse shell to connect to a probable Cobalt Strike server: Additionally, Unit 42 observed a remote execution of a bash script named check.sh from 154.89.152[.]240. As shown in Figure 3, the script is responsible for downloading another binary from the same address named a_x64, which was saved under the name rsyslo. The payload appears to be a Cobalt Strike agent that was created using CrossC2, an extension tool to create Cobalt Strike Beacon for Linux OS. Figure 3 shows the process in Cortex XDR. Figure 4 shows what the alert for Cobalt Strike activity looks like in Cortex XDR. We observed attackers installing an interactive web shell disguised as a React File Manager (fm.js) retrieved directly from GitHub. This web shell enables the browsing of directories to harvest sensitive configuration files, such as database passwords and API keys, while facilitating data exfiltration through a built-in download function to steal source code or customer data. The tool supports persistent compromise by allowing the upload of additional backdoors or rootkits and grants the ability to inflict irreversible damage through bulk file deletion and direct system command execution. The actor initiated the sequence by preemptively terminating existing node processes to eliminate port conflicts, followed by execution validation to confirm arbitrary code execution. The script stages a Node.js web shell payload in the /tmp directory. It employs heuristic network adaptation by iteratively modifying the configuration to cycle through various listening ports, attempting to circumvent local firewall policies. The attack concludes by establishing ephemeral persistence via nohup and deploying unique verification artifacts (segawon.txt) to common web directories, enabling external validation of the compromise and mapping of the server’s file structure. EtherRAT Unit 42 has observed activity consistent with EtherRAT, which performs the following activities: Leveraging Ethereum smart contacts for C2 resolution Using multiple independent Linux persistence mechanisms Downloading its own Node.js runtime from nodejs.org DPRK threat actor UNC5342 is reportedly using EtherHiding to deliver malware and facilitate cryptocurrency theft. Unit 42 observed the deployment of Noodle RAT, a backdoor confirmed to have both Windows and Linux versions and suspected to be used by Chinese-speaking groups engaged in either espionage or cybercrime. Auto-Color Unit 42 has observed multiple instances of a previously unseen Auto-color backdoor across multiple environments, malware we originally published about in February 2025. The filename associated with this backdoor, pamssod, masquerades as the legitimate Pluggable Authentication Module (PAM) library. Auto-color was observed in the following times and locations: Early 2025 targeting Asian and North American universities and government organizations April 2025 on the network of a US-based chemicals company August 2025 in exploitation of CVE‑2025‑31324 CL-STA-1015 Activity Unit 42 observed post-exploitation threat activity we assess with high confidence is consistent with an activity cluster we track as CL-STA-1015. This threat actor was assessed with medium confidence to be a Chinese state-sponsored Initial Access Broker according to Google Threat Intelligence Group. Attackers executed a command to retrieve and immediately execute a malicious shell script payload labeled slt from a remote C2 server. Consistent with previously seen activity, attackers employed a fail-safe logic using the OR operator: The system first attempts the download using curl with flags optimized for stealth (-fsSL to suppress output and follow redirects) and resilience (-m180 to prevent hanging). If curl is unavailable or fails, it automatically falls back to wget with similar quiet and timeout parameters. The command concludes by piping the downloaded content directly into sh, enabling fileless execution where the malicious script runs immediately in memory without necessarily writing a persistent file to the disk. The defanged command for this is: Following the above command, we observed the successful creation of two malicious files on the file system consistent with SNOWLIGHT and determined through analysis that the below VShell sample also resided on the same server: SNOWLIGHT bash script: a455731133c00fdd2a141bdfba4def34ae58195126f762cdf951056b0ef161d4 SNOWLIGHT: 2b0dc27f035ba1417990a21dafb361e083e4ed94a75a1c49dc45690ecf463de4 VShell 4745703f395282a0687def2c7dcf82ed1683f3128bef1686bd74c966273ce1c5 SNOWLIGHT is a stealthy malware dropper seen in CL-STA-1015 activity. Its primary function is to infiltrate a compromised Linux system then download and execute additional, more powerful malware. Most notably, it downloads the VShell RAT. VShell is popular among Chinese-speaking cybercriminals in several forums, and its main developer is also a Chinese speaker. KSwapDoor Upon further analysis, Unit 42 has discovered that what we previously identified as BPFDoor, is in fact a previously unseen Linux backdoor targeting servers that we are calling KSwapDoor. KSwapDoor implements a sophisticated P2P mesh network allowing multi-hop routing between infected nodes, uses AES-256-CFB encryption with Diffie-Hellman key exchange for C2 communications, and includes dormant passive packet sniffer code for potential firewall bypass. It provides full remote access capabilities including interactive shell, command execution, file operations, and lateral movement scanning. Key Findings: Stealth & Masquerade: Upon execution, the binary renames itself to [kswapd1], mimicking a legitimate Linux kernel swap daemon. It fully daemonizes by double-forking, creating a new session (setsid()), and redirecting all standard I/O to /dev/null. Obfuscation: Almost all critical strings and configuration data are protected using RC4 encryption. The malware decrypts these strings at runtime using key scheduling functions (sub_410A41 and sub_410B8D). Persistence & Configuration: It stores its configuration in an RC4-encrypted file within the user’s home directory. During initialization, it reads and decrypts this file to locate Command & Control targets. Resilience: The malware creates a watchdog loop that spawns and monitors child processes, automatically restarting them if they crash. It also utilizes a staging directory at /tmp/appInsight. Interim Guidance Required actions: Immediate patching is the only definitive mitigation. Engineering and security teams should upgrade to the following hardened versions immediately: React: Upgrade to 19.0.1, 19.1.2, or 19.2.1 Next.js: Upgrade to the latest stable patched versions, including 16.0.7, 15.5.7, 15.4.8, 15.3.6, 15.2.6, 15.1.9 or 15.0.5 For the latest updates on this vulnerability, please see the documentation provided by the vendor: The Unit 42 Managed Threat Hunting team continues to track any attempts to exploit this CVE across our customers, using Cortex XDR and the XQL queries below. Cortex XDR customers can also use these XQL queries to search for signs of exploitation. The following XQL query has been used to successfully identify post-compromise activity. During analysis, a low number of false positives were identified. We recommend reviewing the child processes spawned by the node process. Look for suspicious file operations, network operations, reconnaissance commands or code execution, such as the commands observed above. The immediate and expansive exploitation of this vulnerability highlights the speed at which threat actors move to seize on opportunities. While we have noted China-nexus activity, the footprint of activity will encompass significant amounts of cybercriminal motivations as well. Specifically of note, CL-STA-1015 (aka UNC5174) has a history of rapid exploitation of N-day vulnerabilities: The critical distinction of this vulnerability is its nature as a deterministic logic flaw in the Flight protocol, rather than a probabilistic error. Unlike memory corruption bugs that may fail, this flaw guarantees execution, transforming it into a reliable system-wide bypass for attackers. Amplified by the massive footprint of Next.js in enterprise environments, this creates a direct conduit to sensitive internal data. Ultimately, this incident underscores the inherent friction between performance and security in modern architecture. While React Server Components optimize data fetching and search engine optimization (SEO) by moving logic closer to the source, they simultaneously move the attack surface closer to organizations’ most sensitive and valuable data. Palo Alto Networks customers are better protected by our products, as listed below. We will update this threat brief as more relevant information becomes available. Palo Alto Networks customers can leverage a variety of product protections and updates to identify and defend against this threat. 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: +1 (866) 486-4842 (866.4.UNIT42) UK: +44.20.3743.3660 Europe and Middle East: +31.20.299.3130 Asia: +65.6983.8730 Japan: +81.50.1790.0200 Australia: +61.2.4062.7950 India: 000 800 050 45107 South Korea: +82.080.467.8774 Next-Generation Firewall with the Advanced Threat Prevention security subscription can help block the attacks via the following Threat Prevention signatures: 96779, 96780, and 96787. Cloud-Delivered Security Services for the Next-Generation Firewall Advanced URL Filtering and Advanced DNS Security identify known domains and URLs associated with this activity as malicious. Cortex XDR and XSIAM agents help protect against post-exploitation activities using the multi-layer protection approach. Cortex has released a response pack and playbook for CVE-2025-55182 (React) and CVE-2025-66478 (Next.js) to help automate and speed the mitigation process. This playbook automates the following tasks: Collecting indicators from the Unit 42 article Detecting any suspicious command lines indicative of exploitation of these vulnerabilities via an XQL query Investigating the command lines to identify malicious indicators related to the vulnerabilities Hunting for malicious indicators via an XQL query Isolating compromised React and Next.js servers (requires analyst approval) Blocking malicious indicators Providing mitigation recommendations Cortex Xpanse is designed to identify exposed devices and applications on the public internet and escalate these findings to defenders. Customers can enable alerting on assets that are potentially at risk by ensuring that the Vercel Next.js Attack Surface Rule is enabled. Additionally, Xpanse has published an Attack Surface test for CVE-2025-55182. This validates the vulnerability via an RCE direct check by attempting to execute a benign command payload compatible with both Linux and Windows systems. Notably, these React and Next.js applications do not publicly expose software version details, meaning these detections are not a strong indicator of a vulnerable application. These detections are also available for Cortex XSIAM customers who have purchased the ASM module. Cortex Cloud provides comprehensive ASPM capabilities to rapidly identify the reach of CVE-2025-55182 and CVE-2025-66478 across your application landscape. Through real-time SBOM visibility, security teams can instantly query their software inventory to pinpoint specific instances of vulnerable React (versions 19.0–19.2) and Next.js (versions 15.x–16.x) packages. The platform’s Operational Risk model further aids in prioritization by evaluating component health and flagged risks. Crucially, teams can enforce prevention-first guardrails to automatically block builds that contain these critical vulnerabilities. This ensures that no application relying on the unsanctioned or unpatched Flight protocol implementation can ever be deployed, effectively stopping the RCE vector from entering your environment. Prisma Cloud detects the presence of these critical vulnerabilities within your codebase, registries, and runtime environments. The platform’s vulnerability scanner specifically identifies the use of the affected react-server and next packages associated with CVE-2025-55182 and CVE-2025-66478. Beyond detection, you can configure enforcement rules to actively block builds and deployments if these high-severity findings are detected. By surfacing these risks and enforcing a fail-threshold for critical CVEs, Prisma Cloud enables teams to prevent the release of applications running susceptible versions, ensuring that only the hardened, patched frameworks reach production. 140[.]99[.]223[.]178 156[.]234[.]209[.]103 38[.]162[.]112[.]141 45[.]32[.]158[.]54 46[.]36[.]37[.]85 47[.]84[.]79[.]46 95[.]169[.]180[.]135 hxxp://45.134.174[.]235/2.sh hxxp://45.134.174[.]235/solra hxxp://46[.]36[.]37[.]85:12000/sex[.]sh hxxp://115[.]42[.]60[.]223:61236/slt hxxp://45[.]32[.]158[.]54/5e51aff54626ef7f/x86_64 hxxp://115[.]42[.]60[.]223:61236/slt hxxp://156[.]234[.]209[.]103:20912/get[.]sh hxxp://156[.]234[.]209[.]103:20913/get[.]sh hxxp://45[.]32[.]158[.]54/5e51aff54626ef7f/x86_64 hxxp://46[.]36[.]37[.]85:12000/sex[.]sh hxxp://95[.]169[.]180[.]135:8443/pamssod hxxp://res[.]qiqigece[.]top/nginx1 hxxps://raw[.]githubusercontent[.]com/C3Pool/xmrig_setup/master/setup_c3pool_miner[.]sh hxxps://sup001[.]oss-cn-hongkong[.]aliyuncs[.]com/123/python1[.]sh reactcdn[.]windowserrorapis[.]com res[.]qiqigece[.]top ebdb85704b2e7ced3673b12c6f3687bc0177a7b1b3caef110213cc93a75da837 f88ce150345787dd1bcfbc301350033404e32273c9a140f22da80810e3a3f6ea fc9e53675e315edeea2292069c3fbc91337c972c936ca0f535da01760814b125 KSwapDoor hxxp://140.99.223[.]178/32736 1f3f0695c7ec63723b2b8e9d50b1838df304821fcb22c7902db1f8248a812035 EtherRAT hxxp://193.24.123[.]68:3001/gfdsgsdfhfsd_ghsfdgsfdgsdfg.sh Noodle RAT 192.238.202[.]17 tcp://vip[.]kof97.lol:443 hxxp://146.88.129[.]138:5511/443nb64 33641bfbbdd5a9cd2320c61f65fe446a2226d8a48e3bd3c29e8f916f0592575f SNOWLIGHT 115[.]42[.]60[.]223 a455731133c00fdd2a141bdfba4def34ae58195126f762cdf951056b0ef161d4 1663d98c259001f1b03f82d0c5bee7cfd3c7623ccb83759c994f9ab845939665 18c68a982f91f665effe769f663c51cb0567ea2bfc7fab6a1a40d4fe50fc382b 1a3e7b4ee2b2858dbac2d73dd1c52b1ea1d69c6ebb24cc434d1e15e43325b74e 1cdd9b0434eb5b06173c7516f99a832dc4614ac10dda171c8eed3272a5e63d20 1e31dc074a4ea7f400cb969ea80e8855b5e7486660aab415da17591bc284ac5b 2b0dc27f035ba1417990a21dafb361e083e4ed94a75a1c49dc45690ecf463de4 2ca913556efd6c45109fd8358edb18d22a10fb6a36c1ab7b2df7594cd5b0adbc 4ff096fbea443778fec6f960bf2b9c84da121e6d63e189aebaaa6397d9aac948 55ae00bc8482afd085fd128965b108cca4adb5a3a8a0ee2957d76f33edd5a864 62e9a01307bcf85cdaeecafd6efb5be72a622c43a10f06d6d6d3b566b072228d 7d25a97be42b357adcc6d7f56ab01111378a3190134aa788b1f04336eb924b53 7f05bad031d22c2bb4352bf0b6b9ee2ca064a4c0e11a317e6fedc694de37737a 9c931f7f7d511108263b0a75f7b9fcbbf9fd67ebcc7cd2e5dcd1266b75053624 ac2182dfbf56d58b4d63cde3ad6e7a52fed54e52959e4c82d6fc999f20f8d693 ac7027f30514d0c00d9e8b379b5ad8150c9827c827dc7ee54d906fc2585b6bf6 b38ec4c803a2d84277d9c598bfa5434fb8561ddad0ec38da6f9b8ece8104d787 bc31561c44a36e1305692d0af673bc5406f4a5bb2c3f2ffdb613c09b4e80fa9f bf602b11d99e815e26c88a3a47eb63997d43db8b8c60db06d6fbddf386fd8c4a d704541cde64a3eef5c4f80d0d7f96dc96bae8083804c930111024b274557b16 d9313f949af339ed9fafb12374600e66b870961eeb9b2b0d4a3172fd1aa34ed0 e2d7c8491436411474cef5d3b51116ddecfee68bab1e15081752a54772559879 VShell 4a759cbc219bcb3a1f8380a959307b39873fb36a9afd0d57ba0736ad7a02763b Additional Resources UNC5174’s evolution in China’s ongoing cyber warfare: From SNOWLIGHT to VShell – Blog, Sysdig Bringing Access Back — Initial Access Brokers Exploit F5 BIG-IP (CVE-2023-46747) and ScreenConnect – Google Cloud Blog UNC5174 Functions as an Initial Access Broker, Exploiting Vulnerabilities – Hive Pro Vulnerability Report Updated Dec. 8, 2025, at 3:45 p.m. PT to add significant updates. These include a Post-Exploitation Activity section and product coverage. New activity covers: scanning and reconnaissance, cloud credential theft, malicious dropper scripts, cryptomining, deployment of backdoor Noodle RAT, execution of SNOWLIGHT and VShell and Chinese-linked activity. Updated Dec. 9, 2025, at 2:00 p.m. PT to add significant updates. These include additional details in the Post-Exploitation Activity section. New subsections include information on: Activity that shares overlaps with DPRK tooling using EtherRAT; BPFDoor, a Linux backdoor; and a new Auto-color variant (a Linux backdoor). Updated the Indicators of Compromise section. Added a new Threat Prevention signature. Updated Dec. 10, 2025, at 1:30 p.m. PT to add subsection on React2Shell exploit attempts in the Post-Exploitation Activity section. Added Cortex XDR playbook coverage and information. Updated Dec. 11, 2025, at 1:30 p.m. PT to add script to subsection on React2Shell exploit attempts in the Post-Exploitation Activity section. Amended Cortex Xpanse language. Updated Dec. 12, 2025, at 1:40 p.m. PT to change language surrounding CL-STA-1015 attribution, and update BPFDoor name to KSwapDoor with additional details. Updated Dec. 15, 2025, at 2:00 p.m. PT to add update on KSwapDoor to Executive Summary section. Made small changes for clarity. Updated Dec. 21, 2025, at 2:45 p.m. PT to further defang IoC sections.
unit42.paloaltonetworks.comDec 4, 2025extracted
Cobalt Strike Beacon delivered via GitHub and social media
Introduction In the latter half of 2024, the Russian IT industry, alongside a number of entities in other countries, experienced a notable cyberattack. The attackers employed a range of malicious techniques to trick security systems and remain undetected. To bypass detection, they delivered information about their payload via profiles on both Russian and international social media platforms, as well as other popular sites supporting user-generated content. The samples we analyzed communicated with GitHub, Microsoft Learn Challenge, Quora, and Russian-language social networks. The attackers thus aimed to conceal their activities and establish a complex execution chain for the long-known and widely used Cobalt Strike Beacon. Although the campaign was most active during November and December 2024, it continued until April 2025. After a two-month silence, our security solutions began detecting attacks again. The adversary employed new malicious samples, which were only slightly modified versions of those described in the article. Kaspersky solutions detect this threat and assign the following verdicts: HEUR:Trojan.Win64.Agent.gen HEUR:Trojan.Win64.Kryptik.gen HEUR:Trojan.WinLNK.Starter.gen MEM:Trojan.Multi.Cobalt.gen HEUR:Trojan.Win32.CobaltStrike.gen Initial attack vector The initial attack vector involved spear phishing emails with malicious attachments. The emails were disguised as legitimate communications from major state-owned companies, particularly within the oil and gas sector. The attackers feigned interest in the victims’ products and services to create a convincing illusion of legitimacy and increase the likelihood of the recipient opening the malicious attachment. All attachments we observed were RAR archives with the following structure: Требования.lnk Требования - Company Profile.pdf - List of requirements.pdf - Требования Company profile.pdf and List of requirements.pdf were decoy files designed to complement the information in the email. The directory Требования\Требования contained executables named Company.pdf and Requirements.pdf, designed to mimic secure PDF documents. The directory itself was hidden, invisible to the user by default. When Требования.lnk was opened, the files in Требования\Требования were copied to %public%\Downloads\ and renamed: Company.pdf became nau.exe, and Requirements.pdf became BugSplatRc64.dll. Immediately afterward, nau.exe was executed. Contents of Требования.lnk Malicious agent In this attack, the adversary leveraged a common technique: DLL Hijacking (T1574.001). To deploy their malicious payload, they exploited the legitimate Crash reporting Send Utility (original filename: BsSndRpt.exe). The tool is part of BugSplat, which helps developers get detailed, real-time crash reports for their applications. This was the utility that the attackers renamed from Company.pdf to nau.exe. For BsSndRpt.exe to function correctly, it requires BugSplatRc64.dll. The attackers saved their malicious file with that name, forcing the utility to load it instead of the legitimate file. To further evade detection, the malicious BugSplatRc64.dll library employs Dynamic API Resolution (T1027.007). This technique involves obscuring API functions within the code, resolving them dynamically only during execution. In this specific case, the functions were obfuscated via a custom hashing algorithm, which shares similarities with CRC (Cyclic Redundancy Check). A significant portion of the hashes within the malicious sample are XOR-encrypted. Additionally, after each call, the address is removed from memory, and API functions are reloaded if a subsequent call is needed. MessageBoxW function hook The primary purpose of BugSplatRc64.dll is to intercept API calls within the legitimate utility’s process address space to execute its malicious code (DLL Substitution, T1574.001). Instead of one of the API functions required by the process, a call is made to a function (which we’ll refer to as NewMessageBox) located within the malicious library’s address space. This technique makes it difficult to detect the malware in a sandbox environment, as the library won’t launch without a specific executable file. In most of the samples we’ve found, the MessageBoxW function call is modified, though we’ve also discovered samples that altered other API calls. After modifying the intercepted function, the library returns control to the legitimate nau.exe process. NewMessageBox function Once the hook is in place, whenever MessageBoxW (or another modified function) is called within the legitimate process, NewMessageBox executes. Its primary role is to run a shellcode, which is loaded in two stages. First, the executable retrieves HTML content from a webpage located at one of the addresses encrypted within the malicious library. In the sample we analyzed, these addresses were https://techcommunity.microsoft[.]com/t5/user/viewprofilepage/user-id/2631 and https://www.quora[.]com/profile/Marieformach. The information found at both locations is identical. The second address serves as a backup if the first one becomes inactive. NewMessageBox searches the HTML code retrieved from these addresses for a string whose beginning and end match patterns that are defined in the code and consist of mixed-case alphanumeric characters. This technique allows attackers to leverage various popular websites for storing these strings. We’ve found malicious information hidden inside profiles on GitHub, Microsoft Learn Challenge, Q&A websites, and even Russian social media platforms. While we didn’t find any evidence of the attackers using real people’s social media profiles, as all the accounts were created specifically for this attack, aligning with MITRE ATT&CK technique T1585.001, there’s nothing stopping the threat actor from abusing various mechanisms these platforms provide. For instance, malicious content strings could be posted in comments on legitimate users’ posts. The extracted payload is a base64-encoded string with XOR-encrypted data. Decrypted, this data reveals the URL https://raw.githubusercontent[.]com/Mariew14/kong/master/spec/fixtures/verify-prs, which then downloads another XOR-encrypted shellcode. We initially expected NewMessageBox to execute the shellcode immediately after decryption. Instead, nau.exe launches a child process with the same name and the qstt parameter, in which all of the above actions are repeated once again, ultimately resulting in the execution of the shellcode. Shellcode An analysis of the shellcode (793453624aba82c8e980ca168c60837d) reveals a reflective loader that injects Cobalt Strike Beacon into the process memory and then hands over control to it (T1620). The observed Cobalt sample communicates with the C2 server at moeodincovo[.]com/divide/mail/SUVVJRQO8QRC. Attribution and victims The method used to retrieve the shellcode download address is similar to the C2 acquisition pattern that our fellow security analysts observed in the EastWind campaign. In both cases, the URL is stored in a specially crafted profile on a legitimate online platform like Quora or GitHub. In both instances, it’s also encrypted using an XOR algorithm. Furthermore, the targets of the two campaigns partially overlap: both groups of attackers show interest in Russian IT companies. It’s worth mentioning that while most of the attacks targeted Russian companies, we also found evidence of the malicious activity in China, Japan, Malaysia, and Peru. The majority of the victims were large and medium-sized businesses. Takeaways Threat actors are using increasingly complex and clever methods to conceal long-known tools. The campaign described here used techniques like DLL hijacking, which is gaining popularity among attackers, as well as obfuscating API calls within the malicious library and using legitimate resources like Quora, GitHub, and Microsoft Learn Challenge to host C2 addresses. We recommend that organizations adhere to the following guidelines to stay safe: Track the status of their infrastructure and continuously monitor their perimeter. Use powerful security solutions to detect and block malware embedded within bulk email. Train their staff to increase cybersecurity awareness. Secure corporate devices with a comprehensive system that detects and blocks attacks in the early stages. You can detect the malware described here by searching for the unsigned file BugSplatRc64.dll in the file system. Another indirect sign of an attack could be the presence of Crash reporting Send Utility with any filename other than the original BsSndRpt.exe. IOCs: LNK 30D11958BFD72FB63751E8F8113A9B04 92481228C18C336233D242DA5F73E2D5 Legitimate BugSplat.exe 633F88B60C96F579AF1A71F2D59B4566
securelist.comJul 30, 2025extracted