T08 · Insecure Dependencies
- Location
README.md:51- Finding
Unpinned Third-Party Installation Script Execution
- Content
View full analysis
Vulnerability Details
File Location:
README.md:51-52
Vulnerability Type: Supply-chain risk through an unpinned external dependency
Risk Level: HighComplete Code Snippet:
bash git clone https://github.com/LittleLollipop/lobster-memory.git cd lobster-memory && bash install.shTechnical Analysis
The documented installation procedure clones the current default branch of a third-party repository and immediately executes its
install.shscript. It does not pin a reviewed commit or signed release, verify a checksum or signature, or require inspection of the downloaded script.Consequently, the code executed during installation can change after this Skill has been reviewed. The broad
lobster-memory >=0.2.0dependency declaration in_skillhub_meta.jsonalso does not constrain installations to a specific audited version. After installation,graph_api.pyimports and executes modules from the external engine path.This creates a supply-chain trust boundary in which control of the dependency repository, its default branch, or its maintainer account can translate into arbitrary local code execution.
Attack Path
- An attacker compromises the dependency repository, a maintainer account, or the repository's default branch.
- The attacker modifies
install.shor another component invoked by that script. - A user follows the installation instructions in
README.md. git cloneretrieves the attacker-controlled revision without integrity verification.bash install.shexecutes the modified payload with the installing user's privileges.- The installed engine can also be loaded later when
graph_api.pyimportsengine.memory_graphandengine.schema.
Impact Assessment
Successful exploitation permits arbitrary code execution with the privileges of the user performing the installation. Within those privileges, a malicious dependency could read or modify access ...[truncated 249 chars]
- Remediation
View remediation
Remediation Suggestions
- Pin the dependency to a specific reviewed commit hash or signed release instead of cloning the mutable default branch.
- Publish and verify a cryptographic checksum or trusted signature for the expected installation artifact.
- Avoid immediately executing scripts from a cloned repository. Prefer a locked package artifact or document explicit, reviewable installation steps.
- Pin an exact compatible dependency version in
_skillhub_meta.jsonrather than allowing every version at or above0.2.0. - Record the expected repository, revision, and integrity value consistently in both
README.mdandSKILL.md. - Run dependency installation with the minimum required privileges and in an isolated environment.
- Add automated dependency provenance and integrity checks to the release process.
