Back to skill

Security audit

Douyin NLP Search

Security checks for vulnerabilities and agentic risk

Overview

This skill is a small Douyin-themed demo search helper that returns built-in sample results, with some routing and accuracy caveats but no evidence of hidden access, persistence, exfiltration, or destructive behavior.

Install only if you want a demo/local parser for Douyin-style search requests. Treat returned videos and metrics as sample data unless you add a real API or browser integration, and review any future expansion carefully because real scraping would introduce platform terms, rate limits, network access, and possible credential/session handling.

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
  • 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
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (13)

Tp4

High
Category
MCP Tool Poisoning
Confidence
96% confidence
Finding

The skill claims to search and scrape Douyin content but the description itself says the current version only returns simulated results. This mismatch is dangerous because downstream agents or users may treat fabricated output as real external data, enabling misinformation, bad automation decisions, or policy bypass where real retrieval should have been audited.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The README states the skill will automatically trigger for broad, loosely defined requests related to Douyin video search. Overly broad activation boundaries can cause the agent to invoke scraping functionality in unintended contexts, increasing the chance of unauthorized data collection, policy violations, or acting on ambiguous user intent.

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
84% confidence
Finding

The skill advertises scraping/search capabilities and includes examples that imply network access, but it does not declare an explicit tool scope such as allowed tools or permissions. In an agent environment, missing scope boundaries can let the runtime or orchestrator invoke broader network-capable tooling than intended, reducing least-privilege protections and making misuse or unexpected outbound access harder to control.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The trigger phrases are very broad and include generic requests like searching or finding content, which can cause the skill to activate outside a narrowly intended Douyin-specific context. Over-broad activation increases the chance that unrelated user requests get routed into a scraping-oriented skill, causing incorrect behavior, privacy issues, or unintended use of higher-risk tools.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The execution flow says the skill should trigger on common keywords like 'search', 'find', and 'video', which overlaps heavily with everyday language. This creates ambiguous routing and can accidentally invoke a capability associated with scraping or browser automation when a safer, more general skill would have been appropriate.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The example triggers are broad, conversational phrases that overlap with ordinary user speech, which can cause the scraper skill to activate in situations where the user did not clearly intend data scraping or platform-specific search. In a tool that performs external content retrieval, ambiguous activation increases the risk of unintended scraping requests, privacy issues, and misrouting user intent to a data-collection capability.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The top-level docstring presents the file as a natural-language Douyin content search tool, and the CLI description similarly frames it as a functional search utility. In contrast, the code later documents and implements only a simulated result set, creating an active mismatch between documentation and behavior.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The module docstring states the tool in Chinese and gives only Chinese natural-language query examples, which establishes a language-specific interaction model. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation unless the locale constraint is clearly justified, which is not provided here.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
98% confidence
Finding

The manifest describes a tool for searching and scraping Douyin video data from natural-language requests. However, the implementation explicitly states it is a mock and only matches keywords against an in-memory sample dataset, so the actual behavior does not deliver the claimed search/scraping capability.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The CLI description, help strings, and usage example are all presented only in Chinese, with no alternative language option or explicit notice that the tool is restricted to Chinese-language queries. This creates a language policy issue because users are not offered a choice or informed of a justified locale limitation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
79% confidence
Finding

The README emphasizes Chinese natural-language understanding as the supported interaction mode, and all examples are Chinese-only. This can indicate a language/locale constraint without documenting user choice, fallback behavior, or a justified region-specific limitation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
85% confidence
Finding

The text says the skill supports Chinese natural language parsing, which implies a language constraint. Because no user opt-in, alternative language support, or justification for the locale restriction is provided, this may conflict with language/locale policy expectations.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
90% confidence
Finding

All user-facing examples and descriptive text are written in Chinese, and the file does not indicate that other languages are supported or that Chinese is an optional locale choice. This can violate language-choice policy when a skill implicitly constrains interaction to a single language without user opt-in or justification.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.