Back to skill

Security audit

Pet Grooming Stress Behavior Analysis | 宠物美容过程应激行为识别

Security checks for vulnerabilities and agentic risk

Overview

The skill performs the advertised cloud video analysis, but it also silently creates or reuses an identity, stores tokens locally, and can query cloud history, so it needs user review before installation.

Install only if you are comfortable sending grooming media or URLs to the Lifeemergence/Open API services and allowing the skill to create or reuse a local identity, store service tokens in the workspace, and retrieve identity-linked historical reports. Avoid using it with sensitive shop, clinic, customer, or camera footage unless the publisher provides clear data retention, account, and deletion terms.

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
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • YARA SignaturesMalware Match, Webshell Match, Cryptominer Match
Findings (45)

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The code behaviors described here—workspace file access, identity creation/reuse, token-managed authenticated HTTP requests, and remote login/auth endpoints—indicate privileged local and remote operations unrelated to simple pet stress scoring. In context, this is especially risky because the skill encourages processing user-provided files/URLs and silently associates them with internally managed identities.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The code behaviors described here—workspace file access, identity creation/reuse, token-managed authenticated HTTP requests, and remote login/auth endpoints—indicate privileged local and remote operations unrelated to simple pet stress scoring. In context, this is especially risky because the skill encourages processing user-provided files/URLs and silently associates them with internally managed identities.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The code behaviors described here—workspace file access, identity creation/reuse, token-managed authenticated HTTP requests, and remote login/auth endpoints—indicate privileged local and remote operations unrelated to simple pet stress scoring. In context, this is especially risky because the skill encourages processing user-provided files/URLs and silently associates them with internally managed identities.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The code behaviors described here—workspace file access, identity creation/reuse, token-managed authenticated HTTP requests, and remote login/auth endpoints—indicate privileged local and remote operations unrelated to simple pet stress scoring. In context, this is especially risky because the skill encourages processing user-provided files/URLs and silently associates them with internally managed identities.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The code behaviors described here—workspace file access, identity creation/reuse, token-managed authenticated HTTP requests, and remote login/auth endpoints—indicate privileged local and remote operations unrelated to simple pet stress scoring. In context, this is especially risky because the skill encourages processing user-provided files/URLs and silently associates them with internally managed identities.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The code behaviors described here—workspace file access, identity creation/reuse, token-managed authenticated HTTP requests, and remote login/auth endpoints—indicate privileged local and remote operations unrelated to simple pet stress scoring. In context, this is especially risky because the skill encourages processing user-provided files/URLs and silently associates them with internally managed identities.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The code behaviors described here—workspace file access, identity creation/reuse, token-managed authenticated HTTP requests, and remote login/auth endpoints—indicate privileged local and remote operations unrelated to simple pet stress scoring. In context, this is especially risky because the skill encourages processing user-provided files/URLs and silently associates them with internally managed identities.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The code behaviors described here—workspace file access, identity creation/reuse, token-managed authenticated HTTP requests, and remote login/auth endpoints—indicate privileged local and remote operations unrelated to simple pet stress scoring. In context, this is especially risky because the skill encourages processing user-provided files/URLs and silently associates them with internally managed identities.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The code behaviors described here—workspace file access, identity creation/reuse, token-managed authenticated HTTP requests, and remote login/auth endpoints—indicate privileged local and remote operations unrelated to simple pet stress scoring. In context, this is especially risky because the skill encourages processing user-provided files/URLs and silently associates them with internally managed identities.

Content

No source excerpt is available for this finding.

YARA rule 'agent_skill_mcp_tool_poisoning_metadata': MCP/tool metadata poisoning indicators in tool schemas or skill manifests [agent_skills]

High
Category
YARA Match
Confidence
80% confidence
Finding

YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).

Content

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

md
---
name: "smyx-pet-grooming-stress-behavior-analysis"
description: "Triggers when a user provides a pet grooming session video URL or file for analysis; supports local video uploads or network URLs to call server-side APIs for stress behavior recognition, detecting struggling, panting, tail tucking and other stress signals during grooming, outputting stress level grading to help groomers intervene promptly. Application scenarios: pet grooming shop cameras, veterinary clinics, pet care services. | 当用户提供宠物美容过程视频URL或文件时,触发本技能进行应激行为分析;支持通过上传本地视频或网络视频URL,�

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The HTTP helper silently performs phone-login/registration against a remote service and persists returned tokens into a local database. For a video stress-analysis skill, this is unrelated functionality that introduces covert account provisioning, credential storage, and remote identity linkage, increasing privacy and abuse risk if the host environment or database is later accessed.

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
95% confidence
Finding

