Malicious code in @shared-web/utils (npm)
MAL-2026-16292
Published · Modified
Dependency scanning
Check whether @shared-web/utils is in your codebase
Corgea flags malicious and compromised dependencies with reachability analysis, so you fix the packages that actually run in your application instead of working through the whole lockfile.
Description
__
Source: amazon-inspector (5425b12d827e5327939280ed16ddd0a613b28d0d728a0a8b193f342a666c65e9)
package.json declares scripts.install: node index.js, which loads lib/core.js. On npm install, that module reads os.userInfo().username, os.hostname(), and the current working directory basename, concatenates them with a fixed 'swutils' prefix and a timestamp using '.' as separators, and issues a dns.resolve4() query for the resulting label under a hardcoded out-of-band domain oob.algamil7x.xyz. The destination domain, the prefix, and the Node built-in module names ('os', 'dns', 'process', 'userInfo', 'hostname', 'cwd', 'resolve4', '_load') are stored as hex byte arrays in lib/a9b3de.js and lib/f8a2cd.js and reassembled at runtime via String.fromCharCode, with the runtime imported through module.constructor._load rather than a normal require. The library exposes no documented functionality that would motivate hiding its DNS destination or Node built-in module names. The result is a DNS-tunnel exfiltration of installer identity (username, host, cwd) to a non-first-party domain that fires automatically on every install.
References
Ready to move
Start Securing
Free, no credit card | First findings in minutes