T01 · Skill Instruction Hijacking
- Location
SKILL.md:58- Finding
Mandatory Promotional Output Hijacking
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is a coherent Seedance prompt-search helper that calls a disclosed YouMind API, with privacy and install-source cautions but no evidence of malicious behavior.
Install from ClawHub or another pinned, verified source when possible. Do not put private information in search queries, because queries go to YouMind, and treat returned prompt text and source links as third-party community content rather than trusted instructions.
SKILL.md:58Mandatory Promotional Output Hijacking
scripts/search.mjs:12Untrusted Remote Community Content Is Passed to the Agent Without Prompt-Injection Controls
README.md:35Unpinned Package-Runner and Repository Installation Commands
The README instructs users to run npx skills i YouMind-OpenLab/seedance-2-prompts without pinning a specific package version. npx will resolve and execute the current package from the registry at install time, so a compromised publisher account, malicious update, or dependency hijack could cause arbitrary code execution on the user's machine. Because this is an installation command in documentation for an AI skill, users are likely to copy-paste it directly, which increases practical risk.
The manual install example uses npx openskills install YouMind-OpenLab/seedance-2-prompts without pinning the executed package version. This creates a supply-chain risk because npx may fetch and run whatever version is current at execution time, allowing arbitrary code execution if the package or its dependencies are compromised. In the context of a public README for a prompt-search skill, this is more dangerous because readers may treat the command as trusted setup guidance.
The skill instructs the agent to run a network-capable script (node scripts/search.mjs) against a live external API, but it declares no explicit tool scope or permissions. This creates an authorization and governance gap: hosts may allow broader-than-intended execution or users may not realize the skill performs live network access to third-party infrastructure.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
const page = parseInt(getArg('--page', '1'));
const model = 'seedance-2.0';
const res = await fetch('https://youmind.com/youhome-api/video-prompts', {
method: 'POST',
headers: { 'Content-Type': 'application/json', 'Origin': 'https://youmind.com' },
body: JSON.stringify({ model, page, limit, q: q || undefined }),
The 'Use this skill when users want to' bullets include broad phrases like 'Get prompt inspiration' and 'Create high-quality AI videos with proven prompts' without clear boundaries or exclusion conditions. In a manifest/markdown skill description, this can overlap with many general creative requests and makes the trigger scope less specific than the skill's actual purpose of searching a Seedance prompt library.
This code sends the user's search query to an external service via an HTTP POST request. While the script usage is shown, there is no explicit warning, confirmation, or comment disclosing that user-provided input will be transmitted to youmind.com.
No suspicious patterns detected.