Security: Update dependencies to patch CVEs - #2165
Conversation
Verification of the reported CVE batch (urllib3, setuptools, cryptography, Flask, PyJWT, certifi, pydantic) showed most were already fixed by existing pins in pyproject.toml, but the built image still regressed Flask and carried additional fixable findings: - playbooks/pyproject.toml: raise Flask pin ^2.0.2 -> ^3.1.3 (and python >=3.9 to match). The old <3.0.0 cap made pip downgrade Flask inside the Docker image after Poetry had already installed the patched 3.1.3, re-exposing CVE-2023-30861 / CVE-2026-27205 in shipped images. - pyproject.toml + poetry.lock: bump setuptools to >=83 (84.0.0) for CVE-2026-59890, and relock h2 4.3.0 -> 4.4.1 (+hpack 4.2.0) for GHSA-6hr6-w5qg-qmwg. - Dockerfile: install setuptools>=83 in the runtime site-packages (CVE-2026-59890) and upgrade openssl/libssl3t64/openssl-provider-legacy to 3.5.7-1~deb13u2 from trixie-security (CVE-2026-14456, CVE-2026-14457, CVE-2026-18798, CVE-2026-54874, CVE-2026-63072, CVE-2026-63075, CVE-2026-63076). Verified by building the image and scanning it (grype, DB 2026-08-30): all 14 reported CVEs plus the ones above are no longer present; no Python package findings with an available fix remain at any severity >= medium. Remaining fixable findings are in the base CPython 3.11 binary and the kubectl Go binary only. Unit tests: 370 passed (cluster-dependent tests excluded - no cluster in the build environment). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MN3VfdnF9nV541rYrpK8L6
|
✅ Docker image ready for
Use this tag to pull the image for testing. 📋 Copy commandsgcloud auth configure-docker us-central1-docker.pkg.dev
docker pull us-central1-docker.pkg.dev/robusta-development/temporary-builds/robusta-runner:942e02c
docker tag us-central1-docker.pkg.dev/robusta-development/temporary-builds/robusta-runner:942e02c me-west1-docker.pkg.dev/robusta-development/development/robusta-runner-dev:942e02c
docker push me-west1-docker.pkg.dev/robusta-development/development/robusta-runner-dev:942e02cPatch Helm values in one line: helm upgrade --install robusta robusta/robusta \
--reuse-values \
--set runner.image=me-west1-docker.pkg.dev/robusta-development/development/robusta-runner-dev:942e02c |
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (1)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (3)
Included review availability: Your plan provides up to 8 included reviews per hour; 7 remain after this review. WalkthroughThe pull request updates Docker runtime packages and raises Python dependency minimums for setuptools, Python, and Flask. Comments document the related CVE fixes and version synchronization. ChangesRuntime and dependency updates
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This PR updates dependencies and container packages to address security vulnerabilities; no actionable merge-blocking risk remains after normal checks and review. Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Full details: Docstring CoverageExplanation No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (3 skipped: 3 unsupported.) ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
The previous commit relocked with Poetry 2.3.3, which rewrote the whole file into the 2.x lock format. Regenerated with Poetry 1.8.5 (the version that produced the original lock) so the diff against master is only the intended updates: setuptools 84.0.0, h2 4.4.1, hpack 4.2.0. Resolved versions are identical to the previously verified set; the image rebuilds cleanly from this lock and all patched package versions are unchanged inside it. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MN3VfdnF9nV541rYrpK8L6
Summary
This PR updates Python dependencies across the project to address multiple security vulnerabilities (CVEs), including Flask, setuptools, and OpenSSL packages.
Key Changes
Notable Details
https://claude.ai/code/session_01MN3VfdnF9nV541rYrpK8L6