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

@dransay/phone-fix-testnpm

Advisory published Updated

@dransay/phone-fix-test is a confirmed malicious npm package (MAL-2026-17698) that steals credentials and exfiltrates sensitive data (malicious version 99.0.0). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in @dransay/phone-fix-test (npm)

MAL-2026-17698
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall @dransay/phone-fix-test

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.

Package.json declares scripts.preinstall="node beacon.js", which fires automatically on npm install. beacon.js performs a DNS lookup and HTTPS GET to a hardcoded Interactsh/OAST subdomain under oast.site, keyed on the package name, causing the installing host's source IP and resolver metadata to be logged by a non-first-party collector. The package is published under the @dransay scope on the public npm registry at version 99.0.0 — the standard dependency-confusion probe shape (scoped name matching a target organization, implausibly high version to win resolution against an internal package of the same name). Any build system that resolves @dransay/phone-fix-test from public npm will execute the preinstall callout and leak its network identifier to the researcher's OAST endpoint. The README self-labels the behavior as authorized security research, but a self-label does not change the installer-side effect: unconsented install-time exfiltration of host-identifying network metadata to a researcher-controlled collector.

Malicious versions

1 flagged
99.0.0

Indicators of compromise (SHA-256)

e01479e9a6af5de5f6abec6c16007bd3757b52b0e434b38b44d40fde12961c08

Detection & response playbook

Credential / info stealer
  1. Find it

    Search your lockfiles and build artifacts for @dransay/phone-fix-test (version 99.0.0).

  2. If you installed it — respond

    @dransay/phone-fix-test is built to steal secrets, so assume every credential the build or runtime could read is compromised. Remove it from your project and lockfile, then rotate ALL exposed secrets — npm/registry tokens, cloud keys, CI/CD secrets, SSH keys, and any .env values — from a known-clean machine. Audit logs for unauthorized use of those credentials.

  3. Did it already run?

    If @dransay/phone-fix-test 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/phone-fix-test 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-021219

References

Credits

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

Detect & block this

O3 blocks @dransay/phone-fix-test-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the credential exfiltration and severs the channel.

Explore

@dransay/phone-fix-test (npm) malicious package — MAL-2026-17698 | O3 Security