T08 · Insecure Dependencies
- Location
scripts/start-server.sh:10- Finding
Unpinned Third-Party Components Are Downloaded and Executed
- Content
View full analysis
Vulnerability Details
File Location:
scripts/start-server.sh:10-12; related installation guidance inREADME.md:22-30andSKILL.md:13-15
Vulnerability Type: T08: Insecure Dependencies
Risk Level: MediumVulnerable Code
scripts/start-server.sh:10-12:bash # Start blender-mcp echo "Starting Blender MCP server..." uvx blender-mcpRelated instructions in
README.md:22-30:markdown BlenderMCP is automatically available via uvx: ```bash uvx blender-mcp2. Install Blender addon
- Download
addon.pyfrom https://github.com/ahujasid/blender-mcp
text Related prerequisite in `SKILL.md:13-15`: ```markdown 1. Blender installed and running 2. BlenderMCP addon installed in Blender 3. blender-mcp Python package installed via uvxTechnical Analysis
The startup script invokes
uvx blender-mcpwithout specifying an exact package version, hash, or trusted artifact source. Depending on the localuvxcache and package resolution state, this can retrieve and execute a mutable package from the configured Python package index at runtime.The installation documentation also directs users to download a mutable
addon.pyfile from a GitHub repository without identifying a release, commit hash, expected checksum, or signature. Therefore, the code that ultimately runs is not fully represented by the audited project and may change after this review.This creates a supply-chain trust weakness. Compromise of the package publisher, package index, upstream repository, or release process could result in different code being installed or executed under the legitimate
blender-mcpname. The reviewed repository does not itself contain a malicious payload, and successful exploitation depends on compromise or substitution of an external component.Attack Path
- An attacker compromises the upstream package publisher, repository, distribution account, or another com ...[truncated 1461 chars]
- Download
- Remediation
View remediation
Remediation Suggestions
-
Pin
blender-mcpto a reviewed, exact version rather than resolving the latest available package at runtime, for example:bash uvx blender-mcp==<reviewed-exact-version> -
Where supported, lock the complete transitive dependency graph and verify package hashes using a committed lock file or equivalent reproducible dependency mechanism.
-
Pin the Blender add-on to a specific trusted release or full commit hash instead of downloading a mutable repository file.
-
Publish and verify a SHA-256 checksum or cryptographic signature for the expected package and add-on artifacts before execution or installation.
-
Document the expected package publisher, repository, release identifier, and verification procedure.
-
Avoid automatically resolving and executing mutable remote dependencies during normal startup. Install reviewed artifacts separately and invoke the installed, verified executable.
-
Run Blender and the MCP server under a dedicated, least-privileged account or sandbox with access limited to required project directories.
-
Restrict outbound network access where feasible and monitor dependency updates through a controlled review process.
-
