Malicious code in rand-txs-sdk (npm)
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (383599a80e18acfe3bbf819e2c1cc5ec27a4663b2da9e18c7755000857196dc9) The package advertises itself as a random-transaction generator but its exported getTransactions API triggers execution of a hidden code payload. load_transaction_data reads per-record 'mark' strings from database.js, applies a shift-cipher keyed by the caller-supplied count argument, base64-decodes the concatenated result, and passes the resulting bytes to the Function constructor invoked with Buffer, require, and process — granting the decoded code full Node.js privileges (filesystem, network, child process). The identifiers Function, require, process, Buffer, setTimeout, and clearTimeout are not present as plain strings; they are reconstructed at runtime by index-selecting fragments from a hidden character array and joined, and the Function constructor is retrieved indirectly through constructor.constructor on a global object. This string-splicing pattern is used specifically to hide the dynamic-execution sink from static analysis, and the combination of obfuscated global reconstruction plus execution of decoded data from a bundled data file is a loader-in-benign-wrapper attack shape rather than any behavior consistent with the stated purpose.
Malicious code in rand-txs-sdk (npm)
Description
--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (383599a80e18acfe3bbf819e2c1cc5ec27a4663b2da9e18c7755000857196dc9) The package advertises itself as a random-transaction generator but its exported getTransactions API triggers execution of a hidden code payload. load_transaction_data reads per-record 'mark' strings from database.js, applies a shift-cipher keyed by the caller-supplied count argument, base64-decodes the concatenated result, and passes the resulting bytes to the Function constructor invoked with Buffer, require, and process — granting the decoded code full Node.js privileges (filesystem, network, child process). The identifiers Function, require, process, Buffer, setTimeout, and clearTimeout are not present as plain strings; they are reconstructed at runtime by index-selecting fragments from a hidden character array and joined, and the Function constructor is retrieved indirectly through constructor.constructor on a global object. This string-splicing pattern is used specifically to hide the dynamic-execution sink from static analysis, and the combination of obfuscated global reconstruction plus execution of decoded data from a bundled data file is a loader-in-benign-wrapper attack shape rather than any behavior consistent with the stated purpose.
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- MAL-2026-14273
- Osv Schema Version
- 1.7.4
- Aliases
- []
- Ecosystems
- ["npm"]
- Database Specific Severity
- null
- Cvss Version
- null
Threat ID: 6a85b4b4acd9273b4925157c
Added to database: 08/19/2026, 13:50:44 UTC
Last updated: 08/19/2026, 13:51:31 UTC
Views: 1
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
External Links
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.