Nimbus Manticore Targets Developers with Node.js-based Cross-Platform RATs
The Iranian threat actor Nimbus Manticore is distributing NodeRabbit and PollCat cross-platform RATs via trojanized coding challenges on LinkedIn to compromise developer systems.
The Iranian threat actor Nimbus Manticore (also known as Iranian Dream Job) has expanded its arsenal with two new Node.js-based remote access trojans (RATs), NodeRabbit and PollCat. These tools are delivered via spear-phishing campaigns on platforms like LinkedIn, where attackers pose as recruiters. Victims are lured into downloading trojanized coding challenge archives containing a project management application. Malicious code is embedded within the project's 'server.js' file, which imports a trojanized npm package ('colorized_terminal' or 'pretty-log') to silently launch an implant. These RATs are cross-platform, affecting Windows, Linux, and macOS, and are used for cyber espionage. The group has historically used C, C++, and Go, but the shift to Node.js indicates an effort to blend into developer environments and simplify cross-platform deployment.
Attack Chain
- Attacker establishes contact with a software engineer on LinkedIn, posing as a talent acquisition specialist.
- Victim downloads a ZIP archive (e.g., 'Front-Technical-Challenge.zip') containing a project management tool.
- Victim runs the 'server.js' component, which triggers the import of a trojanized npm package ('colorized_terminal' or 'pretty-log').
- The malicious package executes an index.js file from 'node_modules/.cache/' as a detached background process.
- The NodeRabbit/PollCat implant establishes C2 communication with Azure-hosted infrastructure via hardcoded API endpoints.
- Malware ensures persistence using OS-specific methods (Windows Registry Run keys, Linux cron jobs, or macOS launch agents).
- Attacker executes commands to harvest system data, steal browser/Outlook credentials, or inject persistence mechanisms into local Git repositories.
Impact
The campaign targets software engineers in critical sectors across the Middle East and Africa. Successful exploitation allows for complete remote control of the host, enabling data exfiltration, credential harvesting (including Outlook OST/PST files), and deep reconnaissance of the victim's development environment.
Recommendation
- Block the C2 domains listed in the IOC table at the DNS resolver level to disrupt command-and-control communications.
- Implement detection logic to monitor for unexpected npm package imports from non-registry locations or obscure paths within project 'node_modules' directories.
- Prohibit the execution of untrusted coding challenges on systems with access to production environments or sensitive source code.
- Hunt for the presence of the identified malicious npm package names ('colorized_terminal' v2.1.0, 'pretty-log' v2.1.0) in local node_modules folders.
Immediate actions
Block listed C2 domains
Threat Hunt
Search for existence of 'node_modules/.cache/' directories with subdirectories of randomized hex names
Data: Filesystem telemetry
Detection coverage 1
Detect Suspicious Node.js Persistence via NPM Package Import
highDetects execution of Node.js applications that load malicious npm packages from local project subdirectories, consistent with NodeRabbit and PollCat delivery.
Detection queries are available on the platform. Get full rules →
Indicators of compromise
3
domain
| Type | Value |
|---|---|
| domain | plugplay.azurewebsites.net |
| domain | rgbteller.azurewebsites.net |
| domain | wslwebui.azurewebsites.net |