T08 · Insecure Dependencies
- Location
SKILL.md:40- Finding
Unpinned Third-Party Code Is Retrieved and Executed
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 40–55
Vulnerability Type: Unpinned and mutable third-party dependencies
Risk Level: HighVulnerable Code
bash # Method A: npm installation openclaw plugins install @tencent-connect/openclaw-qqbot # Method B: source installation git clone https://github.com/tencent-connect/openclaw-qqbot.git && cd openclaw-qqbot bash ./scripts/upgrade-via-source.sh --appid YOUR_APPID --secret YOUR_SECRET # Method C: manual installation git clone https://github.com/tencent-connect/openclaw-qqbot.git && cd openclaw-qqbot npm install --omit=dev openclaw plugins install .Technical Analysis
The installation instructions retrieve an npm package or clone a Git repository without pinning a reviewed package version, Git commit, signed release, or integrity hash. The source-based method then directly executes a shell script supplied by the mutable remote repository. The manual method also resolves npm dependencies without a demonstrated lockfile or integrity-verification procedure.
Consequently, the code executed during installation can differ from the code that was reviewed. An upstream repository compromise, malicious package release, compromised maintainer account, or dependency-chain compromise could introduce arbitrary code into the installation process.
Attack Path
- An attacker compromises the npm package, source repository, maintainer account, or a transitive dependency.
- The attacker publishes malicious content under the same package or repository identity.
- An operator follows the Skill instructions and retrieves the current mutable content.
openclaw plugins install, the repository-provided shell script, or an npm lifecycle script executes the introduced payload.- The payload runs with the privileges of the operator performing the installation.
Impact Assessment
Successful exploitation could provide arbitrary code ...[truncated 323 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the npm package to an explicitly reviewed version rather than installing the latest available release.
- Pin source installations to a full Git commit hash or cryptographically signed release tag.
- Verify package provenance, integrity metadata, release signatures, and repository ownership before installation.
- Review
upgrade-via-source.shand all invoked scripts before executing them. - Use a committed lockfile and deterministic installation mode for npm dependencies.
- Perform installation in a restricted environment with minimal filesystem, credential, and network access.
- Document a trusted update process that requires review before changing pinned versions.
