T08 · Insecure Dependencies
- Location
SKILL.md:6- Finding
Unpinned External Package Executes with Access to Home Assistant Credentials
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:6,SKILL.md:14-16, andREADME.md:24-35
Vulnerability Type: Unpinned third-party executable dependency
Risk Level: HighVulnerable Code
SKILL.md:6:yaml metadata: {"moltbot":{"emoji":"🏠","requires":{"bins":["moltbot-ha"],"env":["HA_TOKEN"]},"primaryEnv":"HA_TOKEN","install":[{"id":"uv","kind":"uv","package":"moltbot-ha","bins":["moltbot-ha"],"label":"Install moltbot-ha (uv tool)"}]}}SKILL.md:14-16:bash uv tool install moltbot-haREADME.md:24-35:bash uv tool install moltbot-habash pip install moltbot-habash git clone https://github.com/iamvaleriofantozzi/moltbot-ha.git cd moltbot-ha uv tool install .Technical Analysis
The Skill instructs users and agents to install
moltbot-hafrom a mutable external package registry or repository without specifying an exact version, immutable commit, package hash, signature, or lockfile. The audited artifact contains only documentation and configuration; it does not contain the executable implementation. Therefore, the installed package's credential handling, safety checks, service-call validation, and logging behavior cannot be verified from this artifact.The metadata explicitly grants the installed executable access to
HA_TOKEN. A package-registry compromise, maintainer-account compromise, malicious replacement release, or unexpected incompatible update could therefore execute arbitrary package code in the user's environment while inheriting a reusable Home Assistant credential.Attack Path
- An attacker compromises the package registry entry, release process, maintainer credentials, or referenced repository.
- The attacker publishes a modified
moltbot-hapackage under the same mutable package name. - A user or agent follows the documented
uv tool install moltbot-haorpip install moltbot-hainstruction. - The pa ...[truncated 1139 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the dependency to an exact reviewed version, such as
moltbot-ha==X.Y.Z. - Require cryptographic hash verification for downloaded distributions and publish expected hashes through a separately protected channel.
- Include a lockfile that resolves every transitive dependency to an exact version and integrity digest.
- Reference source installations by an immutable commit hash rather than a mutable branch or tag.
- Include the corresponding CLI source in the audited artifact, or provide verifiable provenance connecting the package artifact to reviewed source.
- Sign releases and verify signatures before installation.
- Use automated dependency monitoring and reproducible builds.
- Run the CLI under a dedicated, restricted operating-system account or container.
- Issue a dedicated, minimally privileged Home Assistant credential and rotate it if package integrity is ever uncertain.
- Prevent the dependency from accessing unrelated environment variables, files, and network destinations through sandboxing or an explicit execution policy.
- Pin the dependency to an exact reviewed version, such as
