Back to skill

Security audit

Alibabacloud Find Skills

Security checks for vulnerabilities and agentic risk

Overview

The skill is mainly a catalog search helper, but its install path can globally add agent skills through unpinned npx commands while skipping confirmation.

Use this skill for searching only after sanitizing search phrases. Do not paste secrets, customer names, access keys, incident details, or internal identifiers into search queries. Review any selected skill before installing it, prefer pinned installer versions and project-local installation, and avoid the documented global -g -y command unless you intentionally want a persistent global agent change.

Vulnerability Patterns
  • Insecure DependenciesIntroduces malicious components through unsafe dependency sources
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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
Findings (2)

T08 · Insecure Dependencies

Warning
Location
SKILL.md:203
Finding

Unpinned Third-Party Packages Are Executed Through npx

Content
View full analysis
Agent client to install for (see references/npx-skills-agents.md) # -g Install globally (home dir); omit for project-local install # -y Skip confirmation (requires --agent and -g/-local to be set) npx skills add aliyun/alibabacloud-aiops-skills \ --skill \ --full-depth \ --agent qwen-code \ -g -y # Option B: Using npx clawhub install (OpenClaw ecosystem) npx clawhub install ``` ### Technical Analysis The installation workflow invokes the `skills` and `clawhub` packages through `npx` without specifying reviewed package versions or integrity hashes. If the packages are not already available locally, `npx` can retrieve their current versions from the configured package registry and execute them immediately. The effective executable code can therefore change after this skill has been audited. The first command compounds the risk by using `-g -y`, which requests a global installation and suppresses the package's confirmation prompt. Although `SKILL.md` states that installation should occur only when the user requests it, user consent does not establish the integrity of the package version retrieved at execution time. The audited project does not itself contain malicious scripts. The vulnerability is the unpinned trust relationship with externally maintained packages and their transitive dependencies. ### Attack Path 1. A user asks the agent to install or use a selected skill. 2. The ag ...[truncated 1617 chars]
Remediation
View remediation
add aliyun/alibabacloud-aiops-skills ... ``` Apply equivalent version pinning to `clawhub`. 2. Verify package integrity using a trusted lockfile, package-manager integrity metadata, or independently published checksums. 3. Prefer project-local installation. Do not use `-g` unless the user specifically requests a global installation and understands its broader scope. 4. Do not use unattended `-y` installation by default. Immediately before execution, show the user: - Exact package and version. - Registry or source repository. - Selected skill name. - Installation destination. - Whether installation is local or global. 5. Require explicit confirmation after presenting the final command, even if the earlier user request generally mentioned installation. 6. Run installation in a restricted environment with minimal filesystem, credential, and network access where supported. 7. Verify the installed files and package provenance before loading the new skill into an agent session. ]]>

T09 · Insecure Skill Coding Practices

Note
Location
SKILL.md:133
Finding

Potentially Sensitive User Intent Is Sent to an External Semantic Search API

Content
View full analysis
' \ --data-urlencode 'searchMode=semantic' \ --data-urlencode 'maxResults=20' \ -H 'User-Agent: AlibabaCloud-Agent-Skills/alibabacloud-find-skills' \ ``` The surrounding instructions encourage using the user's full intent: ```text Because searchMode=semantic matches Skill descriptions, prefer the user's intent when available. ``` ### Technical Analysis Semantic catalog search legitimately requires a search term, and the project transparently declares the destination as `https://agentexplorer.aliyuncs.com`. The request uses HTTPS, URL encoding, fixed headers, and a fixed host. No authorization credentials are added to the request. However, the instructions permit or encourage copying a user's complete intent into the `keyword` query parameter without imposing a mandatory secret-detection, redaction, or user-confirmation step. User requests may contain customer names, internal project identifiers, private policy names, incident details, credentials, access tokens, or other confidential context that is unnecessary for finding a general-purpose skill. Because the search term is placed in a URL query parameter, it may be retained in application, proxy, gateway, observability, or security logs even though transport is encrypted. The behavior is necessary at a high level, but sending the full unfiltered request can exceed the minimum data required for skill discovery. The flagged `nextToken` behavior at `SKILL.md:152-156`, ` ...[truncated 1664 chars]
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
Findings (21)

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger list includes very broad phrases such as general references to Alibaba Cloud, which may cause the skill to auto-activate for unrelated conversations. Because this skill can progress from discovery to installation guidance, overbroad activation increases the chance of unnecessary network access or steering users toward environment-modifying actions.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The skill is presented primarily as a search/discovery tool but also includes environment-modifying installation commands. This scope creep is dangerous because users or calling agents may grant it read-only trust assumptions, then unexpectedly execute commands that change the local system or install additional code.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
91% confidence
Finding

