Back to skill

Security audit

Depression Behavioral Markers (Long Immobility & Appetite Change) | 抑郁症辅助行为标记(长时间不动、食欲改变)

Security checks across malware telemetry and agentic risk

Overview

This skill has a coherent health-monitoring purpose, but it processes very sensitive home-camera footage through a cloud service while silently creating/reusing identities and storing account tokens locally.

Review before installing. This skill is meant for sensitive elder-care monitoring, but using it can upload home surveillance media or media URLs to lifeemergence.com services, create or reuse an internal account identity, store access tokens in a local workspace database, and retrieve cloud-stored historical reports. Install only if the monitored person has given informed consent, the cloud provider and retention model are acceptable, and account/token storage in the workspace is acceptable.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • 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
  • Behavioral ASTexec() Call, eval() Call, Dynamic Import
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
Findings (36)

Dynamic attribute access via getattr()

Low
Category
Dangerous Code Execution
Content
if filters:
                for key, value in filters.items():
                    query = query.filter(getattr(self.__model__, key) == value)

            if offset:
                query = query.offset(offset)
Confidence
81% confidence
Finding
query = query.filter(getattr(self.__model__, key) == value)

Dynamic attribute access via getattr()

Low
Category
Dangerous Code Execution
Content
if filters:
                for key, value in filters.items():
                    query = query.filter(getattr(self.__model__, key) == value)

            return query.scalar()
        finally:
Confidence
81% confidence
Finding
query = query.filter(getattr(self.__model__, key) == value)

Lp3

Medium
Category
MCP Least Privilege
Confidence
94% confidence
Finding
The skill documentation instructs use of shell execution, network access, local file reads/writes, and implicit identity handling, yet no permissions are explicitly declared. That mismatch weakens reviewability and can cause an agent platform to invoke capabilities the user did not clearly authorize, especially given the sensitive home-surveillance context.

Description-Behavior Mismatch

Medium
Confidence
89% confidence
Finding
The skill is presented as a camera-based behavioral analysis tool, but it also includes a cloud historical-report query and report-link retrieval function that materially expands data access scope. This creates a scope gap where users may believe they are submitting one-off analysis while the skill can also enumerate prior reports tied to an internal identity.

Description-Behavior Mismatch

Low
Confidence
82% confidence
Finding
Automatically saving uploaded media locally expands the skill from transient analysis into storage/ingestion, which is significant because the inputs are highly sensitive bedroom and dining-area surveillance recordings. Local persistence increases exposure to accidental retention, unauthorized access, and mismatch with user expectations.

Intent-Code Divergence

Medium
Confidence
77% confidence
Finding
The documentation gives conflicting instructions: uploaded media should be automatically saved locally, while network URLs are said to be fetched directly by the API service without local download. This inconsistency makes actual data flow unclear, which is dangerous for sensitive surveillance media because reviewers and users cannot reliably determine where files are stored or transmitted.

Description-Behavior Mismatch

Medium
Confidence
94% confidence
Finding
The skill exposes a list-retrieval path keyed by internal open_id that is outside the stated purpose of analyzing a supplied camera video and generating a report. In a health-related context, this can enable access to prior behavioral analysis records tied to a person identity, expanding the data exposure surface and creating privacy and authorization risks if open_id resolution or access control is weak.

Context-Inappropriate Capability

Medium
Confidence
97% confidence
Finding
The code initializes and uses an internal identity capability (open_id) even though the declared function is local/video-based behavioral analysis. In a sensitive mental-health monitoring workflow, unnecessary identity linkage increases the risk of cross-user data access, hidden tracking, and exposure of highly sensitive behavioral inferences if the identity is mis-bound or attacker-controlled.

Description-Behavior Mismatch

Medium
Confidence
89% confidence
Finding
The code accepts arbitrary HTTP/HTTPS video URLs and forwards them for analysis, which expands the skill beyond the declared fixed home camera use case. In a health-monitoring context involving sensitive behavioral inference, this enables analysis of untrusted or unrelated remote content and can facilitate misuse, policy bypass, or privacy-invasive processing outside the intended scope.

Context-Inappropriate Capability

Low
Confidence
73% confidence
Finding
The skill generates report export links and exposes report-list functionality that are not necessary for the narrow purpose of detecting behavioral markers from camera footage. In a sensitive healthcare-adjacent workflow, extra report retrieval/export surfaces can increase the chance of unintended data exposure, especially if downstream authorization controls are weak or omitted elsewhere.

Description-Behavior Mismatch

Medium
Confidence
88% confidence
Finding
This file exposes broad generic network capabilities including arbitrary POST/PUT/GET/DELETE wrappers and CRUD-style helpers that are not narrowly scoped to the declared behavioral-monitoring purpose. In a privacy-sensitive camera-monitoring skill, this overbroad API surface increases the chance that other components can exfiltrate data or trigger unintended remote actions through this utility layer.

