Back to skill

Security audit

把对话讨论转为结构化

Security checks for vulnerabilities and agentic risk

Overview

This skill is a documentation helper, but it asks for broad file search and command execution authority that is not clearly needed or bounded.

Review before installing. Use this only in an environment where shell execution and file access are tightly sandboxed, and do not assume its claimed sensitive-data filtering works. Avoid giving it private transcripts, credentials, or broad workspace access unless the host requires confirmation for every file, command, and outbound API action.

Vulnerability Patterns
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • 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)

T05 · Unauthorized Access and Privilege Escalation

Warning
Location
SKILL.md:35
Finding

Excessive and Underspecified Tool Permissions

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 35–39
Vulnerability Type: Excessive tool permissions and violation of least privilege
Risk Level: Medium

Vulnerable Code

yaml
tools:
  - read
  - exec
  - glob
  - grep

Related capability claims at lines 255–258:

markdown
- **文件处理**: 支持多种文件格式的读取、解析和写入操作
- **API集成**: 通过标准化接口调用外部服务并处理响应
- **命令执行**: 在安全沙箱中执行系统命令并收集结果
- **信息检索**: 快速搜索和过滤目标数据

In English, these lines claim support for file processing, external API integration, system-command execution in a sandbox, and information retrieval.

Technical Analysis

The Skill's stated primary purpose is to transform supplied conversation content into structured, Notion-compatible documentation. This text-transformation task does not inherently require arbitrary operating-system command execution or broad filesystem discovery.

Nevertheless, the Skill requests exec, read, glob, and grep. It does not define:

  • Allowed commands or arguments
  • Permitted filesystem roots
  • User-consent requirements for local-file access
  • Network destination restrictions
  • Isolation or sandbox enforcement
  • Separation between trusted Skill instructions and untrusted transcript content

Because conversation transcripts are attacker-controllable input, embedded instructions could attempt to induce a tool-enabled agent to inspect unrelated files or execute commands. The reviewed package does not itself contain an exploit command or executable implementation, so exploitation depends on how the host agent interprets the Skill and exposes its declared tools.

The claim that commands run in a secure sandbox is not backed by any implementation or enforceable policy in the reviewed project. Similarly, the automatic sensitive-information filtering claim at line 194 has no corresponding code or concrete enforcement instructions.

Attack Path

  1. A user or attacker supplies a meeting ...[truncated 1532 chars]
Remediation
View remediation

Remediation Suggestions

  1. Remove exec, glob, grep, and unrestricted read if the Skill only transforms explicitly supplied text.
  2. Make the content parameter the sole default input source and treat its contents strictly as untrusted data, not agent instructions.
  3. If local-file input is necessary, require explicit user selection and confirmation for each path, canonicalize paths, and restrict access to a dedicated workspace.
  4. If command execution is indispensable, define a minimal allowlist of fixed commands and arguments. Reject shell metacharacters, command substitution, redirection, and attacker-controlled executable paths.
  5. Enforce sandboxing in the host configuration rather than merely claiming it in documentation. Use a non-privileged account, read-only mounts where possible, minimal environment variables, and disabled network access by default.
  6. Add prompt-injection defenses requiring the agent to ignore operational instructions found inside transcripts or documents.
  7. Restrict external communication to explicitly approved domains and require user confirmation before transmitting document content.
  8. Remove or qualify claims about automatic sensitive-data filtering until an implemented, tested redaction mechanism exists.
  9. Add security tests covering transcript-based tool injection, path traversal, access to files outside the workspace, command injection, and accidental inclusion of secrets in generated output.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (7)

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

Advertising command execution in a skill whose stated purpose is converting discussions into structured documentation creates unnecessary access to the host environment. In agent platforms, this mismatch is dangerous because users may invoke the skill for benign text processing while it still has a plausible path to run shell commands, increasing risk of system modification, data access, or abuse.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

This natural-language statement sets a specific language direction as the primary supported mode, which can violate language/locale policy when not presented as an explicit choice or justified regional limitation. The file does not pair this constraint with opt-in language selection or a documented reason for restricting language behavior.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill claims it will automatically identify and filter sensitive information, but the provided file is only declarative documentation and contains no implementation or verifiable safeguard. This can cause users to trust the skill with secrets, transcripts, or regulated data under a false assumption of protection, increasing the chance of unintended disclosure.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The manifest presents a narrow conversation-to-Notion transformation skill, but later expands into generic file handling, API integration, command execution, and information retrieval. This scope inflation undermines least privilege and makes it easier for a seemingly harmless documentation skill to justify risky operations beyond user expectations.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill advertises impactful capabilities such as file handling, external API calls, and command execution but does not clearly warn users about effects on local data, system state, or confidentiality. This is dangerous because users may treat it as a harmless formatting helper while unknowingly granting authority to read files, execute commands, or transmit data.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

Broad file read/parse/write style functionality is not justified by the limited purpose of restructuring conversation content into Notion-compatible output. Excessive file-system capability increases the chance of unintended data exposure, overwriting files, or processing unrelated local content under the cover of a simple documentation workflow.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

Generic external API integration is broader than the stated knowledge-capture purpose and can expose user-provided conversation data to third parties without clear expectation or necessity. In a documentation skill handling meeting notes, interviews, and customer calls, this increases confidentiality and data-governance risk.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.