T08 · Insecure Dependencies
- Location
- README.md:4
- Finding
- Unpinned External Package Installation Creates a Supply-Chain Risk## Vulnerability Details **File Location**: `README.md`, lines 4-7 **Vulnerability Type**: Unpinned third-party executable dependency **Risk Level**: Medium **Vulnerable Code Snippet**: ```bash ## Installation skill install @skillhq/concierge ``` ### Technical Analysis The installation instructions retrieve `@skillhq/concierge` without specifying an exact version or integrity digest. Consequently, the package resolved at installation time can change after this artifact has been reviewed. The supplied project does not include the concierge implementation, a dependency manifest, or a lockfile. The only TypeScript file is a Vitest configuration that refers to absent `src/` and `tests/` directories. Therefore, the behavior of the externally installed package—including its handling of credentials, local processes, network tunnels, and phone calls—cannot be verified from this artifact. This becomes exploitable if the package publisher, registry account, distribution infrastructure, or a future package release is compromised. It is not evidence that the current external package is malicious; the vulnerability is the lack of reproducible, integrity-verified installation. ### Attack Path 1. An attacker compromises the package publisher, registry account, or package distribution channel, or causes a malicious future release to be selected. 2. The user follows the documented command `skill install @skillhq/concierge`. 3. Because no version or integrity digest is pinned, the installer resolves and installs the attacker-controlled release. 4. The installed package executes with the invoking user's permissions. 5. The user configures the package with Twilio, Deepgram, ElevenLabs, Anthropic, Google Places, or ngrok credentials. 6. Malicious package code reads those credentials, modifies local files accessible to the user, opens unauthorized tunnels, or abuses paid calling and AI services. ### Impact Assessment Successful e ...[truncated 593 chars]
- Remediation
- ## Remediation Suggestions 1. Pin the installation to an exact, reviewed package version rather than resolving the latest available release. 2. Verify the package using a cryptographic integrity digest or signed release provenance. 3. Include the complete implementation, dependency manifest, and lockfile in the auditable artifact. 4. Use a trusted registry with protected publisher accounts, mandatory multi-factor authentication, and controlled release permissions. 5. Run the package with least privilege and restrict access to `~/.config/concierge/config.json5` using owner-only filesystem permissions. 6. Prefer operating-system credential storage or a dedicated secret manager over plaintext configuration for service tokens. 7. Add automated dependency and provenance verification to release and installation workflows. 8. Document credential rotation procedures and monitor Twilio and other service accounts for unexpected usage.
