T08 · Insecure Dependencies
- Location
SKILL.md:27- Finding
Unpinned Automatic Installation and Loading of an External Skill
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 27–36
Vulnerability Type: Untrusted external dependency installation
Risk Level: MediumVulnerable Code
markdown ## 依赖声明 本技能**强依赖** Universal Task OS (universal-task-os)。没有UTOS,本技能只有参考查阅能力,无法执行任何开发产出任务。 **加载检查流程**(每次激活时执行): 1. 检测 `universal-task-os` 技能是否已安装 2. **未安装** → 自动安装 `universal-task-os` 技能 3. **安装成功** → 同时加载UTOS,按本技能"使用规则"执行 4. **安装失败** → 降级为**只读参考模式**:Technical Analysis
The Skill instructs the Agent to automatically install and load the external
universal-task-osSkill whenever it is absent. It does not define:- A canonical registry or repository
- A verified publisher identity
- An immutable version or commit
- A cryptographic checksum or signature
- A dependency permission review
- Explicit user approval before installation
Consequently, dependency resolution is based only on a mutable package name. This creates a supply-chain trust boundary: a malicious, compromised, or incorrectly resolved package could supply unreviewed instructions and behavior. The risk is amplified because the dependency is immediately loaded and delegated responsibility for document generation and pipeline execution.
No direct malicious payload or confirmed compromised dependency was found in the audited project. The vulnerability is the unsafe dependency acquisition and loading process itself.
Attack Path
- A user activates this Skill in an environment where
universal-task-osis not installed. - The activation workflow detects the missing dependency.
- The Agent attempts to resolve and install
universal-task-osfrom an unspecified source. - An attacker-controlled or compromised package is returned through dependency confusion, namespace takeover, registry compromise, or ambiguous source resolution.
- The Agent installs and immediately loads the unreviewed dependency.
- The malicious dependency supplies instructions or invokes tools using whatever permissions are ...[truncated 946 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove automatic dependency installation from the activation workflow.
- Require explicit user approval before acquiring or loading any external Skill.
- Specify a canonical HTTPS repository or trusted registry and verify the expected publisher identity.
- Pin the dependency to an immutable release version or commit hash.
- Publish and verify a cryptographic digest or signed release metadata before installation.
- Reject installation when the source, version, signature, or digest cannot be verified.
- Review the dependency’s instructions, scripts, permissions, and transitive dependencies before loading it.
- Apply least privilege by restricting the dependency to only the tools and data required for the requested task.
- Preserve read-only reference mode as the default fallback whenever dependency verification or user authorization is unavailable.
- Record the verified dependency source, version, digest, and approval decision in an audit log.
