Back to skill

Security audit

Blog Writer Free

Security checks for vulnerabilities and agentic risk

Overview

This blog-writing skill is not clearly malicious, but it asks for broad file and command execution powers that are not well scoped for writing blog content.

Review this skill before installing. It may be acceptable only in a tightly sandboxed agent where command execution is disabled or allowlisted, file access is limited to user-selected inputs and a dedicated output directory, and callback/API use requires explicit approval.

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:17
Finding

Overprivileged Tool Permissions for a Content-Writing Skill

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 17–20
Vulnerability Type: Excessive filesystem and command-execution permissions
Risk Level: Medium

Vulnerable Configuration

yaml
tools:
  - read
  - exec
  - write

Technical Analysis

The skill requests general-purpose file-reading, file-writing, and command-execution tools even though its stated purpose is blog planning, drafting, SEO optimization, and output formatting. Routine text generation does not require arbitrary operating-system command execution.

The configuration does not define enforceable command allowlists, filesystem path restrictions, output-directory boundaries, or per-operation user approval. Although the document states that commands should run in a sandbox and mentions allowlisting as a security recommendation, it does not provide configuration that enforces those controls.

Consequently, the skill violates the principle of least privilege. If the hosting agent grants the declared tools without additional platform-level restrictions, untrusted content processed as a writing prompt could attempt to influence the agent into using these capabilities outside the legitimate scope of blog creation.

Attack Path

  1. An attacker supplies a blog topic, reference document, or other input containing adversarial instructions.
  2. The skill processes that attacker-controlled content while having access to read, write, and exec.
  3. The injected instructions attempt to persuade the agent to read unrelated local files, execute operating-system commands, or modify files.
  4. If the host does not independently enforce sandboxing, path restrictions, and user confirmation, the agent may perform those operations with the privileges of its current process.
  5. Retrieved information could then be included in generated output or files could be modified within the process account's accessible scope.

No executable implementation ...[truncated 943 chars]

Remediation
View remediation

Remediation Suggestions

  1. Remove exec, because command execution is not required for blog generation.
  2. Omit read by default and enable it only for an explicit source-document ingestion workflow.
  3. Restrict read to user-selected files or a dedicated input directory.
  4. Restrict write to a dedicated output directory and prevent path traversal, symbolic-link escapes, and overwriting of existing files without confirmation.
  5. Prefer returning generated Markdown or HTML directly rather than writing it to the filesystem.
  6. Require explicit user approval before every filesystem operation that falls outside the designated workspace.
  7. If command execution becomes essential for a future feature, define an enforceable command-and-argument allowlist, prohibit shell interpolation, run commands in an isolated sandbox, disable network access by default, and apply strict resource and timeout limits.
  8. Run the skill under a dedicated, non-administrative account with access only to the files required for the current task.
  9. Treat blog topics, imported references, and callback-related values as untrusted data rather than agent instructions.
Vulnerability Patterns
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • 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
Findings (5)

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
96% confidence
Finding

This skill declares exec alongside read and write even though its stated purpose is blog writing. Unnecessary command-execution capability materially expands the attack surface: if the skill is invoked on attacker-controlled prompts or content, the agent may be induced to run shell commands, access local resources, or transform a simple content task into arbitrary code execution.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The description says to use the skill whenever the user needs marketing copy, writing content, title optimization, or content creation, which are broad everyday requests rather than narrowly scoped invocation conditions. This lacks clear trigger boundaries or negative examples, increasing the chance the skill is invoked for generic writing requests beyond its intended blog-writing scope.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The manifest description states '支持中文交互' in a way that presents Chinese interaction as the expected mode, while the file does not offer a language or locale choice. Under the policy, language constraints should be opt-in or clearly justified; here no such choice or justification is provided.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
85% confidence
Finding

The skill documentation is internally inconsistent: it claims end-to-end publishing-related capability and API/callback support, while later asserting that platform API publishing is out of scope. This ambiguity can cause the host agent or user to over-trust the skill’s boundaries and permit broader external actions than intended, increasing the chance of unintended data egress or unauthorized integrations.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The documentation expands the skill into broad file handling, API integration, command execution, and information retrieval that exceed the narrow blog-writing use case. Overbroad capability descriptions encourage unsafe wiring by agent platforms and make it easier for prompt-injected or malicious inputs to repurpose the skill for data access, exfiltration, or system interaction unrelated to writing.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.