Bumped protobuf-javalite to 3.25.9 for CVE-2024-7254 - #1002
Open
adrian-niculescu wants to merge 1 commit into
Open
Bumped protobuf-javalite to 3.25.9 for CVE-2024-7254#1002adrian-niculescu wants to merge 1 commit into
adrian-niculescu wants to merge 1 commit into
Conversation
adrian-niculescu
requested review from
MaxHeimbrock,
davidliu and
xianshijing-lk
as code owners
August 16, 2026 19:55
🦋 Changeset detectedLatest commit: 1b7413c The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
The parser in protobuf-javalite before 3.25.5 recurses without bound on deeply nested groups and unknown fields, throwing StackOverflowError. The SDK parses data channel payloads with LivekitModels.DataPacket.parseFrom in RTCEngine.onMessage, so the input is remote participant controlled. The dependency is also declared at runtime scope in the published POM, so it reaches the runtime classpath of every consuming app. 3.25.9 is the latest release on that line. Only the runtime pin moves. protobuf stays at 3.22.0: it selects protoc and the protobuf-java jar that descriptorProtoSource unzips descriptor.proto out of, neither of which reaches a consumer classpath, and 3.22.0 gencode on a 3.25.9 runtime is the supported direction.
adrian-niculescu
force-pushed
the
bump-protobuf-javalite-3.25.5
branch
from
August 16, 2026 20:05
ac8e547 to
1b7413c
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #1001.
protobuf-javalite 3.22.0 is affected by GHSA-735f-pc8j-v9w8 / CVE-2024-7254, fixed in 3.25.5. The parser recurses without bound on deeply nested groups and unknown fields and throws
StackOverflowError.RTCEngine.onMessagecallsLivekitModels.DataPacket.parseFromon the data channel bytes, so a remote participant controls the input, and the published POM declares the dependency at runtime scope so it lands on every consuming app's runtime classpath.This goes to 3.25.9, the latest release on that line, rather than stopping at the 3.25.5 the advisory names. I can take it to 4.x instead if you prefer, though that renumbering also brings the gencode runtime version check, so it wants protoc moved along with it.
Only the runtime pin moves.
protobufstays at 3.22.0: it selects protoc and theprotobuf-javajar thatdescriptorProtoSourceunzipsdescriptor.protoout of. Neither reaches a consumer classpath, and 3.22.0 gencode on a 3.25.9 runtime is the supported direction../gradlew assemble testpasses, including theDataPacket.parseFromround trips inRTCEngineMockE2ETestandRoomOutgoingDataStreamMockE2ETest, which are what would surface a gencode/runtime mismatch. The generated POM now declares protobuf-javalite 3.25.9 at runtime scope.