T08 · Insecure Dependencies
- Location
SKILL.md:45- Finding
Automatic Installation and Execution of an Unpinned Authentication Skill
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 45-64; repeated at lines 226-237
Vulnerability Type: Untrusted and unpinned third-party dependency installation
Risk Level: HighVulnerable Code
bash clawhub install vipshop-user-loginbash python3 ../vipshop-user-login/scripts/vip_login.py --blockingThe Skill instructions require the agent to install
vipshop-user-loginautomatically when it is unavailable and then invoke that Skill or execute its login script. No immutable version, cryptographic digest, trusted publisher identity, or package integrity check is specified.Technical Analysis
Installing a dependency by a mutable package name and immediately executing it creates a supply-chain trust boundary that is not adequately controlled. The effective code executed during the login process can change after this Skill has been audited.
The risk is heightened because:
- Installation is automatic rather than explicitly approved by the user.
- The dependency is not pinned to a reviewed version or immutable digest.
- No package signature, checksum, publisher identity, or source repository is verified.
- The fallback directly executes a Python file supplied by the external Skill.
- The dependency participates in an account authentication flow and may access or create sensitive login credentials.
- The instructions require execution to continue automatically after installation.
This behavior exceeds minimum privilege for a promotion lookup. A safer implementation could stop and request informed consent when the audited authentication dependency is unavailable, rather than downloading and executing mutable third-party code automatically.
The network behavior in
scripts/promotion_search.pywas also reviewed. It reads~/.vipshop-user-login/tokens.json, extractsPASSPORT_ACCESS_TOKEN, and transmits that token over HTTPS only to the declared Vipshop API endpoint. No evi ...[truncated 1899 chars]- Remediation
View remediation
Remediation Suggestions
- Pin
vipshop-user-loginto an explicitly reviewed, immutable version and cryptographic digest. - Verify the package signature, checksum, expected publisher identity, and trusted source before installation or execution.
- Require explicit, informed user approval before downloading or running a missing authentication component.
- Do not fall back to executing a relative Python script unless its resolved path, ownership, permissions, version, and integrity have been validated.
- Vendor a reviewed authentication component when licensing and maintenance requirements permit, or use a trusted dependency lock file with hash enforcement.
- Run the authentication component in a restricted environment with minimal filesystem and network access.
- Limit credential-file permissions and expose only the minimum authentication material needed for the declared API request.
- Fail safely when the required verified version is unavailable instead of installing the latest package by name.
- Record and display the exact package version, digest, source, and requested permissions before execution.
- Re-audit the authentication dependency independently because it handles sensitive credentials and executes outside the reviewed project.
- Pin
