Back to skill

Security audit

Hair Makeover Video

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed WeryAI video-generation helper for hair makeover clips, with expected use of a WeryAI API key and network calls but no hidden persistence, local data harvesting, or unrelated privileged behavior found.

Install only if you are comfortable giving the skill a WeryAI API key and sending prompts or public image URLs to WeryAI. Review the confirmation table before approving a generation because successful runs consume credits, and watch for the audio setting until the documentation inconsistency is fixed.

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
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
Findings (11)

Tp4

High
Category
MCP Tool Poisoning
Confidence
96% confidence
Finding

The published description frames the skill as narrowly for hair makeover videos, but the documented behavior and referenced script support general-purpose video generation, status polling, model listing, and non-vertical / arbitrary-subject generation. This mismatch can mislead users and reviewers into granting trust, permissions, and secrets under a narrower threat model than the skill actually operates under.

Content

No source excerpt is available for this finding.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 16)May include surrounding context.

md
**Dependencies**: `scripts/video_gen.js` in this directory + `WERYAI_API_KEY` + Node.js 18+. No dependency on other Cursor skills.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 21)May include surrounding context.

md
**Dependencies**: `scripts/video_gen.js` in this directory + `WERYAI_API_KEY` + Node.js 18+. No dependency on other Cursor skills.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 28)May include surrounding context.

md
**Dependencies**: `scripts/video_gen.js` in this directory + `WERYAI_API_KEY` + Node.js 18+. No dependency on other Cursor skills.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 29)May include surrounding context.

md
**Dependencies**: `scripts/video_gen.js` in this directory + `WERYAI_API_KEY` + Node.js 18+. No dependency on other Cursor skills.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 34)May include surrounding context.

md
**Dependencies**: `scripts/video_gen.js` in this directory + `WERYAI_API_KEY` + Node.js 18+. No dependency on other Cursor skills.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 79)May include surrounding context.

md
- Does not hard-code absolute paths in the skill doc; `{baseDir}` means the skill package root (same level as `SKILL.md`).

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
93% confidence
Finding

The skill requires network access and reads a secret from the environment, but it does not declare an explicit tool scope such as allowed tools or permissions. That weakens sandboxing and reviewability, making it easier for the skill or its companion script to gain broader capabilities than intended and harder for operators to enforce least privilege.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The implicit trigger prompt is broad and style-based rather than tightly scoped to the skill’s intended capability, so unrelated salon, fashion, pet-grooming, or generic makeover requests could spuriously invoke this skill. In an agent system, ambiguous triggering can route user input to the wrong tool, causing unintended external actions, incorrect outputs, or bypass of more appropriate safeguards for adjacent domains.

Content

No source excerpt is available for this finding.

Vague Triggers

Low
Category
Not specified by scanner
Confidence
85% confidence
Finding

The description says to use the skill whenever a user needs a hair transformation reel or asks for a related clip, but it does not define specific trigger phrases, exclusions, or narrow activation constraints. This makes invocation scope somewhat broad for a manifest/markdown context and could cause the skill to match loosely related everyday requests about hair or transformations.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
98% confidence
Finding

The surrounding documentation and parameter table state generate_audio should be false, but the concrete command example at L134 submits "generate_audio":true. This is an active contradiction in the skill's own instructions about what should be sent to the API.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.