@paoletti/viem@2.53.1
Malicious code in @paoletti/viem (npm)
Analysis
@paoletti/viem@2.53.1 is a trojanized clone of the legitimate viem Ethereum library. The package replaces the critical cryptographic dependency `@noble/hashes` (used for keccak256, sha256, and ripemd160 hashing in all Ethereum signing and wallet operations) with `@paoletti/hashes` via the npm alias `"@noble/hashes": "npm:@paoletti/hashes@1.8.0"`. When any code imports hashing functions from `@noble/hashes`, npm resolves this to the attacker-controlled `@paoletti/hashes` instead, giving the attacker control over cryptographic operations underpinning wallet signing, transaction construction, and address derivation. The package is published by user "paoletti" ([account]) and has no install scripts — the attack is the dependency substitution itself.
- analyzed by
- Leitwacht
- first seen
- Jun 21, 2026, 01:34 AM
- analyzed
- Jun 21, 2026, 01:35 AM
Related advisories
- uphold-sdk-javascript-extensions@99.9.10
- ryan-pdf-js@99.9.1
- ts-numbering@1.0.0
- local-ip-helper@0.1.0
- twilio-voice-js-reference-components@1.0.1
- anthropic-claude-latest@4.7.1
- ts-bn-lint-helper@3.1.19
- atlasora-client@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.