T08 · Insecure Dependencies
Warning
- Location
- SKILL.md:279
- Finding
- Ambiguous Unscoped npx Commands Create a Dependency-Confusion Execution Risk## Vulnerability Details **File Location**: `SKILL.md:62, 279-283`; `references/guide.md:37, 972-993, 1346` **Vulnerability Type**: Supply-chain package-name confusion **Risk Level**: Medium ### Vulnerable Code The installation instructions identify a scoped npm package: ```bash npm install @jeremiaheth/neolata-mem ``` However, the CLI instructions execute an unscoped package name: ```bash npx neolata-mem store myagent "Important fact here" npx neolata-mem search myagent "query" npx neolata-mem decay --dry-run npx neolata-mem health npx neolata-mem clusters ``` The same mismatch appears throughout `references/guide.md`: ```bash npm install @jeremiaheth/neolata-mem npx neolata-mem store kuro "Found XSS in login form" security web npx neolata-mem search kuro "web vulnerabilities" npx neolata-mem search-all "security issues" npx neolata-mem evolve kuro "Login form XSS has been patched" npx neolata-mem links abc123 npx neolata-mem traverse abc123 3 npx neolata-mem clusters 3 npx neolata-mem path abc123 def456 npx neolata-mem decay --dry-run npx neolata-mem decay npx neolata-mem health npx neolata-mem context kuro "database security" ``` ### Technical Analysis The documented library is `@jeremiaheth/neolata-mem`, but the CLI examples pass `neolata-mem` to `npx`. These are distinct npm package identifiers. If the expected CLI executable is not already available in the local project, `npx` may attempt to resolve the unscoped `neolata-mem` package from the configured npm registry. An unrelated or malicious package controlling that unscoped name could therefore be downloaded and executed. This artifact contains documentation only and does not include the npm package implementation. Consequently, its claims regarding zero dependencies, absence of install scripts, SSRF validation, credential redaction, and other safeguards could not be independently verified during this audit. ### Attack Path 1. An attacker publishes or compromises the unscoped `neolata-mem` ...[truncated 1309 chars]
- Remediation
- ## Remediation Suggestions 1. Replace ambiguous commands with an explicit scoped package selection: ```bash npm exec --package=@jeremiaheth/neolata-mem@0.8.4 -- neolata-mem health ``` 2. Prefer installing a pinned, verified package version and invoking its local executable: ```bash npm install --save-exact @jeremiaheth/neolata-mem@0.8.4 ./node_modules/.bin/neolata-mem health ``` 3. Commit and enforce a lockfile with registry-resolved integrity hashes. 4. In CI or automation, use `npx --no-install neolata-mem ...` after a verified installation so missing local binaries fail closed rather than triggering registry retrieval. 5. Correct all affected commands in `SKILL.md` and `references/guide.md`, including troubleshooting examples. 6. Include the package source in the audited artifact or pin it to a verifiable source revision so the claimed SSRF, credential-handling, path-validation, and webhook protections can be reviewed directly. 7. Publish package provenance and verify signatures or attestations where the npm environment supports them.
