T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:79- Finding
Mutable Remote Installation Scripts Are Executed Without Verification
- Content
View full analysis
Vulnerability Details
File Locations:
SKILL.md:79-85README.md:29-35README-CN.md:28-34
Vulnerability Type: Remote payload retrieval and immediate execution
Risk Level: CriticalVulnerable Code:
bash # Method 2: Shell script (Linux / macOS, when npm is not available) curl -fsSL https://raw.githubusercontent.com/laiye-ai/adp-cli/main/scripts/adp-init.sh | bashbash # Method 3: PowerShell script (Windows, when npm is not available) irm https://raw.githubusercontent.com/laiye-ai/adp-cli/main/scripts/adp-init.ps1 | iexThe Chinese README contains the equivalent commands:
bash # Method 2: Shell script curl -fsSL https://raw.githubusercontent.com/laiye-ai/adp-cli/main/scripts/adp-init.sh | bashpowershell # Method 3: PowerShell script irm https://raw.githubusercontent.com/laiye-ai/adp-cli/main/scripts/adp-init.ps1 | iexTechnical Analysis
These commands retrieve scripts from an external GitHub repository and send the responses directly to command interpreters. Neither installation path saves the script for inspection nor verifies a checksum, cryptographic signature, expected content digest, or publisher provenance before execution.
The URLs refer to the mutable
mainbranch. Consequently, the effective code executed by users can change after this Skill has been reviewed. A compromise of the upstream repository, maintainer account, release process, or another relevant delivery component could replace the installer with arbitrary commands.The repository namespace and product branding are internally consistent, but that does not make direct execution of an unverified, mutable response safe. The remote installer implementations are not included in the audited project, so their behavior cannot be validated from this artifact.
Installation of an ADP client is necessary for the declared document-parsing workflow. However, pipe-to-shell executio ...[truncated 1616 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove the
curl | bashandirm | iexinstallation instructions from all three documentation files. - Pin installation artifacts to an immutable release version, commit identifier, or content digest rather than the mutable
mainbranch. - Publish SHA-256 checksums and cryptographic signatures through an independently secured channel.
- Require users to download the artifact first, verify its checksum and signature, inspect it where appropriate, and only then execute it.
- Prefer a version-pinned package-manager installation or a signed release artifact from the official release page.
- Do not allow an AI agent to install external executable code automatically. Require explicit user approval for installation and display the exact version and source.
- Run installation with ordinary user privileges unless a documented operation strictly requires elevation.
- Keep the English, Chinese, and Skill instructions synchronized so an unsafe fallback does not remain in one documentation variant.
- Remove the
