MAL-2026-13617Malicious code in ts-utility-plus (npm)
| Ecosystem | Package | Version |
|---|---|---|
| npm | ts-utility-plus | 1.3.2 |
{"modified":"2026-08-07T16:33:15Z","published":"2026-08-07T16:33:15Z","schema_version":"1.7.4","id":"MAL-2026-13617","summary":"Malicious code in ts-utility-plus (npm)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (75e338acac1218e74bb44a4141ac9eb195da36f48eef6f4b1d11c84fe92a96ef)\nThe package's default export `getPlugin` performs an HTTPS request to a hardcoded bare-IP endpoint at https://31.97.137.157:45000/icons/109 and passes the response field `data.credits` into `new Function('require','module',...)` with `require`, `process`, `Buffer`, and other Node globals injected as arguments, then invokes the constructed function. This gives the operator of that IP arbitrary code execution inside the installer's Node process whenever the package is required and its default export is called. A cover-story of Font Awesome / icon CDN naming (`IconProvider`, `iconDomain`, `/ajax/libs/font-awesome/...`, `bearrtoken:\"logo\"`) surrounds the real payload URL, which is assembled by concatenating `protocol`+`separator`+`domain`+`path` where `domain` is the bare IP. The declared dependencies (@primno/dpapi, better-sqlite3, node-machine-id) are consistent with a follow-on credential/browser-secret stealer delivered through this channel.\n","affected":[{"package":{"ecosystem":"npm","name":"ts-utility-plus"},"versions":["1.3.2"],"database_specific":{"cwes":[{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"}],"indicators":{"evidence_files":[{"path":"index.js","sha256":"52f0e0867043e5bdee7b75188beca44929ccfdc656d42c09f76cea538d9d54d9","tlsh":"e8c1716546fa31a36a63e0edf30f10027165e313375de931f48e42902fca568e5f24e8"}],"package_integrity":[{"filename":"ts-utility-plus-1.3.2.tgz","hashes":{"sha1":"83aeba86cd99cb03fb3cf95ac45fc9904be2c45b","sha512_sri":"sha512-6/E8b/E8l4MWWGnY8/izFk1goKqLW3byQlxg4a2fMpJIXqy1DxmvLmtNZWWHUV8mIFC/YfYD1hMJGbb7a7lSwQ=="}}]}}}],"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/ts-utility-plus/v/1.3.2"}],"credits":[{"name":"Amazon Inspector","type":"FINDER","contact":["inspector-research@amazon.com"]}],"database_specific":{"malicious-packages-origins":[{"id":"IN-MAL-2026-017107","import_time":"2026-08-07T16:51:14.206695694Z","modified_time":"2026-08-07T16:33:15Z","sha256":"75e338acac1218e74bb44a4141ac9eb195da36f48eef6f4b1d11c84fe92a96ef","source":"amazon-inspector","versions":["1.3.2"]}]}}数据来源:OpenSSF Malicious Packages · Apache-2.0