T03 · Remote Payload Retrieval and Execution
- Location
scripts/env_init.sh:31- Finding
Unverified Remote SDK Retrieval and Automatic Execution
- 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 ``` The corresponding workflow makes this initialization mandatory: ```bash source "$(dirname "$0")/scripts/env_init.sh" las_audio_extract_and_split workdir=$LAS_WORKDIR ``` ### Technical Analysis The initialization script retrieves a remote manifest and automatically installs a Python wheel from an external URL. The wheel is not authenticated using a pinned cryptographic hash or package signature, and the reviewed project does not contain a lock file or immutable dependency record against which the downloaded artifact can be verified. Although HTTPS protects the transport connection, it does not ensure that the remotely hosted artifact remains identical to the artifact present when the skill was audited. Anyone capable of compromising the hosting account, storage object, publication process, or relevant service credentials could replace the wheel while retaining the same URL. Installing a wheel introduces an executable dependency into the environment. Its modules and command-line entry points, including `lasutil`, subsequently run with the privileges of the user or agent invokin ...[truncated 2184 chars]- Remediation
View remediation
