T08 · Insecure Dependencies
- Location
README.md:20- Finding
Unverified External Executables Are Downloaded and Run with User Privileges
- Content
View full analysis
Vulnerability Details
File Location:
README.md, lines 20-35
Vulnerability Type: Unverified third-party binary dependency
Risk Level: HighVulnerable Code
text - macOS ARM64: `xiaohongshu-mcp-darwin-arm64.tar.gz` - macOS x64: `xiaohongshu-mcp-darwin-x64.tar.gz` - Linux: `xiaohongshu-mcp-linux-amd64.tar.gz` https://github.com/example/xiaohongshu-mcpbash cd ~/xiaohongshu-mcp/bin ./xiaohongshu-login-darwin-arm64 nohup ./xiaohongshu-mcp-darwin-arm64 > ../mcp.log 2>&1 &Technical Analysis
The installation instructions direct users to download and execute precompiled login and MCP binaries from an external GitHub repository. The documented repository uses the placeholder account
example, does not pin an immutable release or commit, and provides no checksum or cryptographic signature verification.The downloaded components are security-sensitive because they perform account login, handle session cookies, and expose MCP operations. Their effective behavior cannot be established by auditing this project because their source and binaries are not included. If the repository, release artifacts, DNS path, or maintainer account is compromised, an attacker can replace the binaries after this Skill has already been reviewed.
Running the service with
nohupalso leaves the unverified component operating in the background beyond the initiating shell session, increasing the duration during which a compromised binary could act.Attack Path
- An attacker gains control of the referenced repository or publishes artifacts at the placeholder location.
- The attacker replaces a platform archive with a malicious executable using the expected filename.
- A user follows the README and downloads the archive without validating its signature or checksum.
- The user launches the login executable under their normal operating-system account.
- The malicious binary reads account cookies o ...[truncated 822 chars]
- Remediation
View remediation
Remediation Suggestions
- Replace the placeholder repository URL with the verified official project repository.
- Pin downloads to an immutable release version and commit hash rather than a mutable branch or latest-release URL.
- Publish SHA-256 or stronger checksums for every platform artifact and instruct users to verify them before extraction or execution.
- Cryptographically sign releases and document signature verification using a trusted maintainer key or a service such as Sigstore.
- Prefer reproducible builds from reviewed source code where practical.
- Run the MCP service under a dedicated, unprivileged operating-system account with access only to the required cookie and configuration files.
- Avoid recommending elevated execution and document that the binaries must never be run with administrator or root privileges.
- Bind the MCP endpoint exclusively to loopback and enforce authentication or capability restrictions for sensitive account operations.
- Document how users can stop the background service and verify the identity and integrity of the running executable.
