Back to skill

Security audit

Tdnet Disclosure Mcp

Security checks for vulnerabilities and agentic risk

Overview

This skill coherently installs and documents a TDNET disclosure lookup tool, with a supply-chain caution because the external Python package is not pinned to a reviewed version.

Install only if you are comfortable trusting the external Python package publisher. Prefer a reviewed pinned version or hash-locked install in a sandboxed environment, and verify important financial disclosures against official TDNET or exchange sources before relying on them.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:4
Finding
Unpinned Third-Party Package Installation Creates Supply-Chain Risk## Vulnerability Details **File Location**: `SKILL.md:4` and `SKILL.md:85-88` **Vulnerability Type**: Unpinned third-party dependency installation **Risk Level**: Medium **Vulnerable Code Snippet**: ```yaml metadata: {"openclaw":{"emoji":"📋","requires":{"bins":["tdnet-disclosure-mcp"]},"install":[{"id":"uv","kind":"uv","package":"tdnet-disclosure-mcp","bins":["tdnet-disclosure-mcp"],"label":"Install tdnet-disclosure-mcp (uv)"}],"tags":["japan","finance","tdnet","disclosure","earnings","stock","jpx","tse","mcp"]}} ``` ```markdown ## Setup - No API key required - Python package: `pip install tdnet-disclosure-mcp` or `uv tool install tdnet-disclosure-mcp` - Data source: Yanoshin Web API (mirrors TDNET data) ``` ### Technical Analysis The Skill directs the environment to install and execute the external `tdnet-disclosure-mcp` Python package without specifying an exact version, integrity hash, lockfile, trusted repository URL, or verified publisher identity. Consequently, `pip` or `uv` resolves whichever release is current at installation time. The project contains only `SKILL.md`; it does not include the package implementation or other executable source that would allow its runtime behavior to be audited. The reviewed content does not establish that the current package is malicious. However, the installation mechanism leaves the effective executable dependency mutable after review and exposes users to compromised publisher accounts, malicious future releases, package-index compromise, or dependency-resolution attacks. Python packages may execute code during installation depending on their build configuration and will execute package-controlled code when the installed command is invoked. ### Attack Path 1. An attacker compromises the package publisher account, distribution channel, or a dependency used by `tdnet-disclosure-mcp`, or publishes a malicious future release. 2. The attacker distributes a modified package v ...[truncated 1058 chars]
Remediation
## Remediation Suggestions 1. Pin the package to an exact, reviewed version in both Skill metadata and setup commands, such as `tdnet-disclosure-mcp==X.Y.Z`. 2. Require cryptographic artifact hashes through a hash-locked requirements file or equivalent package-manager lockfile. 3. Document the canonical source repository, expected package-index namespace, and verified publisher identity. 4. Review the pinned package source and its complete transitive dependency tree before publication. 5. Use a private or controlled package mirror where feasible and permit only approved artifacts. 6. Perform installation and execution in a sandbox with minimal filesystem, credential, and network access. 7. Add automated dependency monitoring and require a new security review before updating the pinned version.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
Findings (1)

Rp1

Low
Category
MCP Rug Pull
Confidence
93% confidence
Finding
The skill instructs users to install the MCP server package without pinning to a specific version, which creates a supply-chain risk: future package updates could introduce malicious code or breaking changes and would be implicitly trusted at install time. In this context the risk is somewhat limited because the file is documentation-only and does not auto-execute installation, but users following the command may still retrieve an unexpected package version.

Static analysis

No suspicious patterns detected.