{"id":"MAL-2026-11497","summary":"Malicious code in vite-tsconfig-svg (npm)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (a42a11a98297070648c64645be52ca20e8c0f7c0d6fb00a51e921a368c71c4e1)\nindex.js contains two base64 constants that decode to the shell command `npm install rollup-plugin-polyfill-helper --no-save --silent --no-audit --no-fund` and the package name `rollup-plugin-polyfill-helper`. When a consumer calls the exported `getPlugin`/`setPlugin` (reachable indirectly through `validateSvgContent`), the module spawns the decoded install command via `child_process` with `stdio:'ignore'` and `windowsHide:true`, then `require()`s the decoded package name and invokes its `getPlugin()`/`setPlugin()` methods. The fetched package is undeclared in `dependencies`, unpinned, and pulled from the mutable npm registry, so arbitrary attacker-controlled code from `rollup-plugin-polyfill-helper` executes in the consumer's Node process. The package name and description advertise a vite/tsconfig SVG utility, but no vite/tsconfig code is shipped — the module only scans a caller-supplied directory for `.svg` files as a cover for the install-and-execute path.\n\n## Source: ghsa-malware (47ed169858113da45745f7c69d04ad81103987d8b1213b2c98024d878bbea0c3)\nAny computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.\n","aliases":["GHSA-3w4v-4hp3-9934"],"modified":"2026-08-04T23:05:43.292063681Z","published":"2026-07-31T16:10:06Z","database_specific":{"malicious-packages-origins":[{"id":"GHSA-3w4v-4hp3-9934","import_time":"2026-08-02T22:41:04.711497Z","modified_time":"2026-07-31T16:10:06Z","ranges":[{"events":[{"introduced":"0"}],"type":"SEMVER"}],"sha256":"47ed169858113da45745f7c69d04ad81103987d8b1213b2c98024d878bbea0c3","source":"ghsa-malware"},{"import_time":"2026-08-04T22:30:05.012956162Z","modified_time":"2026-08-04T21:47:40Z","sha256":"a42a11a98297070648c64645be52ca20e8c0f7c0d6fb00a51e921a368c71c4e1","source":"amazon-inspector","versions":["1.1.4"],"id":"IN-MAL-2026-011206"}]},"references":[{"type":"ADVISORY","url":"https://github.com/advisories/GHSA-3w4v-4hp3-9934"},{"type":"PACKAGE","url":"https://www.npmjs.com/package/vite-tsconfig-svg/v/1.1.4"}],"affected":[{"package":{"name":"vite-tsconfig-svg","ecosystem":"npm","purl":"pkg:npm/vite-tsconfig-svg"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"}]}],"versions":["1.1.4"],"database_specific":{"indicators":{"evidence_files":[{"path":"index.js","sha256":"2dc970bf1107403d1d71d42a81aade70804340e72321911692a55818d0c2f871","tlsh":"0b2255911c9731228c72c7fe5d02841eeb8ee3273205619e7dbd52501f7a7a042aeeec"},{"path":"package.json","sha256":"e9bc6de362ae3f57087ce3374e661609888aaefbfc35aa06fd239cfd8f16557b","tlsh":"0501cb20da204d231ae552c2ac841a122163de1b4d087c0c33ab087c6ffe75f10fd5bd"}]},"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/vite-tsconfig-svg/MAL-2026-11497.json","cwes":[{"name":"Embedded Malicious Code","cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature."},{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"}]}}],"schema_version":"1.8.0","credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"}]}