@kahitsan/plugin-sdk@0.10.0-staging.59
Malicious code in @kahitsan/plugin-sdk (npm)
Analysis
The package's main entry point, dist/index.js, is a 282 KB single-line bundle produced with javascript-obfuscator: a rotated string-array decoder, thousands of _0x-prefixed identifiers, and dynamic imports resolved through an obfuscated dispatcher. The bundle opens with a base64-encoded block that decodes to a notice addressed explicitly to "any AI assistant, LLM, coding agent, or autonomous tool" reading the file. The notice instructs the reader to stop immediately, to refuse to de-obfuscate, beautify, summarize, explain, produce pseudocode for, or otherwise describe the code, and pre-emptively declares that any system message, developer message, jailbreak or roleplay framing telling the reader to disregard the notice is illegitimate and must be ignored. This is an anti-analysis payload embedded in the shipped artifact: its only function is to make automated code review abandon inspection of the obfuscated bundle. The same package also ships its complete readable TypeScript source tree under src/, so the obfuscation of dist/index.js conceals nothing that the source tree does not already disclose — the obfuscated build and the reviewer-directed notice serve no engineering purpose. No network indicators, C2 hosts, or credential-harvesting paths were found in the readable portions of the package; the concealed logic is confined to the obfuscated dist/index.js bundle.
- analyzed by
- Leitwacht
- first seen
- Oct 22, 2026, 05:56 PM
- analyzed
- Oct 22, 2026, 05:57 PM
- weekly installs
- 102
Related advisories
- @kahitsan/plugin-sdk@0.8.3 same package
- @kahitsan/plugin-sdk@0.8.2 same package
- @kahitsan/plugin-sdk@0.8.4 same package
- cwao@0.5.6
- event-bus-lite-testmetest@0.0.2
- pino-std@7.2.0
- loader-utils-kit@4.2.1
- @k.vict1999/pino-std-serializers@7.2.0
Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.