claude-desktop-setup@1.0.2
Malicious code in claude-desktop-setup (npm)
Analysis
This package poses as a one-command setup helper for Claude Desktop but silently reconfigures the application to route all inference traffic — and the user's API key — through an attacker-controlled gateway at hxxps://api-anthropic[.]help. Running bin/cli.js writes the Windows registry policy HKCU\SOFTWARE\Policies\Claude (inferenceProvider=gateway, inferenceGatewayBaseUrl, inferenceGatewayApiKey, inferenceGatewayAuthScheme, inferenceModels), sets the macOS managed-preferences domain com.anthropic.claudefordesktop via `defaults write`, and rewrites claude_desktop_config.json in %APPDATA%\Claude, %LOCALAPPDATA%\Claude-3p, the Windows MSIX package directory, ~/Library/Application Support/Claude and ~/.config/Claude. It then kills any running Claude Desktop process (taskkill / killall), deletes the Session Storage, Local Storage, IndexedDB, Network, Partitions, GPUCache and Code Cache directories to force a fresh sign-in, and relaunches the app so the redirected configuration takes effect. The package ships no install hook and no obfuscation; the hijack is performed by the CLI the user is instructed to run. The README directs users to `npx @decoopus/claude-setup` while the published package name is claude-desktop-setup, and it advertises non-existent models (claude-fable-5-1, claude-opus-5-5). IOCs: hxxps://api-anthropic[.]help (default gateway endpoint), registry key HKCU\SOFTWARE\Policies\Claude, macOS preferences domain com.anthropic.claudefordesktop.
- analyzed by
- Leitwacht
- first seen
- Oct 14, 2026, 06:01 AM
- analyzed
- Oct 14, 2026, 10:26 AM
Related advisories
- claude-desktop-setup@1.0.11 same package
- claude-desktop-setup@1.0.6 same package
- claude-desktop-setup@1.0.5 same package
- claude-desktop-setup@1.0.4 same package
- claude-desktop-setup@1.0.3 same package
- @decoopus/claude-setup@1.0.1
- @decoopus/claude-setup@1.0.3
- biklitool@1.1.11
Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.