Back to skill

Security audit

Pet Drying Box Heat Stress Analysis | 宠物烘干箱内热应激预警

Security checks for vulnerabilities and agentic risk

Overview

This skill does perform cloud video analysis, but it also silently creates or reuses an identity, registers/logs in with a remote service, and stores tokens locally without clear user-facing control.

Install only if you are comfortable with pet videos or video URLs being sent to lifeemergence.com services, cloud report history being tied to an automatically managed identity, and local storage of account tokens in the workspace data directory. Avoid sensitive footage unless the publisher clarifies consent, retention, account creation, and deletion controls.

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 (43)

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The reported code accesses workspace files, generates persistent default user identities, stores authentication tokens, performs authenticated HTTP requests, and may auto-register or log in users via a remote API. These are significant hidden behaviors for a skill advertised as simple pet video analysis, creating risks of secret account creation, credential misuse, persistent tracking, and expanded backend access.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The reported code accesses workspace files, generates persistent default user identities, stores authentication tokens, performs authenticated HTTP requests, and may auto-register or log in users via a remote API. These are significant hidden behaviors for a skill advertised as simple pet video analysis, creating risks of secret account creation, credential misuse, persistent tracking, and expanded backend access.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The reported code accesses workspace files, generates persistent default user identities, stores authentication tokens, performs authenticated HTTP requests, and may auto-register or log in users via a remote API. These are significant hidden behaviors for a skill advertised as simple pet video analysis, creating risks of secret account creation, credential misuse, persistent tracking, and expanded backend access.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The reported code accesses workspace files, generates persistent default user identities, stores authentication tokens, performs authenticated HTTP requests, and may auto-register or log in users via a remote API. These are significant hidden behaviors for a skill advertised as simple pet video analysis, creating risks of secret account creation, credential misuse, persistent tracking, and expanded backend access.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The reported code accesses workspace files, generates persistent default user identities, stores authentication tokens, performs authenticated HTTP requests, and may auto-register or log in users via a remote API. These are significant hidden behaviors for a skill advertised as simple pet video analysis, creating risks of secret account creation, credential misuse, persistent tracking, and expanded backend access.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The reported code accesses workspace files, generates persistent default user identities, stores authentication tokens, performs authenticated HTTP requests, and may auto-register or log in users via a remote API. These are significant hidden behaviors for a skill advertised as simple pet video analysis, creating risks of secret account creation, credential misuse, persistent tracking, and expanded backend access.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The reported code accesses workspace files, generates persistent default user identities, stores authentication tokens, performs authenticated HTTP requests, and may auto-register or log in users via a remote API. These are significant hidden behaviors for a skill advertised as simple pet video analysis, creating risks of secret account creation, credential misuse, persistent tracking, and expanded backend access.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The reported code accesses workspace files, generates persistent default user identities, stores authentication tokens, performs authenticated HTTP requests, and may auto-register or log in users via a remote API. These are significant hidden behaviors for a skill advertised as simple pet video analysis, creating risks of secret account creation, credential misuse, persistent tracking, and expanded backend access.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The reported code accesses workspace files, generates persistent default user identities, stores authentication tokens, performs authenticated HTTP requests, and may auto-register or log in users via a remote API. These are significant hidden behaviors for a skill advertised as simple pet video analysis, creating risks of secret account creation, credential misuse, persistent tracking, and expanded backend access.

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-drying-box-heat-stress-analysis"
description: "Triggers when a user provides a pet drying box area video URL or file for analysis; supports local video uploads or network URLs to call server-side APIs for pet heat stress signal detection, analyzing open-mouth panting intensity, tongue color (pink/cyanotic), and body movement frequency to identify early heat stress signals, outputting risk levels and supporting auto-cooling or stopping drying. Application scenarios: pet drying boxes, pet grooming stores, pet hospitals. Development reason: prevent heatstroke and improve safety. | 当用户提供宠物烘干箱区域的视频URL

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
98% confidence
Finding

