Back to skill

Security audit

Asset Library Skill

Security checks for vulnerabilities and agentic risk

Overview

This personal document-library skill is mostly coherent, but it needs review because some code can send documents and API keys to configurable or unvalidated network destinations.

Review this before installing if you will process real personal or business documents. Use dedicated low-privilege API keys, keep CAIXU_AGENT_BASE_URL unset unless you fully trust and validate the endpoint, avoid parser export mode until download URL validation and credential stripping are fixed, and point ingestion only at directories you intend to index because extracted text and file paths are stored in a local SQLite database.

Vulnerability Patterns
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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 (2)

T09 · Insecure Skill Coding Practices

Error
Location
caixu-shared-core/packages/skill-runner/src/index.ts:2017
Finding

Configurable model endpoint can receive API credentials and sensitive document-derived content

Content
View full analysis
0 ? { max_tokens: Math.trunc(maxTokens ?? 0) } : {}), ...(responseFormat ? { response_format: { type: responseFormat } } : {}), ...(thinkingMode ? { thinking: { type: thinkingMode } } : {}), messages: [ { role: "system", content: systemPrompt }, { role: "user", content: userPrompt } ] }) } }); ``` ```ts const apiKey = process.env.CAIXU_AGENT_API_KEY?.trim() || process.env.ZHIPU_API_KEY?.trim(); return createOpenAICompatibleSkillModelClient({ apiKey, model: process.env.CAIXU_AGENT_MODEL?.trim() || "glm-4.6", baseUrl: process.env.CAIXU_AGENT_BASE_URL?.trim(), timeoutMs: Number.isFinite(timeoutMs) && timeoutMs > 0 ? timeoutMs : 30000, httpMaxAttempts: Number.isFinite(httpMaxAttempts) && httpMaxAttempts > 0 ? httpMaxAttempts : 4, httpBaseDelayMs: Number.isFinite(httpBaseDelayMs) && ...[truncated 3589 chars]
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Error
Location
caixu-ocr-mcp/src/tools/zhipu-file-parser.ts:275
Finding

Parser-provided download URL can receive the Zhipu Bearer credential and enable SSRF

Content
View full analysis
void; }): Promise<{ assets: ParserExportAsset[]; bundleText: string | null }> { const retryConfig = getZhipuHttpRetryConfig(); let response: Response; try { response = await fetchWithZhipuRetry({ scope: `zhipu-parser:${input.apiKey.slice(-8)}`, url: input.downloadUrl, timeoutMs: requestTimeoutMs, maxAttempts: retryConfig.maxAttempts, baseDelayMs: retryConfig.baseDelayMs, maxDelayMs: retryConfig.maxDelayMs, minIntervalMs: retryConfig.minIntervalMs, onEvent: input.onEvent, label: "Zhipu parser export download", init: { headers: { Authorization: `Bearer ${input.apiKey}` } } }); } catch (error) { throw new ParsePipelineError({ code: "ZHIPU_PARSER_EXPORT_FAILED", message: error instanceof Error ? error.message : "Failed to download parser export bundle", retryable: true }); } ``` ### Techni ...[truncated 2626 chars]
Remediation
View remediation
Vulnerability Patterns
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • 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
Findings (163)

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
95% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
97% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
95% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
97% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

Direct creation and mutation of libraries, parsed files, asset cards, package/lifecycle records, and maintenance operations contradict the documented non-operational role. This broad hidden authority increases the chance of accidental corruption, unauthorized data retention, or misuse of sensitive library contents under a deceptively safe label.

Content

No source excerpt is available for this finding.