T08 · Insecure Dependencies
- Location
SKILL.md:890- Finding
Unpinned Third-Party Security Tools and Mutable Container Image
- Content
View full analysis
- Remediation
View remediation
--hash=sha256: trufflehog== --hash=sha256: pre-commit== --hash=sha256: ``` 2. Store these constraints in a dedicated requirements file and install with hash enforcement: ```bash python -m venv .security-tools-venv . .security-tools-venv/bin/activate python -m pip install --require-hashes -r security-tools-requirements.txt ``` 3. Replace the mutable container tag with a verified immutable digest and mount the repository read-only: ```bash docker run --rm \ --network none \ -v "$(pwd):/repo:ro" \ zricethezav/gitleaks@sha256: \ detect --source /repo ``` 4. Verify package provenance, release signatures, hashes, maintainers, and source repositories before installation. 5. Run scanners in an isolated environment without cloud credentials, SSH agents, secret-bearing environment variables, or unnecessary network access. 6. Pin every pre-commit hook revision to a reviewed immutable commit SHA rather than a mutable tag. Review the generated hook configuration before running `pre-commit install`. 7. Separate tool installation from routine scanning. Installation or upgrades should require explicit approval and review, while routine scans should reuse already verified artifacts. 8. Update both `SKILL.md` and `references/git-credential-safety.md` so all examples consistently follow the skill's stated dependency-pinning policy. ]]>
