T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:27- Finding
Unverified Remote Installer Scripts Executed Directly by the Shell
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill has a coherent desktop-pet purpose, but it asks agents to run remote installer scripts and install an invisible hook-based background runner, which needs user review before installation.
Install only if you trust DeskPeto's service and are comfortable with a remote installer changing AI-tool settings and running an invisible background process. Prefer the manual zip install for static pet assets where possible, avoid pasting reusable tokens into chat or URLs, and review or back up host configuration before allowing hook changes.
SKILL.md:27Unverified Remote Installer Scripts Executed Directly by the Shell
SKILL.md:42Unaudited Background Runner Modifies AI-Tool Hooks
references/pet-page.html:6Remote MCP Values Are Inserted into Executable HTML Without Contextual Escaping
SKILL.md:70Bearer Token Storage and Query-String Authentication Can Leak Credentials
This duplicate finding captures the same unsafe shell-piping behavior for the pet installer. The surrounding context makes it more dangerous because the skill normalizes the practice as 'recommended' and says the user may hand the command to the agent for direct execution, reducing opportunities for human review.
4. **等待成品**:动作图集与质检完成后,宠物页提供下载与安装入口。
5. **安装**(三选一):
- **一键命令(推荐)**:宠物页上有现成命令,用户复制给你后可直接代为执行:
- macOS/Linux:`curl -fsSL 'https://api.deskpeto.com/v1/install/…?t=…' | sh`
- Windows PowerShell:`irm 'https://api.deskpeto.com/v1/install/….ps1?t=…' | iex`
- 命令把 `pet.json` 与 `spritesheet.webp` 装进 `~/.codex/pets/<宠物目录>/`。**命令 1 小时过期**,过期让用户回宠物页重新复制。
- **手动**:下载 zip → 解压 → 整个文件夹放入 `~/.codex/pets/`(Windows:`%USERPROFILE%\.codex\pets\`)。
This duplicate finding captures the same unsafe shell-piping behavior for the pet installer. The surrounding context makes it more dangerous because the skill normalizes the practice as 'recommended' and says the user may hand the command to the agent for direct execution, reducing opportunities for human review.
4. **等待成品**:动作图集与质检完成后,宠物页提供下载与安装入口。
5. **安装**(三选一):
- **一键命令(推荐)**:宠物页上有现成命令,用户复制给你后可直接代为执行:
- macOS/Linux:`curl -fsSL 'https://api.deskpeto.com/v1/install/...?t=...' | sh`
- Windows PowerShell:`irm 'https://api.deskpeto.com/v1/install/....ps1?t=...' | iex`
- 命令把 `pet.json` 与 `spritesheet.webp` 装进 `~/.codex/pets/<宠物目录>/`。**命令 1 小时过期**,过期让用户回宠物页重新复制。
- **手动**:下载 zip → 解压 → 整个文件夹放入 `~/.codex/pets/`(Windows:`%USERPROFILE%\.codex\pets\`)。
This is the most dangerous finding because the fetched script not only executes arbitrary code but also installs a background runner, modifies settings.json, and hooks into AI desktop tools. If the remote installer is malicious or compromised, it can establish persistence, tamper with host tooling, and potentially observe or influence future agent activity on the desktop.
**安装前先向用户说明并征得同意再执行**(这条命令会下载并运行一个程序、并修改 AI 工具的 `settings.json`):
- macOS / Linux:`curl -fsSL https://api.deskpeto.com/v1/runner/install | sh`
- Windows PowerShell:`irm https://api.deskpeto.com/v1/runner/install.ps1 | iex`
命令做三件事:把对应平台的 runner 下到 `~/.deskpeto/bin/` → 自动接线 hooks → 启动。装好后让用户**完全退出并重开** AI 工具(多数宿主仅启动时加载 hooks),桌宠即随任务切换动作(工作中 / 等待输入 / 完成 / 失败)。
This line instructs the agent to retrieve installation content from an external service and execute the resulting install flow on the user's machine. Even though the stated purpose is legitimate, fetching installer content from a remote endpoint introduces a trust boundary where compromised infrastructure, token leakage, or malicious server responses could lead to unintended code or file delivery.
4. **等待成品**:动作图集与质检完成后,宠物页提供下载与安装入口。
5. **安装**(三选一):
- **一键命令(推荐)**:宠物页上有现成命令,用户复制给你后可直接代为执行:
- macOS/Linux:`curl -fsSL 'https://api.deskpeto.com/v1/install/…?t=…' | sh`
- Windows PowerShell:`irm 'https://api.deskpeto.com/v1/install/….ps1?t=…' | iex`
- 命令把 `pet.json` 与 `spritesheet.webp` 装进 `~/.codex/pets/<宠物目录>/`。**命令 1 小时过期**,过期让用户回宠物页重新复制。
- **手动**:下载 zip → 解压 → 整个文件夹放入 `~/.codex/pets/`(Windows:`%USERPROFILE%\.codex\pets\`)。
The Windows variant similarly depends on downloading installation content from a remote DeskPeto endpoint and executing it locally. Any compromise of the endpoint, transport assumptions, or install token handling could expose the user to malicious payload delivery or unauthorized modification of local files.
5. **安装**(三选一):
- **一键命令(推荐)**:宠物页上有现成命令,用户复制给你后可直接代为执行:
- macOS/Linux:`curl -fsSL 'https://api.deskpeto.com/v1/install/…?t=…' | sh`
- Windows PowerShell:`irm 'https://api.deskpeto.com/v1/install/….ps1?t=…' | iex`
- 命令把 `pet.json` 与 `spritesheet.webp` 装进 `~/.codex/pets/<宠物目录>/`。**命令 1 小时过期**,过期让用户回宠物页重新复制。
- **手动**:下载 zip → 解压 → 整个文件夹放入 `~/.codex/pets/`(Windows:`%USERPROFILE%\.codex\pets\`)。
- **其他 AI 工具**:经开源 Runner「clawd-on-desk」导入同一个 zip,可在 Claude Code、CodeBuddy 等多种工具旁显示(第三方项目,以其自身文档为准)。
This runner installation flow downloads and runs a program from an external endpoint, then modifies local AI tool configuration and starts a background process. In this context the skill is not merely linking to a site; it is encouraging privileged system changes and persistent execution, which materially increases the risk if the remote endpoint or script is ever abused.
**安装前先向用户说明并征得同意再执行**(这条命令会下载并运行一个程序、并修改 AI 工具的 `settings.json`):
- macOS / Linux:`curl -fsSL https://api.deskpeto.com/v1/runner/install | sh`
- Windows PowerShell:`irm https://api.deskpeto.com/v1/runner/install.ps1 | iex`
命令做三件事:把对应平台的 runner 下到 `~/.deskpeto/bin/` → 自动接线 hooks → 启动。装好后让用户**完全退出并重开** AI 工具(多数宿主仅启动时加载 hooks),桌宠即随任务切换动作(工作中 / 等待输入 / 完成 / 失败)。
The PowerShell variant performs the same risky pattern on Windows by fetching remote code and executing it while altering settings and launching a resident runner. Because it establishes persistence-like behavior and hook integration, exploitation could lead to ongoing unauthorized monitoring or code execution under the user's account.
**安装前先向用户说明并征得同意再执行**(这条命令会下载并运行一个程序、并修改 AI 工具的 `settings.json`):
- macOS / Linux:`curl -fsSL https://api.deskpeto.com/v1/runner/install | sh`
- Windows PowerShell:`irm https://api.deskpeto.com/v1/runner/install.ps1 | iex`
命令做三件事:把对应平台的 runner 下到 `~/.deskpeto/bin/` → 自动接线 hooks → 启动。装好后让用户**完全退出并重开** AI 工具(多数宿主仅启动时加载 hooks),桌宠即随任务切换动作(工作中 / 等待输入 / 完成 / 失败)。
The invocation description says to use the skill when the user says several Chinese trigger phrases, with only the English product description appended afterward. This creates a language-specific activation policy without stating that other languages are equally supported or that the Chinese-only trigger list is merely illustrative.
The HTML root sets lang="zh-CN", and the visible UI text throughout the page is also fixed in Simplified Chinese. For this file type, policy review should flag language constraints when the skill does not provide user opt-in or explain why a single locale is required.
No suspicious patterns detected.