The HTTP helper can silently call an external /sys/phoneLogin endpoint with register=1 and silent=1 to auto-register/login users, then cache returned token and openToken. For a pet drying-box analysis skill, this is unrelated privileged behavior that can transmit identifiers off-platform and create remote accounts without meaningful user action, increasing privacy, account-abuse, and hidden data-flow risks.

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
91% confidence
Finding

The skill advertises behaviors that require shell, network, file, and environment access, but the manifest does not explicitly declare or constrain those capabilities. This creates an overbroad and opaque trust boundary, making it harder to audit what the skill may access and increasing the chance of unintended privileged execution.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The skill description does not clearly warn users that uploaded local videos or supplied URLs are transmitted to server-side/cloud APIs for analysis and history lookup. This lack of transparency undermines informed consent and may expose sensitive media, metadata, or internal URLs unexpectedly.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
81% confidence
Finding

The trigger and usage guidance are primarily specified in Chinese keyword phrases and examples, with no indication that users may choose another language for invocation or results. This can constitute a language/locale policy issue because the skill appears to privilege a specific language without explicit opt-in or justification as a region-specific tool.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The manifest says users can provide local files or network URLs and that the skill calls server-side APIs for analysis. However, analyze_video accepts api_url, api_key, and output_level but does not use them, instead collapsing input to input_path or url and calling skill.get_output_analysis(input_path) unconditionally. This creates a semantic mismatch between the advertised configurable API-based behavior and the actual implementation exposed here.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

The tool performs identity resolution through a hidden --open-id parameter and suppresses it from help output, reducing transparency around how user identity is selected. In a skill that can retrieve prior analysis lists, hidden identity selection increases the risk of unauthorized access or user confusion if callers can supply or influence open_id, especially because there is no visible validation or disclosure in this entrypoint.

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

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill reads arbitrary local file contents into memory and sends them to a server-side analysis API, but this code contains no user-facing disclosure, confirmation, or consent checkpoint before exfiltration. In an agent setting, that creates a real privacy and data-handling risk because a user may provide a local path without understanding the file will be uploaded off-device.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The script accepts a local file path or remote video URL and forwards it to backend analysis via skill.get_output_analysis(...) without any user-facing notice, confirmation, or disclosure that data may be transmitted off-device. In this skill’s context, videos from pet drying boxes may contain sensitive operational footage, customer environments, or network-retrieved content, so silent transmission creates a real privacy and data-handling risk even if the functionality is intended.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
92% confidence
Finding

This service exposes broad generic HTTP and CRUD wrappers (GET/POST/PUT/DELETE, add/edit/delete/list/page) that are not constrained to the declared pet heat-stress video analysis purpose. In a skill that should only submit video inputs to specific analysis endpoints, these primitives enlarge the attack surface and can be repurposed to access or modify unrelated backend resources if other parts of the skill pass attacker-controlled URLs or parameters.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The username lookup capability is unrelated to pet drying box video analysis and introduces unnecessary access to identity-related functionality. Even if harmless in isolation, surplus account-lookup features can enable user enumeration, privacy exposure, or chaining with other overbroad API methods in a context that should only process media for heat-stress detection.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

This code opens a SQLite database, creates tables, and performs schema-altering migrations automatically during DAO initialization. Although comments describe the behavior for developers, there is no user-facing disclosure, confirmation, or warning before modifying persistent local data.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The file implements generic local user/account persistence unrelated to the declared pet drying-box heat-stress video analysis purpose. This kind of capability expansion increases the data-collection and attack surface of the skill, especially when coupled with token storage and record mutation methods that are not necessary for the advertised function.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
87% confidence
Finding

The delete method permanently removes a database record and commits the change immediately. The method has an internal docstring, but no visible confirmation prompt, user disclosure, or external documentation warning about this destructive operation.

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