The skill declares powerful capabilities in practice—shell execution, file read/write, environment access, and network use—yet provides no explicit tool-scope or permission boundaries in the manifest. This weakens policy enforcement and makes it easier for the skill to invoke sensitive actions beyond its stated pet-video analysis purpose, especially given the instructions to run local scripts and access cloud APIs.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The skill does not clearly warn users that uploaded files, URLs, and historical report requests are sent to server-side/cloud APIs. This is a privacy and transparency problem because grooming videos may contain people, locations, business interiors, or other sensitive data, and users may not realize they are authorizing remote processing.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The trigger conditions are broad enough to activate on common phrases about stress, reports, or grooming, which can cause unintended invocation of local scripts and cloud queries. In an agent setting, overbroad triggers increase the chance of accidental data transmission or unexpected use of sensitive capabilities without clear user intent.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

This code hard-codes the command description, argument help text, and status/error messages in Chinese, which imposes a specific language on all users. The file provides no mechanism to select another language or to opt into this locale, matching the language-policy violation criteria.

Content

No source excerpt is available for this finding.

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skills/smyx_analysis/scripts/skill.py (reported line 28)May include surrounding context.

python
result_json = JsonUtil.parse(result_json_pure_text, result_json_pure_text)

        result_json_common_ai_response = result_json.get("commonAiResponse") if isinstance(result_json,
                                                                                           dict) else result_json
        if result_json_common_ai_response:
            result_json = result_json_common_ai_response

Whitespace Padding

Medium
Category
Prompt Injection
Confidence
70% confidence
Finding

Large whitespace padding was detected (a block of blank lines or a long run of spaces). This can push injected instructions below or to the right of the visible area so a human reviewer never sees them while the agent still reads them. Manual review of the hidden content is recommended.

Content

Scanner excerpt · skills/smyx_analysis/scripts/skill.py (reported line 33)May include surrounding context.

python
result_json = JsonUtil.parse(result_json_pure_text, result_json_pure_text)

        result_json_common_ai_response = result_json.get("commonAiResponse") if isinstance(result_json,
                                                                                           dict) else result_json
        if result_json_common_ai_response:
            result_json = result_json_common_ai_response

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill returns user-facing strings such as 分析报告结构化结果, 获取报告导出图片链接, and multiple Chinese error/status messages, indicating a fixed-language UX. The file does not offer language selection or explain that the skill is intentionally limited to Chinese users, which is a natural-language locale policy concern.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The skill reads arbitrary local file contents into memory and sends them to an external analysis API, but the code contains no user-facing disclosure, consent check, or trust boundary notice. In a skill that processes local uploads, this creates a real privacy and data-handling risk because users may not realize their local video is being transmitted off-host to a remote service.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The analysis flow sends user-supplied local paths or remote URLs into a backend analysis service without any clear disclosure that external processing occurs. In the context of pet grooming videos, this can expose sensitive footage, metadata, or internal resource URLs to a remote service without informed consent, creating privacy and potential SSRF-style risk if arbitrary URLs are accepted upstream.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The script exposes a history-listing function that retrieves prior analysis results via skill.get_output_analysis_list(open_id=...), which goes beyond the stated purpose of analyzing a user-provided grooming video. Undocumented access to historical records increases the risk of unauthorized data exposure, especially if callers can resolve or influence the identity used for lookup.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The code resolves a user identity and then uses CURRENT__OPEN_ID to fetch analysis history, introducing identity-linked data access that is not necessary for one-off video stress analysis. This creates a privacy and access-control risk because history retrieval may expose prior results tied to a user account if identity resolution is weak, implicit, or spoofable.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

This file exposes broad generic network capabilities through CRUD-style wrappers and arbitrary http_get/http_post/http_put/http_delete methods, even though the skill is described as a narrowly scoped pet grooming stress-analysis integration. If higher-level skill code can pass user-influenced URLs or parameters into these helpers, the skill can be repurposed to contact unintended internal or external services, expanding the attack surface and enabling SSRF-like behavior or unauthorized API use.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

This module creates a local SQLite database and exposes broad CRUD capabilities even though the skill description only justifies video submission and server-side stress analysis. Such extra persistence and generic data handling are dangerous because they enable collection and retention of unrelated data, make abuse easier in a compromised skill, and are disproportionate to the stated feature set.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The file defines persistent user-account storage including username, realname, email, token, and open_token fields, which is unrelated to a pet grooming stress-analysis skill that is described as processing video input via server-side APIs. Unnecessary credential and identity storage expands the attack surface, creates privacy risk, and increases the impact of any local database compromise.

Content

No source excerpt is available for this finding.

Static analysis

Detected: suspicious.install_untrusted_source

Install source points to URL shortener or raw IP.

Warn
Code
suspicious.install_untrusted_source
Location
skills/smyx_common/scripts/config-dev.yaml:2