T03 · Remote Payload Retrieval and Execution
- Location
scripts/ensure_whisper_cpp.sh:62- Finding
Mutable Remote Source Is Retrieved, Built, and Executed
- Content
View full analysis
/dev/null 2>&1 && command -v cmake >/dev/null 2>&1; then REPO_DIR="${SRC_DIR}/whisper.cpp" if [[ ! -d "${REPO_DIR}" ]]; then retry_command 5 git clone --depth=1 https://github.com/ggml-org/whisper.cpp.git "${REPO_DIR}" || true fi if [[ -d "${REPO_DIR}/.git" ]]; then retry_command 3 git -C "${REPO_DIR}" fetch --depth=1 origin || true fi if [[ -d "${REPO_DIR}" ]]; then retry_command 3 cmake -S "${REPO_DIR}" -B "${REPO_DIR}/build" -DWHISPER_BUILD_TESTS=OFF -DWHISPER_BUILD_EXAMPLES=ON >/dev/null || true retry_command 3 cmake --build "${REPO_DIR}/build" --config Release --target whisper-cli -j 4 >/dev/null || true fi ``` ### Technical Analysis The provisioning script clones the current default branch of an external GitHub repository and builds it locally. Neither the clone nor the subsequent fetch is pinned to an audited commit, immutable release tag, or cryptographically verified source archive. Because the effective source payload can change after this Skill package has been reviewed, execution is determined partly by mutable external state. CMake configuration and compilation can execute repository-controlled build logic, including CMake scripts and compiler tooling. The resulting `whisper-cli` binary is later invoked by `scripts/run_whisper_cpp.sh`. TLS protects transport in ordinary conditions but does not establish that the downloaded revision is the specific revision reviewed by the Skill author. ### Attack Path 1. An attacker compromises the upstream repository, a maintainer account, or its release workflow, or otherwise causes malicious source to appear on the fetched default branch. 2. A user invokes the bootstrap or transcription workflow on a system without a usable local `whisper-cli`. 3 ...[truncated 768 chars]- Remediation
View remediation
