T08 · Insecure Dependencies
- Location
SKILL.md:43- Finding
Unpinned and Unverifiable External Executable Dependency
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 43-46
Vulnerability Type: Supply-chain risk from an unpinned external dependency
Risk Level: MediumEvidence
The following is an English rendering of the complete relevant source segment:
markdown ## Prerequisites - The `feishu-common` dependency must be installed first. - This skill depends on `./feishu-common/index.js` for token and API authentication.Additional execution instructions reference files that are not included in the project:
bash node skills/feishu-card/send.js --target "ou_..." --text "Hello World" node skills/feishu-card/send_safe.jsTechnical Analysis
The project contains only
SKILL.md. It does not includefeishu-common/index.js,send.js, orsend_safe.js, even though these components are expected to perform authentication, process untrusted message content, create temporary files, and communicate with an external service.The documentation does not identify a trusted package source, pin an exact dependency version, provide an integrity hash, or define a signature-verification procedure. Consequently, the effective executable code is determined outside the audited project. The advertised token protection, temporary-file cleanup, shell escaping, input validation, and network behavior cannot be verified.
This creates a supply-chain trust boundary in which a malicious or incorrectly resolved
feishu-commoncomponent—or a substituted script at one of the documented paths—could execute with the Agent process's permissions.Attack Path
- An attacker gains control over the source from which
feishu-commonis obtained, or places a malicious component at the expected./feishu-common/index.jspath. - Alternatively, the attacker places substituted
send.jsorsend_safe.jsfiles under the documentedskills/feishu-card/path. - A user or Agent follows
SKILL.mdand executes the referen ...[truncated 1159 chars]
- An attacker gains control over the source from which
- Remediation
View remediation
Remediation Suggestions
- Bundle the required implementation with the skill so that all executed code can be reviewed.
- If an external dependency is necessary, document its official registry or repository and pin an exact immutable version or commit.
- Verify the dependency with a cryptographic integrity hash or trusted signature before execution.
- Reject missing, unexpected, symbolic-link redirected, or integrity-mismatched dependency paths.
- Document and enforce the permitted Feishu API hosts so the dependency cannot silently redirect credentials.
- Add automated dependency scanning and lockfile verification to the release process.
- Audit the implementations of
index.js,send.js, andsend_safe.js, particularly their credential handling, command construction, temporary-file permissions, cleanup behavior, and network requests.