Context-Inappropriate Capability

Medium
Confidence
91% confidence
Finding
The add/edit/delete helpers support arbitrary remote modification requests without any visible restriction on destination, operation type, or business purpose. Because the skill handles highly sensitive in-home monitoring context, these mutation primitives create unnecessary capability that could be abused by surrounding code to alter remote records or services unrelated to the stated functionality.

Description-Behavior Mismatch

Medium
Confidence
95% confidence
Finding
The file defines persistent user identity storage, including usernames, real names, email, birthdays, age, and tokens, which materially exceeds the manifest's stated purpose of behavior-pattern analysis from home cameras. In a depression-monitoring context, this unnecessary identity linkage expands surveillance scope and increases the harm of data compromise or misuse.

Context-Inappropriate Capability

High
Confidence
97% confidence
Finding
The User model stores token and open_token values even though the skill description does not justify account or API credential handling. Persisting credentials in a local SQLite database for a camera-based behavioral health skill creates unnecessary credential-theft and cross-system compromise risk.

Description-Behavior Mismatch

Medium
Confidence
76% confidence
Finding
DAO initialization automatically creates and alters a local SQLite schema, establishing write-side persistence not described in the manifest's reporting/analysis behavior. In a sensitive mental-health monitoring context, silent local persistence increases privacy risk, especially when combined with identity and token storage elsewhere in the module.

Description-Behavior Mismatch

High
Confidence
98% confidence
Finding
This utility module performs remote account bootstrap, token retrieval, persistent identity handling, and authenticated API request injection, which is materially broader than the declared camera-based behavioral analysis purpose. The mismatch increases risk because users invoking a health-monitoring skill may unknowingly trigger account creation, credential storage, and outbound transmissions to external services.

Context-Inappropriate Capability

High
Confidence
99% confidence
Finding
The code silently logs in or registers a user against a remote health service using generated or recovered identifiers. For a depression-marker analysis skill, silent account creation is dangerous because it can create external identities and transmit personal linkage data without meaningful consent or functional necessity.

Context-Inappropriate Capability

Medium
Confidence
95% confidence
Finding
The HTTP helper contains embedded billing and recharge workflow messaging unrelated to the stated analysis function. This indicates hidden monetization/control flow and can steer users into installing additional skills or financial actions when API calls fail, which is inappropriate in a health-monitoring context.

Context-Inappropriate Capability

Medium
Confidence
97% confidence
Finding
The module reads an API-key-linked identifier from local files, reuses database identities, and persists generated default user IDs across runs. In a skill analyzing sensitive home-camera behavior, undocumented cross-run identity persistence expands privacy risk and can enable tracking beyond what users would reasonably expect.

Vague Triggers

Medium
Confidence
87% confidence
Finding
The default trigger condition is broad enough to auto-activate on generic home video-analysis requests, which could cause sensitive surveillance footage to be routed into this specialized cloud-backed workflow without sufficiently specific user intent. In a bedroom-monitoring skill, accidental activation materially raises privacy and consent risk.

Vague Triggers

Medium
Confidence
84% confidence
Finding
The historical-report trigger phrases are broad and include terms that could mislead users into thinking they are requesting local summaries, when the skill actually performs a cloud API query tied to internal identity. That can cause unintended disclosure of prior sensitive mental-health-related reports.

Missing User Warnings

High
Confidence
96% confidence
Finding
The skill handles extremely sensitive bedroom and dining-room surveillance footage and appears to send media or derived report operations through an API service, but the primary description does not clearly warn users about cloud transmission, retention, and privacy implications. In this context, insufficient upfront disclosure can lead to non-consensual exposure of intimate in-home data and inferred mental-health status.

Natural-Language Policy Violations

Medium
Confidence
74% confidence
Finding
Hard-coding crisis hotline numbers for one locale can misdirect users in emergencies if they are in another region, especially in a mental-health monitoring skill. While not a classic exploit vector, it is a safety vulnerability because incorrect emergency guidance can delay urgent support.

Natural-Language Policy Violations

Medium
Confidence
88% confidence
Finding
The document hardcodes Beijing and national China hotline references as part of the response behavior without stating geographic applicability or requiring locale-aware selection. In a mental-health escalation context, region-mismatched emergency or support guidance can delay access to appropriate care, especially for users outside the referenced service area.

Natural-Language Policy Violations

Medium
Confidence
93% confidence
Finding
The emergency guidance defaults to specific local hotlines and community mental-health services but does not explain cross-region limitations or provide universal emergency fallback instructions. Because this skill addresses possible depression and self-harm risk in elderly or isolated individuals, incorrect locality assumptions could misdirect urgent help-seeking and create harmful delays during a crisis.

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

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