T08 · Insecure Dependencies
- Location
reference/setup-postgres-mcp/setup-postgres-mcp.md:74- Finding
Mutable and Unpinned Third-Party Components Can Change After Review
- Content
View full analysis
- Remediation
View remediation
\ "${DATABASE_URL}" ``` 2. Pin exact Python package versions and use hash verification: ```text postgres-mcp== --hash=sha256: uv== --hash=sha256: ``` Install with a locked requirements file and require hashes. 3. For source installations, check out a specific reviewed commit or signed tag: ```bash git clone https://github.com/crystaldba/postgres-mcp.git cd postgres-mcp git checkout --detach git verify-commit ``` 4. Publish the expected package versions, image digests, checksums, and signing identities in the setup guide. 5. Use signature or provenance verification where supported, such as Sigstore/Cosign for container images and trusted package-index verification for Python packages. 6. Run the service with a dedicated least-privilege database role, preferably read-only unless write access is explicitly required. 7. Re-review and intentionally update all pinned artifacts through a controlled dependency-update process. ]]>
