T08 · Insecure Dependencies
- Location
references/validation.md:30- Finding
Unverified Third-Party Dependency Installation Instructions
- Content
View full analysis
Vulnerability Details
File Location:
references/validation.md, lines 30–31 and 42–43
Vulnerability Type: T08: Insecure Dependencies
Risk Level: MediumVulnerable Code Snippets
Lines 30–31:
bash pip install -r requirements.txt playwright install chromiumLines 42–43:
bash pnpm install pnpm buildTechnical Analysis
The validation guide instructs the agent to install Python packages, Node.js packages, and a Playwright browser binary. The corresponding dependency manifests, lockfiles, version constraints, package sources, integrity hashes, and lifecycle scripts are not included in the audited Skill artifact and therefore could not be verified.
In particular,
pnpm installmay execute dependency lifecycle scripts, whilepip install -r requirements.txtmay install packages from external registries or other sources specified by the target repository. The Playwright installation command also retrieves a browser binary. The instructions do not require frozen lockfile enforcement, hash verification, trusted-registry restrictions, lifecycle-script review, or execution in an isolated environment.This finding does not establish that any referenced dependency is currently malicious. The risk arises because the Skill recommends executing installation operations without first requiring verification of the external dependency definitions and resolved artifacts.
Attack Path
- An agent invokes the Skill while operating in a PPTAgent or BotSlide repository.
- The agent follows the validation instructions in
references/validation.md. - The target repository contains a compromised dependency manifest, lockfile, package source, or lifecycle script.
- The installation command resolves or installs the attacker-controlled component.
- A malicious package installer or Node.js lifecycle script executes under the account running the agent.
- The malicious code gains access to files, environment variables, network permissions ...[truncated 730 chars]
- Remediation
View remediation
Remediation Suggestions
- Require inspection of
requirements.txt,package.json, and all relevant lockfiles before installation. - Use reproducible, locked installation modes, such as:
pnpm install --frozen-lockfile- Python packages pinned to exact versions with verified hashes
- Restrict dependency resolution to approved registries and reject unexpected URLs, Git dependencies, local path dependencies, and untrusted package sources.
- Review package lifecycle scripts before permitting
pnpm install; use--ignore-scriptswhen lifecycle scripts are unnecessary. - Verify the provenance and integrity of downloaded Playwright browser binaries.
- Perform installations in an isolated, unprivileged container or disposable environment without production secrets.
- Avoid exposing SSH agents, cloud credentials, API tokens, or unrelated host directories to the installation environment.
- Add an explicit validation gate stating that installation must stop if manifests, lockfiles, or resolved sources cannot be audited.
- Require inspection of
