T08 · Insecure Dependencies
- Location
SKILL.md:96- Finding
Unpinned Third-Party Package Installation
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This ZenTao assistant is mostly purpose-aligned, but it can change live project records and uses risky installation and credential patterns that deserve manual review before use.
Install only after reviewing the npm package source/version and pinning a trusted release. Use a least-privileged ZenTao account, avoid putting passwords on the command line, and require explicit confirmation before any create, update, reassignment, effort logging, or automatic iteration creation.
SKILL.md:96Unpinned Third-Party Package Installation
SKILL.md:106ZenTao Password Exposed Through a Command-Line Argument
SKILL.md:41Automatic Iteration Creation Exceeds the Requested Task Mutation
The skill encourages conversational use of task creation, reassignment, status transitions, and effort logging without prominently warning that these are write operations affecting live ZenTao records. In an LLM-agent context, that omission is especially risky because natural-language triggers can cause the model to execute impactful actions that the user may perceive as informational rather than mutating.
The security section reassures users that the extension will not perform unauthorized modifications, but the rest of the document explicitly advertises capabilities that create iterations/tasks and change status, assignees, and effort records. This mismatch can mislead operators and downstream agents into underestimating the risk of invoking the tool, increasing the chance of unintended destructive or integrity-impacting actions.
The skill instructs users to invoke an unpinned package via npx skills add @chenish/zentao-mcp-agent, which allows whatever version is current at execution time to be fetched and run. In a privileged enterprise workflow tool that can create tasks, reassign work, and update records, a compromised or maliciously updated package could immediately gain broad access and perform unauthorized actions.
The login example passes the account password directly on the command line, which can expose credentials through shell history, process listings, audit logs, terminal recording, or CI logs. Because the skill grants access to a system that can view and modify project records across users and teams, credential compromise could lead to broad confidentiality and integrity impact.