A sophisticated malware campaign is targeting developers, data analysts, and OSINT researchers by distributing a new information-stealing RAT named PyStoreRAT. The malware is delivered through malicious GitHub repositories that masquerade as legitimate tools for OSINT, AI, or DeFi. Attackers employ social engineering by creating credible-looking projects, complete with artificially inflated star and fork counts, to lure victims. The malicious code is introduced in a later update. Once executed, PyStoreRAT steals sensitive information, focusing on cryptocurrency wallets, and acts as a backdoor to deliver additional malware like the Rhadamanthys infostealer. This campaign highlights the increasing trend of threat actors poisoning the open-source software supply chain to target technically proficient users.
This campaign leverages a clever social engineering tactic. Attackers create a GitHub repository for a seemingly useful tool. They build a false sense of trust and popularity by using bots or other means to add stars and forks. After developers or researchers clone and begin using the tool, the attackers push an update that contains the hidden PyStoreRAT payload. Users who pull the update and run the new code become infected.
Infection Chain:
mshta.exe to execute JavaScript, a technique to bypass some security controls. It also checks for the presence of EDR solutions from vendors like CrowdStrike and ReasonLabs.PyStoreRAT Capabilities:
Information Stealing: Exfiltrates files, with a focus on those related to cryptocurrency wallets.
Backdoor/Downloader: Can download and execute secondary payloads. The Rhadamanthys infostealer has been observed as a follow-on payload, which is a powerful stealer capable of harvesting browser data, system information, and more crypto wallets.
Propagation: Spreads to other systems via infected USB drives.
MITRE ATT&CK Mapping:
T1195.001 - Compromise Software Supply Chain: The core of the campaign involves compromising the software supply chain via malicious GitHub repos.T1204.002 - Malicious File: The user is tricked into executing the malicious Python script.T1059.006 - Python: The initial payload is a Python script.T1547.001 - Registry Run Keys / Startup Folder: The use of a scheduled task for persistence.T1555 - Credentials from Password Stores/Secrets: The primary goal of stealing credentials and crypto wallets.T1091 - Replication Through Removable Media: The USB propagation feature.The impact on an infected individual can be severe, leading to the theft of cryptocurrency and other sensitive financial information. For an organization, a compromised developer machine is a critical security incident. Developers often have privileged access to source code repositories, cloud environments, and production systems. An attacker with control of a developer's machine can steal proprietary code, inject malicious code into the company's own software (a further supply chain attack), or pivot to more critical parts of the network. The USB propagation feature also creates a risk of the malware spreading rapidly within an organization's internal network.
| Type | Value | Description |
|---|---|---|
process_name |
mshta.exe |
Monitor for mshta.exe being launched by Python processes, which is an unusual behavior. |
command_line_pattern |
schtasks.exe /create /tn "Nvidia Update" |
Look for the creation of a scheduled task with this name, which is used for persistence. |
file_path |
autorun.inf |
Monitor for the creation of autorun.inf files on the root of USB drives, an indicator of the propagation mechanism. |
network_traffic_pattern |
Outbound connections from python.exe to unknown IPs |
Monitor for network connections from Python scripts to suspicious domains or IP addresses, which could be C2 communication. |
python.exe -> mshta.exe), the creation of persistence mechanisms like scheduled tasks, and file access patterns indicative of information stealing. This aligns with D3FEND Process Analysis (D3-PA).Training developers to be skeptical of open-source projects and to inspect code is a crucial non-technical mitigation.
Running development tools in isolated environments like containers can prevent malware from accessing the host system or spreading.
Using application control policies to restrict the execution of unsigned or untrusted scripts can help prevent the initial infection.
Disabling USB autorun via Group Policy is a direct countermeasure to the malware's propagation mechanism.
To detect PyStoreRAT's activity, security teams must perform detailed Process Analysis on developer endpoints. The malware exhibits several anomalous behaviors that can be flagged by an EDR solution. Specifically, create detection rules for a Python process (python.exe) spawning mshta.exe, as this is a known evasion technique. Additionally, monitor for any process creating a scheduled task named 'Nvidia Update' via schtasks.exe. This is a high-fidelity indicator of this specific malware's persistence mechanism. By analyzing process lineage and command-line arguments, security operations can move beyond simple signature-based detection and identify the behavioral TTPs of the malware, enabling a swift response to an infection.
A strategic mitigation against threats like PyStoreRAT is to enforce Application Isolation and Sandboxing for development environments. Instead of running code cloned from GitHub directly on their primary workstation, developers should be required to use isolated environments. This can be achieved using technologies like Docker containers, dedicated virtual machines (VMs), or cloud-based development environments (e.g., GitHub Codespaces). By running the potentially malicious code in a sandbox, the malware is contained. It cannot access the developer's personal files, credentials on the host machine, or the corporate network. Its ability to establish persistence or propagate via USB is also neutralized. This approach treats all untrusted code as potentially malicious by default and severely limits the potential impact of a compromise.
To directly counter PyStoreRAT's ability to spread via USB drives, organizations should implement IO Port Restriction using Group Policy or an EDR's device control feature. The most effective policy is to block the execution of programs from removable media entirely. At a minimum, the 'AutoPlay' and 'Autorun' features for all drives should be disabled across the enterprise. This prevents the malware from automatically executing when an infected USB drive is inserted into a new computer. While this doesn't stop a user from manually running the malware, it removes the automated, high-speed propagation vector, giving security teams a better chance to contain an outbreak.

Cybersecurity professional with over 10 years of specialized experience in security operations, threat intelligence, incident response, and security automation. Expertise spans SOAR/XSOAR orchestration, threat intelligence platforms, SIEM/UEBA analytics, and building cyber fusion centers. Background includes technical enablement, solution architecture for enterprise and government clients, and implementing security automation workflows across IR, TIP, and SOC use cases.
Help others stay informed about cybersecurity threats