Back to skill

Security audit

Alibabacloud Odps Quota Manage

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly about Alibaba Cloud MaxCompute quota management, but it includes unsafe setup and contradictory cloud instructions that could expand permissions or create paid resources.

Review carefully before installing. Prefer a verified Aliyun CLI installation path, use a least-privilege RAM identity scoped to MaxCompute quotas, do not run the subscription quota creation examples, and treat the generated result/log files as potentially sensitive operational records.

Vulnerability Patterns
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • 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
Findings (3)

T03 · Remote Payload Retrieval and Execution

Error
Location
SKILL.md:41
Finding

Unverified Remote Installation Script Is Executed Directly by Bash

Content
View full analysis
**Pre-check: Aliyun CLI >= 3.3.3 required** > Run `aliyun version` to verify >= 3.3.3. If not installed or version too low, > run `curl -fsSL https://aliyuncli.alicdn.com/setup.sh | bash` to update, > or see [references/cli-installation-guide.md](references/cli-installation-guide.md) for installation instructions. ``` ### Technical Analysis The command pipes content downloaded from an external URL directly into Bash. The downloaded script is neither pinned to an immutable version nor verified with a cryptographic signature or published checksum before execution. Although the URL uses HTTPS and an Alibaba-associated domain, transport encryption alone does not establish that the retrieved script is immutable or safe. Compromise of the origin, CDN, DNS resolution, certificate trust chain, or release infrastructure could change the effective payload after this Skill has been reviewed. Installing the Aliyun CLI may be necessary for the declared quota-management functionality, but executing mutable network content directly is not the minimum privilege or minimum-risk installation method. ### Attack Path 1. An attacker compromises or gains control over the referenced script, its hosting infrastructure, or a relevant network trust component. 2. The remote `setup.sh` content is replaced or modified to contain attacker-controlled shell commands. 3. A user or Agent follows the Skill installation instructions. 4. `curl` retrieves the modified payload. 5. The pipe passes the payload directly to Bash without an intermediate review or integrity check. 6. The malicious commands execute with the permissions of the user running the Skill. If the remote script invokes or convinces the user to authorize privilege elevation, the impact may extend further. ### Impact Assessment ...[truncated 706 chars]
Remediation
View remediation

T05 · Unauthorized Access and Privilege Escalation

Error
Location
references/ram-policies.md:98
Finding

Executable RAM Policy Example Grants Wildcard Resource Access

Content
View full analysis
\ --user-agent AlibabaCloud-Agent-Skills/alibabacloud-odps-quota-manage ``` ### Technical Analysis The policy grants `CreateQuota`, `QueryQuota`, and `ListQuotas` against `"Resource": "*"`. This conflicts with the same document's narrower policy examples, which use: ```json "Resource": "acs:odps:*::quota/*" ``` The wildcard scope is broader than the Skill's stated requirement to manage quota resources belonging to the intended account and region. In addition, creating and attaching RAM policies requires identity-administration permissions that are not necessary for ordinary quota listing, querying, or creation. Presenting policy administration as an executable setup workflow risks combining two privilege domains: 1. MaxCompute quota-management permissions. 2. RAM policy creation and user-policy attachment permissions. This exceeds least privilege for the declared Skill functionality. ### Attack Path 1. An operator uses an Alibaba Cloud identity with permission to create and attach RAM policies. 2. The operator follows the documented CLI example. 3. A custom policy with wildcard resource scope is created. 4. The policy is attached to the selecte ...[truncated 1105 chars]
Remediation
View remediation
:quota/*" ``` 2. Where Alibaba Cloud authorization semantics permit, further constrain access by: - Account ID. - Region. - Specific quota ARN or quota naming convention. - Policy conditions applicable to the relevant API actions. 3. Separate policies by operation: - Read-only users: `QueryQuota` and `ListQuotas`. - Creation users: add `CreateQuota` only when required. 4. Remove deprecated `GetQuota` permission from policies used by this Skill unless backward compatibility is explicitly required. 5. Do not require the Skill runtime identity to create or attach RAM policies. 6. Require a cloud administrator to provision the least-privilege policy separately through an audited process. 7. If policy commands remain in the documentation: - Require explicit confirmation of the account, target username, actions, and resource ARN. - Display the final policy document before creation. - Verify the resulting policy scope after attachment. - Record the policy change in the organization's cloud audit trail. 8. Avoid recommending `AliyunMaxComputeFullAccess` for this narrowly scoped task. ]]>

T09 · Insecure Skill Coding Practices

Error
Location
references/verification-method.md:46
Finding

Verification Reference Can Create an Unsupported Charge-Incurring Subscription Quota

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Supply ChainUnpinned Dependencies, External Script Fetching, Obfuscated Code
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Rogue AgentSelf-Modification, Session Persistence
Findings (26)

External Script Fetching

High
Category
Supply Chain
Confidence
98% confidence
Finding

The skill recommends curl -fsSL ... | bash, which executes a remote script directly from the network without prior integrity verification or user review. This is a well-known unsafe pattern because compromise of the distribution endpoint, network path, or referenced script can lead to arbitrary code execution on the local system.

Content

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

md
> **Pre-check: Aliyun CLI >= 3.3.3 required**
> Run `aliyun version` to verify >= 3.3.3. If not installed or version too low,
> run `curl -fsSL https://aliyuncli.alicdn.com/setup.sh | bash` to update,
> or see [references/cli-installation-guide.md](references/cli-installation-guide.md) for installation instructions.

> **Pre-check: Aliyun CLI plugin setup required**

Vague Triggers

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The trigger phrases are broad administrative terms like 'create quota' and 'quota management', which can match ordinary support or discussion contexts and cause unintended skill invocation. In a privileged cloud-management skill, accidental activation is riskier because it can lead to real infrastructure actions or data exposure.

Content

No source excerpt is available for this finding.

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
80% confidence
Finding

Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Content

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

md
**Security: Never expose credentials**
- Don't print AK/SK values
- Don't ask user to type AK/SK in chat
- Don't use `aliyun configure set` with hardcoded values

**Check credentials:**

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
97% confidence
Finding

The skill requires creating local output and log files but does not clearly warn the user that operational data will be persisted on the local filesystem. This undermines informed consent and can surprise users in environments where local artifacts are monitored, backed up, or accessible to others.

Content

No source excerpt is available for this finding.

Ssd 3

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

Persistent logging of all actions and quota results can capture user-supplied identifiers, region information, quota nicknames, resource states, and workflow history in plain text. In shared or managed environments, these logs can become a secondary source of sensitive operational information long after the task finishes.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

This file is a general-purpose Aliyun CLI installation and administration guide, not a narrowly scoped MaxCompute quota-management reference. In an agent skill intended for ODPS quota operations, broad instructions covering ECS, FC, plugin installation, profile switching, debug use, endpoints, and unrelated service commands expand the agent's operational envelope and can enable unintended or over-privileged cloud actions.

Content

No source excerpt is available for this finding.

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · references/cli-installation-guide.md (reported line 30)May include surrounding context.

md
tar -xzf aliyun-cli-macosx-latest-amd64.tgz

# Move to PATH
sudo mv aliyun /usr/local/bin/

# Verify
aliyun version

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · references/cli-installation-guide.md (reported line 45)May include surrounding context.

md
tar -xzf aliyun-cli-macosx-latest-amd64.tgz

# Move to PATH
sudo mv aliyun /usr/local/bin/

# Verify
aliyun version

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · references/cli-installation-guide.md (reported line 58)May include surrounding context.

md
tar -xzf aliyun-cli-macosx-latest-amd64.tgz

# Move to PATH
sudo mv aliyun /usr/local/bin/

# Verify
aliyun version

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · references/cli-installation-guide.md (reported line 71)May include surrounding context.

Extract and install

tar -xzf aliyun-cli-linux-latest-arm64.tgz sudo mv aliyun /usr/local/bin/

text

### Windows

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The guide promotes non-interactive credential entry via command-line flags and environment variables without adequately warning that secrets may leak through shell history, CI logs, process listings, shared terminals, or inherited environments. In agent-driven automation, this is especially risky because credentials may be captured in transcripts or orchestration logs and then reused for cloud account access.

Content

No source excerpt is available for this finding.

Session Persistence

Medium
Category
Rogue Agent
Confidence
60% confidence
Finding

Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Content

Scanner excerpt · references/cli-installation-guide.md (reported line 118)May include surrounding context.

md
1. Log in to Aliyun Console: https://ram.console.aliyun.com/
2. Navigate to: AccessKey Management
3. Create a new AccessKey pair
4. Save the secret immediately — it's only shown once

### Configuration Modes

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
86% confidence
Finding

Recommending --log-level=debug without caution can expose request metadata, credential-provider behavior, endpoints, and possibly sensitive authentication context in logs. In automated agent environments, debug output is commonly persisted centrally, making accidental disclosure easier and longer-lived.

Content

No source excerpt is available for this finding.

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
80% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · references/cli-installation-guide.md (reported line 404)May include surrounding context.

bash
# Restrict permissions
chmod 600 ~/.aliyun/config.json

Troubleshooting

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The 'Next Steps' section explicitly encourages installation and exploration of unrelated Alibaba Cloud product plugins such as ECS, VPC, RDS, and FC. For a quota-management skill, this materially broadens accessible capabilities beyond the declared purpose, increasing the chance of misuse, accidental lateral expansion, or prompt-induced execution against other cloud services.

Content

No source excerpt is available for this finding.

Intent-Code Divergence

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The document recommends least privilege and shows scoped resource ARNs in the main policy examples, but the CLI example creates a custom policy with "Resource": "*". That inconsistency can cause operators to copy and deploy broader-than-necessary permissions, increasing blast radius if the principal is compromised or misused.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Documentation Links

- [CreateQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/CreateQuota)
- [GetQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/GetQuota)
- [ListQuotas API](https://api.aliyun.com/api/MaxCompute/2022-01-04/ListQuotas)
- [MaxCompute API Overview](https://api.aliyun.com/product/MaxCompute)

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Documentation Links

- [CreateQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/CreateQuota)
- [GetQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/GetQuota)
- [ListQuotas API](https://api.aliyun.com/api/MaxCompute/2022-01-04/ListQuotas)
- [MaxCompute API Overview](https://api.aliyun.com/product/MaxCompute)

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Documentation Links

- [CreateQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/CreateQuota)
- [GetQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/GetQuota)
- [ListQuotas API](https://api.aliyun.com/api/MaxCompute/2022-01-04/ListQuotas)
- [MaxCompute API Overview](https://api.aliyun.com/product/MaxCompute)

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

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

md
## API Documentation Links

- [CreateQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/CreateQuota)
- [GetQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/GetQuota)
- [ListQuotas API](https://api.aliyun.com/api/MaxCompute/2022-01-04/ListQuotas)
- [MaxCompute API Overview](https://api.aliyun.com/product/MaxCompute)

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · references/related-apis.md (reported line 182)May include surrounding context.

md
## API Documentation Links

- [CreateQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/CreateQuota)
- [GetQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/GetQuota)
- [ListQuotas API](https://api.aliyun.com/api/MaxCompute/2022-01-04/ListQuotas)
- [MaxCompute API Overview](https://api.aliyun.com/product/MaxCompute)

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · references/related-apis.md (reported line 183)May include surrounding context.

md
## API Documentation Links

- [CreateQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/CreateQuota)
- [GetQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/GetQuota)
- [ListQuotas API](https://api.aliyun.com/api/MaxCompute/2022-01-04/ListQuotas)
- [MaxCompute API Overview](https://api.aliyun.com/product/MaxCompute)

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · references/related-apis.md (reported line 184)May include surrounding context.

md
## API Documentation Links

- [CreateQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/CreateQuota)
- [GetQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/GetQuota)
- [ListQuotas API](https://api.aliyun.com/api/MaxCompute/2022-01-04/ListQuotas)
- [MaxCompute API Overview](https://api.aliyun.com/product/MaxCompute)

External Transmission

Medium
Category
Data Exfiltration
Confidence
50% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · references/related-apis.md (reported line 185)May include surrounding context.

md
## API Documentation Links

- [CreateQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/CreateQuota)
- [GetQuota API](https://api.aliyun.com/api/MaxCompute/2022-01-04/GetQuota)
- [ListQuotas API](https://api.aliyun.com/api/MaxCompute/2022-01-04/ListQuotas)
- [MaxCompute API Overview](https://api.aliyun.com/product/MaxCompute)

Context-Inappropriate Capability

Low
Category
Not specified by scanner
Confidence
88% confidence
Finding

The skill instructs saving quota-related output files and logs without clear necessity for performing the requested cloud action. Even if the data is not credential material, quota inventory, regions, nicknames, and operational history can still be sensitive and should not be written to disk by default.

Content

No source excerpt is available for this finding.