Back to skill

Security audit

Auto Content

Security checks for vulnerabilities and agentic risk

Overview

This content-writing skill is mostly purpose-aligned, but it directs agents to automatically read project details and run external trend searches before the user asks.

Review this skill before installing. It may be useful for SEO content workflows, but only if you are comfortable with automatic web searches based on your project spec, niche, product themes, and competitor names. Prefer installing only after removing or disabling Stage 0 auto-run behavior and requiring explicit approval before any external search.

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

T01 · Skill Instruction Hijacking

Error
Location
SKILL.md:60
Finding
Automatic Session-Wide Activation Overrides Normal User Invocation Boundaries## Vulnerability Details **File Location**: `SKILL.md`, lines 9–10 and 60 **Vulnerability Type**: T01: Skill Instruction Hijacking **Risk Level**: High ### Vulnerable Code ```markdown Also trigger automatically at the start of every new session to scan X for trending topics relevant to the user's project spec — propose hot keywords before the user asks. ``` ```markdown **Run automatically at the start of every new session, before the user says anything.** ``` ### Technical Analysis The Skill instructs the Agent to activate at the beginning of every session, including sessions in which the user has not requested content research or invoked this Skill. This changes the Agent's current-session behavior and invocation boundaries merely because the Skill is loaded. Automatic execution is not necessary for the declared on-demand SEO and content-generation functionality. A least-privilege implementation would remain inactive until the user explicitly requests the Skill or approves trend research. The instruction is particularly risky because the automatically initiated stage includes external searches based on project information. ### Attack Path 1. The Skill is installed or loaded into the Agent's available context. 2. A new session begins, even if the user's intended task is unrelated to SEO or content creation. 3. The instruction at line 60 directs the Agent to execute Stage 0 before receiving user input. 4. The Agent reads project information and initiates external trend searches without a task-specific request. 5. The Skill emits unsolicited recommendations and displaces the goals of the current session. ### Impact Assessment This behavior can hijack the current session's workflow, trigger network activity without contemporaneous consent, and cause project-derived information to be included in third-party search requests. It does not establish cross-session persistence or obtain operating-system privileges, but ...[truncated 147 chars]
Remediation
## Remediation Suggestions - Remove both instructions requiring activation at the start of every session. - Activate the Skill only after an explicit user request that matches its declared content-creation functionality. - Require separate confirmation before Stage 0 performs any network request. - Present the intended search queries and the project-derived values they contain before execution. - Provide an offline mode that generates topic suggestions without transmitting project information. - Ensure unrelated sessions cannot invoke the Skill solely because it is installed or available.

other

Warning
Location
SKILL.md:62
Finding
Project-Derived Business Information Is Sent to External Search Providers Without Explicit Consent## Vulnerability Details **File Location**: `SKILL.md`, lines 62–69 **Vulnerability Type**: other: Unconsented Network Disclosure **Risk Level**: Medium ### Vulnerable Code ```markdown 1. Parse `project_spec.md` → extract: domain/niche, audience, product themes, competitor names 2. Run web searches (fill in values from spec): - `site:x.com [domain keyword] -filter:replies` - `[domain keyword] trending twitter 2025` - `[domain keyword] discussion OR debate twitter` - `[competitor name] twitter sentiment 2025` - `crypto twitter trending today` - `[domain keyword] CT crypto twitter discussion` ``` ### Technical Analysis The Skill extracts business information from `project_spec.md`, including product themes, target audiences, domain details, and competitor names, and interpolates those values into external search queries. Search queries are network transmissions and may be logged, retained, profiled, or associated with an account or IP address by the search provider. The instructions do not require the Agent to classify the specification's sensitivity, redact confidential identifiers, identify the destination provider, preview the final queries, or obtain user consent. The risk is increased by the separate instruction to run Stage 0 automatically before the user says anything. The audit found no instruction to transmit API keys to an unrelated endpoint, no encoded exfiltration payload, and no remote code execution. The confirmed issue is limited to disclosure of project-derived business information through external search requests. ### Attack Path 1. A user supplies or makes available a project specification containing internal product and market information. 2. The Skill parses the file and extracts the project's niche, audience, product themes, and competitor names. 3. Those values are inserted into the prescribed search-query templates. 4. The Agent sends the resulting queries to an external ...[truncated 616 chars]
Remediation
## Remediation Suggestions - Disable all project-derived searches by default. - Ask for explicit, task-specific consent before transmitting any value extracted from `project_spec.md`. - Display the destination provider and complete proposed queries for user approval. - Minimize query contents by using generic category terms instead of project, product, customer, or competitor identifiers whenever possible. - Detect and redact confidential names, unreleased products, customer identifiers, credentials, private URLs, and other sensitive values. - Document which search providers may receive queries and their relevant retention or privacy implications. - Permit users to provide manually sanitized keywords instead of granting the Skill access to the entire project specification. - Keep network access disabled when offline research is sufficient for the requested task.
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
Findings (4)

Vague Triggers

High
Confidence
97% confidence
Finding
The skill declares extremely broad trigger conditions and also says it should run automatically at the start of every new session, which can cause unsolicited activation for generic writing tasks. In practice, this can make the agent collect data or perform work the user did not explicitly request, increasing the risk of privacy leakage, surprise network access, and scope creep.

Missing User Warnings

High
Confidence
98% confidence
Finding
The skill explicitly instructs autonomous web searches before any user message and bases those searches on project-spec content, without obtaining contemporaneous consent or giving a user-facing warning. That creates a clear risk of unexpected outbound network activity, potential disclosure of sensitive project details in queries, and violation of least-surprise expectations.

Vague Triggers

Medium
Confidence
84% confidence
Finding
Allowing users to 'enter at any stage' without a tightly defined trigger contract makes the operational boundary ambiguous and can lead the agent to run stages or side effects that were not clearly requested. This is less severe than autonomous startup behavior, but it still increases the chance of unintended processing, external lookups, or misuse of intermediate commands.

Ssd 3

Medium
Confidence
94% confidence
Finding
The instruction to act before any user message and emit unsolicited Trend Alert output means the agent is directed to initiate behavior independently rather than responding to user input. In a content-generation skill that also consumes project specifications, this makes the behavior more dangerous because it can expose inferred strategy, competitors, or niche terms without an explicit request.

Static analysis

No suspicious patterns detected.