Build: Bump Netty pin to 4.2.15.Final for Trivy fixes#16749
Conversation
|
Thanks @nssalian for the change and @stevenzwu for the review |
wombatu-kun
left a comment
There was a problem hiding this comment.
Verified the resolution mechanism rather than just the version string, since the pin is named netty-buffer while the flagged CVEs are in netty-handler / netty-resolver-dns.
The netty-buffer toml value is the forced version for the whole io.netty family through the eachDependency rule (details.useVersion(libs.versions.netty.buffer.get())), not only the netty-buffer artifact. The CVE-bearing artifacts come in transitively (AWS/Azure SDK, kafka-connect, open-api fixtures) and resolve at 4.2.14.Final per the Trivy output.
The load-bearing part here is the prefix extension, not the bump. Before this change the rule only matched version.startsWith('4.1.'), so the bundles' 4.2.14 requests were never caught and a toml-only bump to 4.2.15.Final would have left them at 4.2.14. Adding the 4.2. branch is what makes the force actually apply, so both halves of the change are needed.
LGTM, +1 (non-binding).
|
Thanks for fixing this, @nssalian. We might want to reconsider blocking PRs on CVE scan: iceberg/.github/workflows/cve-scan.yml Line 155 in 8d0aab7 The scan was originally added to prevent PRs from introducing new dependencies with active CVEs. But with the current behavior, if a new CVE is reported for an existing dependency, unrelated PRs can start failing as well. It might be better to make PR scans informational too, as long as the findings are surfaced clearly on the PR. That way, reviewers can distinguish between CVEs on existing dependencies and PRs that introduce new dependencies with active CVEs. |
Summary
Bumps Netty pin
4.2.14.Final->4.2.15.Finaland extends the existingeachDependencyrule to also align4.2.xtransitive requests. Fixes 4 high CVEs flagged by Trivy on aws-bundle, azure-bundle, kafka-connect-runtime, and open-api-test-fixtures-runtimeExample run
All four fixed in
4.2.15.Final.Changes
gradle/libs.versions.toml:netty-buffer4.2.14.Final->4.2.15.Finalbuild.gradle: rule now matches4.1.xOR4.2.x(was4.1.xonly); CVE list updated.Local verification
./gradlew :<bundle>:dependencyInsight --dependency io.netty:<module> --configuration <cfg>confirms every netty dep resolves to4.2.15.FinalwithSelected by rule: Fix Netty 4.1.x and 4.2.x CVEs (...).