The skill includes installation behavior but does not provide a strong, front-loaded warning that running those commands installs packages and changes the local environment. Users may reasonably assume the skill is informational and underestimate the risk of package-manager execution.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding

The skill instructs use of npx skills add without pinning an exact package version, so execution depends on whatever package version is currently served by the registry at runtime. That creates a supply-chain risk: a compromised latest release or dependency could execute arbitrary code on the host during installation.

Content

No source excerpt is available for this finding.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
95% confidence
Finding

The recommendation to use -y to skip confirmation promotes autonomous execution of an environment-changing install command. Removing the confirmation barrier increases the risk that an agent or user will install code without adequately reviewing package identity, scope, or side effects.

Content

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

md
# Recommended: use non-interactive mode to avoid blocking.
#   --agent <client>   Agent client to install for (see references/npx-skills-agents.md)
#   -g                 Install globally (home dir); omit for project-local install
#   -y                 Skip confirmation (requires --agent and -g/-local to be set)
npx skills add aliyun/alibabacloud-aiops-skills \
  --skill <skill-name> \
  --full-depth \

Rp1

Medium
Category
MCP Rug Pull
Confidence
92% confidence
Finding

This instance again directs execution of npx skills without version pinning, now paired with non-interactive installation flags. Unpinned package execution allows registry-side changes to alter what code runs, increasing the chance of silent arbitrary code execution if the package or one of its dependencies is hijacked.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
90% confidence
Finding

npx clawhub install is an unpinned runtime package execution path. Because npx may fetch and execute the latest package from a remote registry, an attacker who compromises the package, publisher, or dependency chain could gain code execution on the local machine.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
88% confidence
Finding

This repeated reference reinforces an unpinned npx clawhub install path, which exposes users to mutable upstream code execution. In a skill file, such commands are especially risky because users may trust the workflow and run them without independently validating package provenance.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The document claims the skill is read-only and creates no resources, but elsewhere instructs package installation commands that modify the host environment. That contradiction can mislead users, reviewers, or automated policy systems into permitting a skill that actually performs state-changing actions.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
86% confidence
Finding

The reference documentation line mentioning npx skills add still normalizes use of an unpinned package manager command. Even though it is not itself an executable step, it encourages a workflow where runtime package resolution can be changed by an attacker upstream.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
70% confidence
Finding

npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
70% confidence
Finding

npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
70% confidence
Finding

npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The install workflow provides a command that performs system-changing package/skill installation (-g -y) but does not warn the user that it will modify their environment or encourage review before execution. In a discovery-oriented skill, this increases the chance of unreviewed installation and accidental trust of remote content, especially when combined with the unpinned npx invocation.

Content

No source excerpt is available for this finding.

Rp1

Medium
Category
MCP Rug Pull
Confidence
91% confidence
Finding

The verification document instructs users to run npx skills add ... without pinning the skills package version. Because npx will resolve and execute the latest matching package, the behavior can change over time or execute a compromised upstream release, creating a supply-chain execution risk on the user's machine.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
72% confidence
Finding

The document presents keyword=把本地文件同步到 OSS as the canonical intent-search example, which implicitly privileges a specific language in the skill guidance. There is no surrounding note that users may search in their preferred language or that the Chinese example is only illustrative.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
78% confidence
Finding

This markdown file documents a command that installs a skill package via npx skills add, which changes the user's environment, and the document also contains multiple live curl examples that contact external services. While the file explains when installation should occur, it does not include a clear caution that running these commands will perform network activity and may modify the local agent setup.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
85% confidence
Finding

The response examples include Chinese display names and descriptions, and the intent-search example later uses a Chinese phrase, but the document does not state that the API is region-specific or that language is user-selectable. This can imply a fixed language/locale expectation without opt-in, which falls under the language/locale policy check.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
92% confidence
Finding

The only full intent-phrase example is written in Chinese, with no accompanying statement that other languages are supported or that this skill is intended only for a Chinese-language context. That creates a natural-language locale bias not documented as optional or justified.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
93% confidence
Finding

The examples instruct sending raw user search phrases directly to an external Alibaba Cloud API, but provide no warning that those phrases may contain sensitive operational details, internal project names, or other confidential data. In a skill-discovery context this is not inherently malicious, but it can cause unintended data disclosure if users search with private information.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
77% confidence
Finding

Example 3 presents a Chinese user request and uses it directly as the search phrase, but the file does not state whether multiple languages are supported or whether a specific locale/language behavior is intended. Because policy checks apply to natural-language content, this can be read as a locale-specific behavior without explicit user choice or justification.

Content

No source excerpt is available for this finding.

Static analysis

No suspicious patterns detected.