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

okra-cloud-cdknpm

Advisory published Updated

okra-cloud-cdk is a confirmed malicious npm package (MAL-2026-17436) that steals credentials and exfiltrates sensitive data (malicious version 100.0.0). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in okra-cloud-cdk (npm)

MAL-2026-17436
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall okra-cloud-cdk

What this malware does

okra-cloud-cdk is a dependency-confusion package: it takes a name that looks like an internal project, uses an inflated version (100.0.0) so it outranks private-registry versions, and runs node setup.js || true as a preinstall script on npm install. setup.js sends the hostname, username, working directory, OS, architecture, Node.js version and configured npm registry, with a per-package tracking token, in an HTTPS POST to https://s85r5k14qk.execute-api.us-east-1.amazonaws.com/prod/hook. The npm account amel10 published okra-cloud-cdk and 9 similar packages within two minutes on 2026-09-30, all with the same setup.js.

[email protected] ships a preinstall lifecycle script (setup.js) that runs automatically on npm install. The script collects installer-side identifiers — hostname (os.hostname()), username (os.userInfo().username), current working directory (process.cwd()), platform, architecture, Node version, and the configured npm registry URL (npm_config_registry) — and POSTs them along with a hardcoded token to a hardcoded AWS API Gateway endpoint at https://s85r5k14qk.execute-api.us-east-1.amazonaws.com/prod/hook. The package's declared main is a trivial zeroPad stub whose functionality (Pad number with leading zeros) is unrelated to the package name okra-cloud-cdk, and the implausibly high version number (100.0.0) is consistent with an attempt to win resolution against an internal package of the same name. The exfiltrated npm_config_registry value in particular discloses internal/private registry hostnames, which are the identifying signal used to select follow-up dependency-confusion targets.

Malicious versions

1 flagged
100.0.0

Indicators of compromise (SHA-256)

84a86d5a0d96567fc1ab65c8f61ab1610b8488859dd53ade8a7a05a86389d371

Detection & response playbook

Credential / info stealer
  1. Find it

    Search your lockfiles and build artifacts for okra-cloud-cdk (version 100.0.0).

  2. If you installed it — respond

    okra-cloud-cdk 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 okra-cloud-cdk 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. okra-cloud-cdk on npm has been identified as a malicious package (version 100.0.0 flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

IN-MAL-2026-020934

References

Credits

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

Detect & block this

O3 blocks okra-cloud-cdk-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

okra-cloud-cdk (npm) malicious package — MAL-2026-17436 | O3 Security