Back to skill

Security audit

Byted Las Image Resample

Security checks for vulnerabilities and agentic risk

Overview

The skill performs the advertised cloud image resizing, but its setup script can automatically install an unverified remote SDK and source virtual environments outside the skill directory.

Review this skill before installing. Use only scoped, revocable LAS and Volcengine credentials, avoid sensitive images unless cloud processing is permitted, and do not run the environment initializer in directories where untrusted users can create or modify .las_venv. Prefer a version that pins and verifies the SDK wheel and asks before installing updates.

Vulnerability Patterns
  • Tool Hijacking and SpoofingModifies or replaces tools so legitimate-looking calls execute attacker logic
  • 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
Findings (3)

T08 · Insecure Dependencies

Warning
Location
scripts/env_init.sh:30
Finding

Automatic Installation of an Unverified Remote SDK Artifact

Content
View full analysis
/dev/null | grep -oE '[0-9]+\.[0-9]+\.[0-9]+' || echo "0.0.0") remote_ver=$(echo "$manifest" | jq -r '.sdk_version // "unknown"') if [ "$local_ver" = "0.0.0" ] || [ "$local_ver" != "$remote_ver" ]; then echo "📦 SDK 更新: $local_ver → $remote_ver,正在安装..." pip install --quiet --upgrade https://las-ai-cn-beijing-online.tos-cn-beijing.volces.com/operator_cards_serving/public/skills/sdk/las_sdk-0.2.0-py3-none-any.whl fi ``` ### Technical Analysis The initialization script automatically downloads and installs a Python wheel from a remote object-storage URL. Although HTTPS protects the artifact in transit, the script does not verify a cryptographic hash, package signature, or trusted release metadata before installation. The installation decision depends on a mutable remote manifest, while the actual wheel URL is separately hard-coded to version `0.2.0`. This disconnect can also cause unnecessary reinstallations whenever the manifest reports another version. More importantly, compromise of the storage account, artifact publication process, DNS/TLS trust chain, or upstream release credentials could allow a modified wheel to be delivered. Installing a Python wheel can execute package build or installation behavior and introduces executable modules and console entry points into the environment. The downloaded package therefore becomes an effective remote code-execution channel. ### Attack Path 1. An attacker compromises the remote artifact repository, its publishing credentials, or another component capable of rep ...[truncated 1062 chars]
Remediation
View remediation

T07 · Tool Hijacking and Spoofing

Warning
Location
scripts/env_init.sh:19
Finding

Unvalidated Activation of a Virtual Environment Outside the Skill Directory

Content
View full analysis
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Note
Location
scripts/generate_result.md.sh:25
Finding

Stray EOF Command Permits PATH-Based Command Execution During Result Generation

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • 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
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
Findings (19)

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The skill is presented as an image-processing utility, but it also performs remote network access, package installation, self-update, and environment initialization. That mismatch is dangerous because users may consent to harmless-seeming image resizing while the agent gains broader code execution and supply-chain exposure through downloaded manifests/SDK packages.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
99% confidence
Finding

The skill is presented as an image-processing utility, but it also performs remote network access, package installation, self-update, and environment initialization. That mismatch is dangerous because users may consent to harmless-seeming image resizing while the agent gains broader code execution and supply-chain exposure through downloaded manifests/SDK packages.

Content

No source excerpt is available for this finding.

Tp4

High
Category
MCP Tool Poisoning
Confidence
98% confidence
Finding

The skill is presented as an image-processing utility, but it also performs remote network access, package installation, self-update, and environment initialization. That mismatch is dangerous because users may consent to harmless-seeming image resizing while the agent gains broader code execution and supply-chain exposure through downloaded manifests/SDK packages.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

High
Category
Not specified by scanner
Confidence
97% confidence
Finding

The script fetches a remote manifest and, based on that result, installs or upgrades a wheel from a remote URL during environment initialization. This creates a supply-chain risk: a compromised hosting endpoint, tampered artifact, or unexpected SDK change can execute untrusted code locally, and that behavior is not necessary for a simple image-resampling skill's core purpose.

Content

