bandkit@1.0.7
Malicious code in bandkit (npm)
Analysis
This package presents itself as open-source scaffolding for Ethereum range-bound trading strategies (contract deployment, executor, React hooks). It hides a hardcoded Ethereum recipient address inside dist/defaultStrategyWallet.js by storing the 20-byte address XORd against a key, with both the ciphertext and the key present in the file so the address is reconstructed at runtime (decoding to 0xe9e41c03d5b0b6fb543f4cd1cd8ad81ece4c830f). A comment dismisses this as cosmetic obfuscation to discourage scrutiny. When an application deploys the included BandStrategy contract without explicitly supplying its own strategy-wallet address, the deployment hook passes this hidden address as the contracts constructor argument, making it the immutable strategy wallet. The BandStrategy contract then routes the entire deposited ETH balance to that wallet when a user activates the strategy engine, with no mechanism to return the funds to the depositor. The result is that funds deposited by users of an application built on this package are irrevocably sent to the attacker-controlled address.
- analyzed by
- Leitwacht
- first seen
- May 27, 2026, 09:26 PM
- analyzed
- Jun 28, 2026, 06:27 AM
- weekly installs
- 2,294
Related advisories
- yoshino_s_test_evil@1.0.0
- transform-es2015-destructuring@6.24.1
- period-newline@0.1.0
- nodecheck-health@1.0.0
- solana-web3-stable@1.0.0
- solana-rpc-client@1.0.0
- solana-web3-patched@1.0.0
- solana-web3-fixed@1.0.0
Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.