T03 · Remote Payload Retrieval and Execution
- Location
bin/install.sh:18- Finding
Unverified Mutable Remote Payload Download and Execution
- Content
View full analysis
&2 exit 1 fi BACKUP_DIR="${INSTALL_DIR}.bak.$(date +%Y%m%d-%H%M%S)" if [[ -d "$INSTALL_DIR" ]]; then echo "Backing up existing install to: $BACKUP_DIR" mv "$INSTALL_DIR" "$BACKUP_DIR" fi echo "Installing to: $INSTALL_DIR" mkdir -p "$INSTALL_DIR" cp -R "$TOP_DIR"/* "$INSTALL_DIR"/ # Optional: build if dependencies exist if command -v pnpm >/dev/null 2>&1; then echo "pnpm found: installing deps + building (best effort)" (cd "$INSTALL_DIR" && pnpm i && pnpm -s build) || true else echo "pnpm not found: skipping build. If the plugin is not runnable, install pnpm and build manually." fi ``` ### Technical Analysis The installer queries GitHub's mutable `releases/latest` endpoint, accepts the returned `zipball_url`, and downloads and installs that archive without verifying an expected cryptographic checksum, trusted signature, immutable commit identifier, or release provenance. Consequently, the effective code installed by the skill can change after the skill itself has been reviewed. If the upstream repository, its maintainer accou ...[truncated 2555 chars]- Remediation
View remediation
