Article Details

Scrape Timestamp (UTC): 2026-01-28 10:01:30.942

Source: https://thehackernews.com/2026/01/fake-python-spellchecker-packages-on.html

Original Article Text

Click to Toggle View

Fake Python Spellchecker Packages on PyPI Delivered Hidden Remote Access Trojan. Cybersecurity researchers have discovered two malicious packages in the Python Package Index (PyPI) repository that masquerade as spellcheckers but contain functionality to deliver a remote access trojan (RAT). The packages, named spellcheckerpy and spellcheckpy, are no longer available for download, but not before they were collectively downloaded a little over 1,000 times. "Hidden inside the Basque language dictionary file was a base64-encoded payload that downloads a full-featured Python RAT," Aikido researcher Charlie Eriksen said. "The attacker published three 'dormant' versions first, payload present, trigger absent, then flipped the switch with spellcheckpy v1.2.0, adding an obfuscated execution trigger that fires the moment you import SpellChecker." Unlike other packages that conceal the malicious functionality within "__init__.py" scripts, the threat actor behind the campaign has been found to add the payload inside a file named "resources/eu.json.gz" that contains Basque word frequencies from the legitimate pyspellchecker package. While the function looks straightforward and harmless, the malicious behavior is triggered when the archive file is extracted using the test_file() function with the parameters: test_file("eu", "utf-8", "spellchecker"), causing it to retrieve a Base64-encoded downloader hidden in the dictionary under a key called "spellchecker." Interestingly, the first three versions of the package only fetched and decoded the payload, but never executed it. However, that changed with the release of spellcheckpy version 1.2.0, published on January 21, 2026, when it gained the ability to run the payload as well. The first stage is a downloader that's designed to retrieve a Python-based RAT from an external domain ("updatenet[.]work"). It's capable of fingerprinting the compromised host, parsing incoming commands, and executing them. The domain, registered in late October 2025, is associated with 172.86.73[.]139, an IP address managed by RouterHosting LLC (aka Cloudzy), a hosting provider that has a history of offering its services to nation-state groups. This is not the first time fake Python spell-checking tools have been detected in PyPI. In November 2025, HelixGuard said it discovered a malicious package named "spellcheckers" that featured the ability to retrieve and execute a RAT payload. It's suspected that these two sets of attacks are the work of the same threat actor. The development coincides with the discovery of several malicious npm packages to facilitate data theft and target cryptocurrency wallets - The disclosure also comes as Aikido highlighted the threat associated with slopsquatting, wherein artificial intelligence (AI)-powered agents can hallucinate non-existent packages that could then be claimed by a threat actor to push malicious code to downstream users. In one case highlighted by the supply chain security company, it has been found that a fictitious npm package named "react-codeshift" is referenced by 237 GitHub repositories since it was made up of a large language model in mid-October 2025, with some of them even instructing AI agents to install it. "How did it spread to 237 repos? Agent skill files. Copy-pasted, forked, translated into Japanese, never once verified," Eriksen said. "Skills are the new code. They don't look like it. They're Markdown and YAML and friendly instructions. But they're executable. AI agents follow them without asking, 'Does this package actually exist?'"

Daily Brief Summary

MALWARE // Malicious Python Packages on PyPI Deliver Remote Access Trojan

Cybersecurity researchers identified two malicious packages on PyPI, masquerading as spellcheckers, which delivered a remote access trojan (RAT) to unsuspecting users.

Named spellcheckerpy and spellcheckpy, these packages were downloaded over 1,000 times before removal, posing a significant risk to developers and their projects.

The packages contained a base64-encoded payload hidden in a Basque language dictionary file, which downloaded a full-featured Python RAT upon execution.

The RAT was capable of fingerprinting compromised hosts, parsing and executing incoming commands, indicating a sophisticated threat to systems.

The domain used for the RAT's downloader was linked to a hosting provider known for serving nation-state groups, raising concerns about potential state-sponsored involvement.

Previous incidents involved similar malicious spell-checking tools on PyPI, suggesting a recurring threat actor targeting Python developers.

The discovery coincides with malicious npm packages targeting data theft and cryptocurrency wallets, highlighting ongoing supply chain vulnerabilities.