Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
Malicious package

@dransay/apinpm

Advisory published Updated

@dransay/api is a confirmed malicious npm package (MAL-2026-17805) that opens a backdoor for remote access (malicious version 99.0.0). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in @dransay/api (npm)

MAL-2026-17805
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall @dransay/api

What this malware does

@dransay/[email protected] is a dependency-confusion probe claiming the internal @dransay/* namespace, not an identified public package. Its preinstall hook runs on npm install as node beacon.js and sends a DNS lookup and an HTTPS GET to db3klhbi6i9hark1kegg174t38h33b6wt.oast.site, using the package name in the request; npm account 0xamino_hunter published it on 2026-10-08.

@dransay/[email protected] is a dependency-confusion-shaped package (unscoped-sounding name with an implausibly high version 99.0.0 and publishConfig public) whose package.json declares a preinstall script node beacon.js. On every npm install, beacon.js performs a DNS lookup and HTTPS GET to a hardcoded Interactsh out-of-band collaborator host db3klhbi6i9hark1kegg174t38h33b6wt.oast.site, with the package name included in the DNS label and HTTP path. This causes the installer's source IP, resolver IP, install timestamp, and the fact that the internal package name resolved against the public npm registry to be transmitted to a third-party OOB server. The pattern is consistent with a dependency-confusion probe: a package name chosen to collide with a target organization's internal package is published to the public registry at a very high version so that a misconfigured internal resolver pulls the public copy, and the preinstall beacon then signals the attacker that the confusion succeeded. No further payload is shipped in this version, but the install-time outbound call to an attacker-controlled OOB host occurs without installer opt-in and leaks installer-identifying information.

Malicious versions

1 flagged
99.0.0

Indicators of compromise (SHA-256)

e237d11d4a80279031cdf312f3c879913d5ce485a74538e52b64a03a4332da34

Detection & response playbook

Backdoor / remote access
  1. Find it

    Search your lockfiles and build artifacts for @dransay/api (version 99.0.0).

  2. If you installed it — respond

    @dransay/api establishes remote access, so treat any host that installed it as fully compromised. Isolate the machine, remove the package, rotate all credentials it could reach, and rebuild from a trusted image rather than cleaning in place — a backdoor may have planted additional persistence.

  3. Did it already run?

    If @dransay/api 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

No. @dransay/api on npm has been identified as a malicious package (version 99.0.0 flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

IN-MAL-2026-021464

References

Credits

  • Amazon Inspector · finder
  • InvisiRisk, Inc. · finder

Detect & block this

O3 blocks @dransay/api-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the C2 callback and severs the channel.

Explore