No source excerpt is available for this finding.

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
93% confidence
Finding

The skill clearly instructs the agent to run shell commands (source, identify, lasutil, jq) and local scripts, but the manifest declares no explicit tool scope or allowed-tools boundary. This weakens least-privilege controls and can let a caller invoke broader shell/network behavior than a user would infer from an image-resizing skill.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The instruction requires the final reply to include a fixed Chinese disclaimer string, which imposes a specific language on user-facing output. The file does not indicate that this language requirement is optional, user-selected, or justified as a region-specific constraint for all users.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

The skill asks the agent to read and use cloud credentials (LAS_API_KEY, VOLCENGINE_ACCESS_KEY, VOLCENGINE_SECRET_KEY) and perform TOS uploads/downloads. Expanding from image resampling into credential handling and object-storage access increases the blast radius: secrets may be exposed to subprocesses, logs, or unintended storage operations, and the agent may access or move unrelated cloud data.

Content

No source excerpt is available for this finding.

Context-Inappropriate Capability

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The skill requires executing shell scripts and external tools, including sourcing an initialization script that may modify the environment and install/update software. This creates code-execution and supply-chain risk beyond the expected behavior of a simple image-resampling skill, especially if scripts or package sources are mutable.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
84% confidence
Finding

The manifest describes an image resizing/compression skill, but this API reference shows the operator accepts image_url inputs and fetches images from network locations. Network retrieval may be an implementation detail, but accepting arbitrary URLs materially adds remote-access behavior not mentioned in the manifest description.

Content

No source excerpt is available for this finding.

Description-Behavior Mismatch

Medium
Category
Not specified by scanner
Confidence
95% confidence
Finding

The manifest says the skill converts between JPEG, PNG, and TIFF, but this API reference states the output image_suffix supports only .jpg or .png. That indicates the documented implementation does not fully support the manifest's claimed TIFF conversion behavior.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
60% 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/api.md (reported line 83)May include surrounding context.

以下为直接调用 HTTP API 的完整示例。通过 lasutil CLI 调用时,data.json 只需填写 data 字段内部的内容,operator_id/operator_version 由 CLI 的 --operator-id 参数自动注入。

bash
curl --location "https://operator.las.cn-beijing.volces.com/api/v1/process" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer $LAS_API_KEY" \
--data '{

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

User-facing comments and echo messages are written exclusively in Chinese, including usage, errors, update notices, and completion output. This imposes a language choice on users without opt-in or justification, which matches the locale-policy violation criteria.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The script performs remote fetch and package installation with only a generic update message, so operators may source the script without realizing it will download and install code. Lack of clear disclosure and confirmation increases the chance of unintended code execution and weakens operational safety around dependency changes.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

This JSON file contains only Chinese prompt and output examples, which effectively prescribe a single language for interaction. Under the policy rules, language constraints should either provide user choice or be clearly documented as justified for a region-specific use case, which is not present here.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
83% confidence
Finding

This markdown file documents authenticated HTTP use with Authorization: Bearer $LAS_API_KEY and later describes sending image content via URL, TOS path, base64, or binary. It does not include any warning that user-provided images and credentials are transmitted to a remote service or any note about handling sensitive image content.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
96% confidence
Finding

The markdown content is entirely in Chinese, including the title and pricing entries, with no indication that the skill is region-specific or that users can choose another language. Under the stated policy, forcing a specific language without user opt-in is a natural-language policy violation.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
97% confidence
Finding

This shell script emits all user-facing messages in Chinese, including the description and runtime error/success output. For a general-purpose formatting check script, forcing a single language without opt-in is a natural-language locale policy issue under the stated rule.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
79% confidence
Finding

The script creates a new directory under /tmp and exports it as LAS_WORKDIR, which is a filesystem write operation. While it prints the resulting path after creation, there is no prior warning or documentation that running the script will create temporary workspace directories on the system.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The script's comments, error messages, headings, and billing notice are all hard-coded in Chinese, including the user-facing output and usage context. Under the policy, forcing a specific language without user opt-in or a clearly documented regional justification is a natural-language policy violation.

Content

No source excerpt is available for this finding.