T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:64- Finding
Unverified Remote Installer Executed Directly by a Shell
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:5andSKILL.md:64-66; duplicated inSKILL-cn.md:5andSKILL-cn.md:59-61
Vulnerability Type: Remote payload retrieval and execution
Risk Level: HighComplete Vulnerable Code Snippets:
From
SKILL.md:5:yaml metadata: {"clawdbot":{"emoji":"📥","requires":{"bins":["curl"]},"install":"curl -fsSL https://asale.ai/dl/install.sh | sh","installAlternative":"irm https://asale.ai/dl/install.ps1 | iex","homepage":"https://asale.ai","source":"https://github.com/asale-ai/asale","author":"asale","license":"see-repo","configLocation":"~/.asale/daemon.token","apiEndpoints":["127.0.0.1:9700"]},"openclaw":{"systemPrompt":"Drive the asale daemon at 127.0.0.1:9700 with the token from ~/.asale/daemon.token. Always run buy_tools before set_buy_tool for tool openclaw. tool_processes is listing only — never signal those pids."}}From
SKILL.md:64-66:markdown - **Install**: `curl -fsSL https://asale.ai/dl/install.sh | sh` (Windows: `irm https://asale.ai/dl/install.ps1 | iex`). `asale update` re-runs the same installer.The same commands appear in the Chinese localization at
SKILL-cn.md:5andSKILL-cn.md:59-61:markdown - **安装**:`curl -fsSL https://asale.ai/dl/install.sh | sh`(Windows: `irm https://asale.ai/dl/install.ps1 | iex`)。`asale update` 会重跑同一个安装器。Technical Analysis
The Unix installation command downloads mutable content from an external URL and immediately passes it to
sh. The Windows alternative applies the same unsafe pattern by downloading a PowerShell script and executing it throughInvoke-Expression.Neither path pins an installer version, verifies a cryptographic checksum, validates a digital signature, or gives the user an opportunity to inspect the downloaded content before execution. The effective code is therefore determined by the remote server at installation time rather than by the audited Skill pack ...[truncated 2421 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove the direct
curl | shandInvoke-Expressioninstallation paths from both metadata and documentation. - Publish versioned installer artifacts through a verifiable release channel, preferably the declared official source repository.
- Download the selected artifact to a local file without executing it.
- Pin the documentation and metadata to a specific reviewed version rather than a mutable URL.
- Publish a SHA-256 digest through an independently authenticated channel and require verification before execution.
- Prefer a signed release artifact and verify its signature against a documented, pinned maintainer key.
- Allow the user to inspect the downloaded installer and require explicit confirmation before running it.
- Apply the same controls to Windows installation instead of using
Invoke-Expression. - Change
asale updateto retrieve a versioned, signed update and verify it before execution. - Document the files, services, network destinations, and permissions required by the installer, and ensure it does not request administrative privileges unless a specific operation requires them.
- Remove the direct
