fix: [CVE-2026-0994] Add protobuf dependency (>=7.35.0)#1733
fix: [CVE-2026-0994] Add protobuf dependency (>=7.35.0)#1733edwinjosechittilappilly wants to merge 4 commits into
Conversation
Add protobuf as a direct dependency in pyproject.toml to provide required protocol buffer support. Regenerate the project's lockfile to reflect the new dependency.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
✅ Files skipped from review due to trivial changes (2)
WalkthroughAdds a runtime dependency ChangesDependency Addition
🎯 3 (Moderate) | ⏱️ ~20 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Pull request overview
This PR remediates CVE-2026-0994 by preventing resolution of vulnerable protobuf versions through an explicit dependency floor in pyproject.toml, and updates the lockfile accordingly to ensure the backend image no longer installs protobuf==7.34.1.
Changes:
- Add an explicit project dependency constraint
protobuf>=7.35.0inpyproject.toml. - Re-lock dependencies so
uv.lockresolvesprotobufto7.35.0(replacing7.34.1) and records it as a direct dependency of theopenragpackage.
Reviewed changes
Copilot reviewed 1 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| pyproject.toml | Adds protobuf>=7.35.0 to enforce a patched version during dependency resolution. |
| uv.lock | Updates the resolved protobuf package to 7.35.0 and records it in the locked dependency graph. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Summary
Pin
protobufto a patched release (>=7.35.0) to remediate CVE-2026-0994, a High-severity (CVSS 7.5) denial-of-service vulnerability flagged by the Twistlock image scan onopenrag-backend.protobufwas previously a transitive dependency pinned at7.34.1inuv.lock. This PR adds an explicit floor inpyproject.tomlso the vulnerable version can't resolve back in, and relocks.Tracking: PVR0466285 (disposition:
must_fix, due5/28/26)CVE details
protobuf7.34.1(installed)7.35.0(7.x line; scanner also lists6.33.5on the 6.x line)CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H/app/.venv/lib/python3.13/site-packages/protobuf-7.34.1.dist-infoDescription
A denial-of-service vulnerability exists in
google.protobuf.json_format.ParseDict()in Python. Themax_recursion_depthlimit can be bypassed when parsing nestedgoogle.protobuf.Anymessages. Due to missing recursion depth accounting inside the internal Any-handling logic, an attacker can supply deeply nestedAnystructures that bypass the intended recursion limit, eventually exhausting Python's recursion stack and causing aRecursionError.The CVSS vector confirms a network-reachable (
AV:N), no-auth, no-interaction flaw with availability-only impact (C:N/I:N/A:H) — no data confidentiality or integrity exposure.Changes
pyproject.toml: added explicitprotobuf>=7.35.0to project dependenciesuv.lock: relocked,protobuf7.34.1→7.35.0Test plan
uv syncresolves cleanlyopenrag-backendimage and re-run Twistlock scanSummary by CodeRabbit
(Non-behavioral internal cleanup made to request construction; no user-facing feature or API changes.)