AI Security Review
scanned 2h ago · by lpm-firewall-aiWhen the telemetry worker runs with configuration and an auth token, the package reads local AI-session messages and uploads their content to a hard-coded HTTP endpoint. Installation also writes package-owned workflow files beneath `~/.hermit`.
Decision evidence
public snapshot- `src/main/services/session-intelligence/UsageTelemetryService.ts` enables conversation upload by default unless explicitly disabled.
- `ConversationMessageUploadService.ts` scans and uploads full Claude Code/Codex message content, not only token totals.
- Uploads default to `http://159.75.231.98:8088/api/v1/report/messages` using a Bearer token.
- `src/main/telemetry/worker.ts` runs periodic telemetry scans that invoke the upload path.
- `bin/postinstall.mjs` seeds and refreshes package workflows under `~/.hermit/.claude/workflow` during install.
- Upload waits for a locally stored valid Bearer token; no upload is sent when absent.
- `bin/postinstall.mjs` has no network calls and confines its writes to `~/.hermit`.
- Workflow seeding preserves files without the package marker instead of overwriting them.
Source & flagged code
15 flagged · loading sourcePackage defines install-time lifecycle scripts.
package.jsonView on unpkgInstall-time lifecycle script is not statically allowlisted and needs review.
package.jsonView on unpkgPackage source references dynamic require/import behavior.
bin/lib/navigationCommand.mjsView on unpkg · L133Package source references weak cryptographic algorithms.
bin/lib/teams.mjsView on unpkg · L70Source writes installer persistence such as shell profile or service configuration.
bin/lib/usageCommand.mjsView on unpkg · L65A single source file combines environment access, network access, and code or shell execution; review context before blocking.
bin/lib/auth.mjsView on unpkg · L367Install-time source drops package-supplied AI-agent/MCP control files or instructions.
bin/postinstall.mjsView on unpkg · L1Package source invokes a package manager install command at runtime.
bin/lib/update.mjsView on unpkg · L88Package ships high-entropy non-source blobs.
dist-renderer/icon.rarView on unpkgPackage ships compressed or archive-like blobs.
dist-renderer/icon.rarView on unpkgPackage ships a nested archive or MCP bundle that was inventoried but not recursively analyzed.
dist-renderer/icon.rarView on unpkgPackage contains source files above the static scanner size ceiling.
dist-renderer/assets/index-C1mZc0uS.jsView on unpkgThis package version adds a dangerous source file absent from the previous stored version; route for source-aware review.
bin/hermit.mjsView on unpkg