Back to skill

Security audit

Data Analyst Chinese Free

Security checks for vulnerabilities and agentic risk

Overview

This is a coherent Chinese data-analysis helper with expected local analysis and reporting capabilities, but users should be deliberate about package installs and any optional API or callback use.

Install and use this skill for Chinese-language data analysis when you are comfortable letting the agent read datasets and run Python in the workspace. Use a virtual environment with pinned dependencies where possible, review any generated files before overwriting originals, and only provide API URLs, callback URLs, or credentials when you explicitly intend data to leave the local environment.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • 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
Findings (1)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:343
Finding

Unpinned Third-Party Dependencies Installed from Unrestricted Package Sources

Content
View full analysis

Vulnerability Details

File Location: SKILL.md, lines 343–349
Vulnerability Type: Unpinned and unverifiable third-party dependencies
Risk Level: Medium

Vulnerable Code Snippet:

markdown
| pandas | Python library | Required | `pip install pandas` |
| numpy | Python library | Required | `pip install numpy` |
| matplotlib | Python library | Optional | `pip install matplotlib` (visualization) |
| seaborn | Python library | Optional | `pip install seaborn` (advanced visualization) |
| openpyxl | Python library | Optional | `pip install openpyxl` (Excel read/write) |
| tabulate | Python library | Optional | `pip install tabulate` (Markdown tables) |

Technical Analysis

The Skill directs users or agents to install third-party Python packages without specifying reviewed versions, cryptographic hashes, a lockfile, or an approved package index. Consequently, each installation resolves whichever package release and transitive dependencies are available from the configured index at execution time.

Python package installation may execute package build hooks or other installer-controlled code with the privileges of the user running pip. If an upstream package release, transitive dependency, configured package index, or package-distribution account is compromised, malicious code could execute during installation or later when the package is imported.

The package names are consistent with the Skill's stated data-analysis purpose. There is no evidence in the reviewed project of deliberate typosquatting, dependency confusion, or a presently malicious package. The risk arises from the mutable and unverifiable dependency installation process.

Attack Path

  1. A user or agent loads the Skill and follows its dependency installation instructions.
  2. The agent executes an unpinned command such as pip install pandas.
  3. pip queries its configured package source and resolves the latest compatible packag ...[truncated 1088 chars]
Remediation
View remediation

Remediation Suggestions

  1. Define all direct dependencies in a version-controlled requirements or lock file using exact, reviewed versions.
  2. Pin transitive dependencies through a reproducible locking tool such as pip-tools, Poetry, or an equivalent approved dependency manager.
  3. Record and verify cryptographic hashes for every downloaded artifact; for pip, use a hash-locked requirements file with --require-hashes.
  4. Require installation from an explicitly approved HTTPS package index rather than relying on ambient or user-controlled index configuration.
  5. Install dependencies inside an isolated virtual environment or container under a non-privileged account.
  6. Disable unnecessary build isolation or source builds where organizational policy requires vetted binary artifacts only.
  7. Continuously scan locked dependencies for known vulnerabilities and review dependency updates before changing the lock file.
  8. Replace the documented free-form installation commands with a single reproducible installation command referencing the reviewed lock file.
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Behavioral ASTexec() Call, eval() Call, Dynamic Import
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (7)

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
90% confidence
Finding

The skill advertises create/query/export operations and declares write-capable plus exec-capable tools, but it does not provide clear safety boundaries around file modification, export destinations, or destructive actions. In a data-analysis context, this is more dangerous because users may supply sensitive business datasets, and the skill could write transformed data, reports, or exports to unintended locations or combine local analysis with outbound transmission.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The description states that all code templates are preset with Chinese fonts and Chinese titles, and later instructs users to describe tasks directly in Chinese. This imposes a language/locale preference without an opt-in choice, which matches the policy concern for forced language behavior.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

Although the free version claims limits on deep external integrations, the examples still normalize external API-based ingestion as built-in behavior. That inconsistency can mislead reviewers and users about the real trust boundary, increasing the chance that sensitive business data is mixed with or sent to external systems without adequate scrutiny.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
85% confidence
Finding

Although the free version claims limits on deep external integrations, the examples still normalize external API-based ingestion as built-in behavior. That inconsistency can mislead reviewers and users about the real trust boundary, increasing the chance that sensitive business data is mixed with or sent to external systems without adequate scrutiny.

Content

No source excerpt is available for this finding.

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The activation text says to use the skill whenever data analysis, report generation, statistical insights, or visualization are needed. These are very broad, everyday task descriptions without specific trigger phrases, constraints, or negative examples, which can cause unintended invocation overlap with many other skills.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The usage section explicitly tells users to describe tasks directly in Chinese, which is a mandatory language instruction rather than a default preference. No alternative language option or opt-in is provided, so this is a natural-language policy violation under the language/locale rule.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Low
Category
Not specified by scanner
Confidence
97% confidence
Finding

Line L348 states the skill requires no additional API key, but L349 immediately describes connecting to external APIs with user-provided credentials through environment variables. That is an active contradiction in the documentation about whether credentialed external API access is part of expected behavior.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.