AI Security Review
scanned 5d ago · by lpm-firewall-aiLPM treats this as warn-only first-party agent extension lifecycle risk. No confirmed malicious attack surface was established. The package is a high-privilege explicit installer that mutates local services and a brand-scoped Claude Code extension/config surface, which is real lifecycle risk but not install-time malware.
Decision evidence
public snapshot- dist/index.js is a bin installer that runs many shell commands with sudo, apt, npm, curl, systemctl/launchctl, and file writes when invoked.
- dist/index.js seeds Claude Code state and permissions under brand-scoped CLAUDE_CONFIG_DIR and registers/uninstalls Claude plugins.
- dist/index.js downloads/installs external tooling from npm, apt repos, GitHub, NodeSource, Ollama, Astral, and Google Chrome sources during setup.
- dist/index.js deploys payload into ~/sitedesk-code and persistent config into ~/.sitedesk-code, then creates services and agents.
- package.json has no preinstall/install/postinstall hook; only prepublishOnly, so npm install does not automatically mutate the host.
- Dangerous behavior is reached through explicit bin execution create-sitedesk-code, consistent with an installer package.
- Claude mutations are scoped to ~/.sitedesk-code/.claude rather than the default ~/.claude according to dist/index.js.
- Observed network and privileged operations align with installing the advertised SiteDesk/Claude-based local service, not credential exfiltration or stealth payload execution.
- Secrets generated/read are local service credentials such as Neo4j and remote-session keys, with redaction handling in logs.
Source & flagged code
24 flagged · loading sourcePackage contains a possible secret pattern.
payload/platform/scripts/smoke-boot-services.shView on unpkg · L334A single source file combines environment access, network access, and code or shell execution with blocking evidence.
dist/index.jsView on unpkg · L139Source downloads or fetches remote code and executes it.
dist/index.jsView on unpkg · L1A package entrypoint or install-time lifecycle script reaches a source file with blocking dangerous behavior.
dist/index.jsView on unpkg · L1Source gates dangerous network, credential, or execution behavior behind CI, host, platform, time, or geo fingerprint checks.
dist/index.jsView on unpkg · L1Source spawns a local helper that also contains network and dynamic execution context; review data flow before blocking.
dist/index.jsView on unpkg · L1Package source invokes a package manager install command at runtime.
dist/index.jsView on unpkg · L282Source writes installer persistence such as shell profile or service configuration.
dist/index.jsView on unpkg · L1Package hides binary, compressed, or executable-looking payloads in test/fixture/hidden paths.
payload/platform/plugins/prompt-optimiser/skills/prompt-optimiser/__tests__/restatement-ladder.test.shView on unpkgPackage ships non-JavaScript build or shell helper files.
payload/platform/plugins/prompt-optimiser/skills/prompt-optimiser/__tests__/restatement-ladder.test.shView on unpkgPackage ships high-entropy non-source blobs.
payload/server/public/assets/cormorant-latin-ext-500-normal-AH9qog1s.woff2View on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
payload/platform/plugins/admin/mcp/dist/index.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
payload/platform/plugins/cloudflare/mcp/dist/lib/cloudflared.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
payload/platform/plugins/admin/lib/mcp-spawn-tee/index.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
payload/platform/plugins/aeo/lib/mcp-spawn-tee/index.jsView on unpkgSource file is highly similar to a previously finalized malicious package; route for source-aware review.
payload/platform/plugins/browser/lib/mcp-spawn-tee/index.jsView on unpkgHardcoded password in payload/platform/plugins/email/mcp/dist/__tests__/email-delete.test.js
payload/platform/plugins/email/mcp/dist/__tests__/email-delete.test.jsView on unpkg · L52Hardcoded password in payload/platform/plugins/email/mcp/dist/__tests__/email-setup.test.js
payload/platform/plugins/email/mcp/dist/__tests__/email-setup.test.jsView on unpkg · L28Hardcoded password in payload/platform/plugins/email/mcp/dist/__tests__/email-setup.test.js
payload/platform/plugins/email/mcp/dist/__tests__/email-setup.test.jsView on unpkg · L43Hardcoded password in payload/platform/plugins/email/mcp/dist/__tests__/email-setup.test.js
payload/platform/plugins/email/mcp/dist/__tests__/email-setup.test.jsView on unpkg · L57Hardcoded password in payload/platform/plugins/email/mcp/dist/__tests__/email-setup.test.js
payload/platform/plugins/email/mcp/dist/__tests__/email-setup.test.jsView on unpkg · L127Hardcoded password in payload/platform/lib/task-secrets/src/__tests__/redact-secrets.test.ts
payload/platform/lib/task-secrets/src/__tests__/redact-secrets.test.tsView on unpkg · L73