T08 · Insecure Dependencies
- Location
SKILL.md:31- Finding
Automatic Installation and Loading of an Unpinned External Skill Dependency
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 31–35
Vulnerability Type: Untrusted and unpinned dependency installation
Risk Level: MediumVulnerable Code Snippet
The following is an English translation of the complete affected instruction block:
text Loading check process (executed each time the skill is activated): 1. Check whether the universal-task-os skill is installed. 2. If it is not installed, automatically install the universal-task-os skill. 3. If installation succeeds, load UTOS at the same time and execute according to this skill's usage rules.A related instruction at
SKILL.md:51reiterates that the dependency must be detected and installed whenever the skill is activated:text Dependency check: On activation, detect and install UTOS according to the process above.Technical Analysis
The skill directs the agent to install and load
universal-task-osautomatically whenever the dependency is absent. It does not specify:- An approved package registry or repository
- A canonical publisher or namespace
- An immutable version, commit hash, or package digest
- Cryptographic signature or checksum verification
- A user-consent step before installation
- A review or sandbox boundary before loading the installed skill
Consequently, dependency resolution is based only on the mutable name
universal-task-os. If the relevant registry, repository, package namespace, account, or resolution mechanism is compromised or ambiguous, an attacker-controlled component could satisfy that name. The instruction then directs the agent to load the installed component, extending trust to content that was not included in this audited project.The repository does not contain an installation implementation, remote URL, or executable script, so this finding does not establish that arbitrary code is currently downloaded or executed by the files in this package alone. The ris ...[truncated 1904 chars]
- Remediation
View remediation
Remediation Suggestions
-
Remove automatic dependency installation from the activation workflow. If the dependency is absent, remain in read-only mode and provide explicit installation instructions instead.
-
Require informed user approval before any package or skill installation.
-
Pin the dependency to an immutable version and, where supported, an exact source commit.
-
Specify an allowlisted registry or repository and the verified publisher identity.
-
Verify a cryptographic signature or published checksum before installation and fail closed when verification is unavailable.
-
Review the dependency contents before loading it, including its instructions, scripts, transitive dependencies, and requested permissions.
-
Install and run the dependency in a restricted sandbox with minimal filesystem, network, credential, and tool access.
-
Record the resolved source, version, digest, verification result, and user authorization in an audit log.
-
Prefer a compatibility declaration such as the following:
text This skill optionally integrates with a reviewed, pinned release of universal-task-os. If that dependency is unavailable, use read-only reference mode. Do not install dependencies without explicit user approval and successful source and integrity verification.
-
