Back to skill

Security audit

zhongcao-cover-maker

Security checks across malware telemetry and agentic risk

Overview

The skill is mostly coherent for Beatra image generation, but it asks for a broad shared account token and silently updates its own files by default.

Install only if you are comfortable granting a shared Beatra device token with spending and multiple media-generation scopes, and with the package updating itself during normal use. Disable automatic updates with `python3 scripts/mcp_client.py update --auto off` if you want review before code changes. Paid image generation and Xiaohongshu lookups are designed to require explicit confirmation before each charged call.

SkillSpector

By NVIDIA
Vulnerability Patterns
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Rogue AgentSelf-Modification, Session Persistence
  • 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
Findings (15)

Lp3

Medium
Category
MCP Least Privilege
Confidence
94% confidence
Finding
The skill documentation directs use of local scripts with shell, file, environment, and network capabilities, yet no explicit permissions are declared to match that behavior. This weakens user awareness and enforcement boundaries, making it easier for a seemingly simple image skill to perform broader local and remote actions than its manifest suggests.

Tp4

High
Category
MCP Tool Poisoning
Confidence
97% confidence
Finding
The stated purpose is cover generation and optional Xiaohongshu research, but the skill also documents credential handling, file upload, installation management, remote tool invocation, telemetry/registration, and uninstall/state removal behaviors. That mismatch is security-relevant because users may authorize or trust the skill under a narrow mental model while it performs significantly broader and more sensitive operations.

Description-Behavior Mismatch

Medium
Confidence
92% confidence
Finding
A skill presented as a content-image generator also includes self-update and installation-management functions, which expands the trust boundary beyond the advertised purpose. Even if intended for maintenance, bundling these operations into the same skill increases the chance that users invoke or permit privileged behavior they did not expect.

Context-Inappropriate Capability

High
Confidence
95% confidence
Finding
Automatic remote self-update gives the skill the ability to change code after installation without per-update user approval. Even with integrity checks and fixed sources, this materially increases supply-chain and trust risks because the effective behavior of the skill can change over time beyond what the user originally reviewed.

Description-Behavior Mismatch

High
Confidence
98% confidence
Finding
The requested OAuth scope is far broader than the skill’s stated purpose of generating Xiaohongshu cover/post images. It includes unrelated capabilities such as wallet spending, task control, and multiple media-generation domains, so if the credential is compromised or the skill is abused, the blast radius extends well beyond image creation. The mismatch between declared functionality and requested privileges makes this more dangerous in context because users would reasonably expect a narrow image-only permission set.

Context-Inappropriate Capability

High
Confidence
97% confidence
Finding
The authorization scope includes video, music, speech, and voice permissions even though the skill is described as an image-cover generator. These extra capabilities violate least privilege and expand what an attacker or compromised skill could do with the issued token, including invoking unrelated generation services. The skill context makes this more concerning because users are unlikely to anticipate or approve audio/video capabilities when installing an image-focused tool.

Context-Inappropriate Capability

Medium
Confidence
97% confidence
Finding
The authorization scope includes video, music, speech, and voice permissions even though the skill is described as an image-cover generator. These extra capabilities violate least privilege and expand what an attacker or compromised skill could do with the issued token, including invoking unrelated generation services. The skill context makes this more concerning because users are unlikely to anticipate or approve audio/video capabilities when installing an image-focused tool.

Description-Behavior Mismatch

Medium
Confidence
90% confidence
Finding
This client implements a full remote self-update mechanism that downloads manifests and archives, verifies them, and then rewrites local package files. Even with integrity checks, this expands the skill beyond its stated cover-generation purpose into code lifecycle management, creating a supply-chain and persistence risk if the update infrastructure, signing process, or distribution account is compromised.

Description-Behavior Mismatch

Medium
Confidence
87% confidence
Finding
The code records local skill inventory and sends installation registration telemetry that is not necessary for producing covers or doing topic research. This creates unnecessary metadata collection about installed skills, install paths, platform, and usage state, which increases privacy risk and expands the blast radius if the service or local state is abused.

Context-Inappropriate Capability

Medium
Confidence
88% confidence
Finding
The skill fingerprints the host agent environment by inspecting environment variables and local host metadata to derive a platform identifier. That behavior is not justified by the stated image/cover-generation purpose and can be used for environment profiling, targeted behavior, or covert telemetry about where the skill is running.

Missing User Warnings

Medium
Confidence
90% confidence
Finding
The skill states that updates may install automatically during normal command execution, but this is not surfaced near the primary behavior summary where users decide whether to trust the skill. Hidden or de-emphasized update behavior undermines informed consent and can lead users to run code that changes unexpectedly.

Missing User Warnings

Medium
Confidence
83% confidence
Finding
The manifest advertises that the skill can read Xiaohongshu notes, top comments, and an account's recent notes, but it does not clearly disclose the scope of access, whose account data may be accessed, or that this behavior is optional and consent-gated. In a social-platform research skill, opaque collection or inspection of account/content activity can expose users to privacy surprises, unauthorized scraping concerns, or unintended handling of third-party data.

Missing User Warnings

Medium
Confidence
94% confidence
Finding
The document states that the client silently checks for and automatically installs updates before ordinary commands, without separate confirmation. Even with integrity checks and rollback, unattended self-update and file replacement is system-modifying behavior that can surprise users, violate change-control expectations, and materially increase risk if the update trust chain or official source is ever compromised.

Missing User Warnings

Medium
Confidence
93% confidence
Finding
The code performs best-effort silent automatic updates on normal execution paths and can modify local installation files without a contemporaneous user warning. Silent code replacement is dangerous because it weakens user awareness and review, turning any compromise of the update channel into covert persistence or arbitrary code deployment in a tool that users invoke for unrelated creative tasks.

Self-Modification

High
Category
Rogue Agent
Content
)
    update = subparsers.add_parser(
        "update",
        help="Check, install, or configure Beatra package self-updates",
    )
    update.add_argument(
        "--check",
Confidence
94% confidence
Finding
Exposing a self-update capability in a skill client means the package can intentionally replace its own code and installation contents. In the context of a creative/image-generation skill, that is materially more dangerous because it is unrelated to the advertised function and gives the package a route to persistence and behavior changes after installation.

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

Static analysis

No suspicious patterns detected.