T08 · Insecure Dependencies
- Location
SKILL.md:185- Finding
Execution of an Unpinned Remote Container Image
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 185-189
Vulnerability Type: Unpinned third-party container dependency
Risk Level: MediumVulnerable Code:
powershell ### Q: 如何在 Docker 中使用? **A**: 使用官方 Docker 镜像: ```powershell docker run ghcr.io/alexsjones/llmfit --versiontext ### Technical Analysis The documented `docker run` command references `ghcr.io/alexsjones/llmfit` without an immutable digest or an explicit version tag. Docker consequently resolves the reference to the registry's default tag, normally `latest`. The content associated with that mutable tag may change after the skill has been audited. This creates a supply-chain risk because following the documentation can download and execute container code that was not part of the reviewed project. A registry-account compromise, unauthorized image replacement, or unreviewed upstream release could alter the effective payload. ### Attack Path 1. An attacker compromises the upstream registry account, publishing process, or mutable default image tag. 2. The attacker replaces or updates the referenced image with a malicious image. 3. A user follows the skill documentation and runs `docker run ghcr.io/alexsjones/llmfit --version`. 4. Docker retrieves the altered image and starts its configured entry point locally. 5. The malicious process executes with the permissions and resources granted to the container. ### Impact Assessment The altered image could execute arbitrary code within the container, consume host CPU, memory, storage, and network resources, or access any capabilities and resources exposed by the local Docker configuration. The shown command does not explicitly mount host directories, expose credentials, request privileged mode, or mount the Docker socket, which limits the direct host-access scope. Impact would increase if the environment applies permissive defaults, supplies credentials, or contains a vulnerable co ...[truncated 16 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the container to a reviewed release and immutable digest, for example:
powershell docker run --rm ghcr.io/alexsjones/llmfit:0.9.8@sha256:<verified-digest> --version - Obtain the digest from a trusted release channel and verify it independently before documenting it.
- Enable signature or provenance verification with an appropriate container verification tool.
- Use
--rmto remove the stopped container after execution. - Apply least-privilege container controls, such as a non-root user, dropped Linux capabilities, a read-only filesystem, and restricted networking where compatible.
- Establish a controlled process for reviewing and updating the pinned version and digest.
- Pin the container to a reviewed release and immutable digest, for example:
