T08 · Insecure Dependencies
Error
- Location
- SKILL.md:22
- Finding
- Unpinned Third-Party Package Is Downloaded and Executed Automatically## Vulnerability Details **File Location**: `SKILL.md`, lines 22-25 **Vulnerability Type**: Unpinned and automatically executed third-party dependency **Risk Level**: High ```json "schoolpass": { "command": "npx", "args": ["-y", "schoolpass-mcp"], ``` ### Technical Analysis The documented MCP configuration invokes `npx` with the `-y` option and an unversioned package name. This causes npm to resolve, download when necessary, and execute the package without interactive approval. Because no exact version or integrity digest is specified, the effective executable payload can change after this Skill has been reviewed. The implementation of `schoolpass-mcp` is not included in the audited project, so its handling of credentials, host overrides, API responses, and local process permissions cannot be independently verified from the available artifact. The package receives the configured SchoolPass email and password and executes with the filesystem, network, and process privileges of the MCP host. This is a supply-chain exposure rather than proof that the current published package is malicious. Exploitation would require compromise or malicious modification of the package, its release process, its maintainer account, or the package-resolution environment. ### Attack Path 1. A user adds the documented configuration and starts the MCP server. 2. `npx -y schoolpass-mcp` resolves the package version available from the configured npm registry. 3. A compromised or malicious release is downloaded and executed without an interactive review step. 4. The package receives `SCHOOLPASS_EMAIL`, `SCHOOLPASS_PASSWORD`, and `SCHOOLPASS_SCHOOL_CODE` through its environment. 5. Malicious package code can transmit those credentials or access other resources available to the MCP process. ### Impact Assessment A compromised dependency could obtain the user's SchoolPass credentials and access sensitive parent and child records, including st ...[truncated 567 chars]
- Remediation
- ## Remediation Suggestions - Pin `schoolpass-mcp` to a specific, reviewed version rather than resolving the latest available release. - Use a lockfile and verified package integrity metadata where supported. - Avoid unattended installation with `npx -y`; install and review the dependency through a controlled deployment process. - Include the MCP server implementation in the audited artifact or vendor a reviewed build so its behavior can be verified. - Run the server in a sandbox with restricted filesystem access, a minimal environment, and outbound network access limited to validated SchoolPass API hosts. - Monitor dependency ownership, release provenance, and unexpected package-version changes. - Re-audit the package before upgrading to a new version.
