Description
Any project that parses untrusted Protocol Buffers data containing an arbitrary number of nested groups / series of SGROUP tags can corrupted by exceeding the stack limit i.e. StackOverflow. Parsing nested groups as unknown fields with DiscardUnknownFieldsParser or Java Protobuf Lite parser, or against Protobuf map fields, creates unbounded recursions that can be abused by an attacker.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Google Protocol Buffers
Default version status: unaffected
0 to < 28.2affected
Google protobuf-java
Default version status: unaffected
0 to < 3.25.5affected0 to < 4.27.5affected0 to < 4.28.2affected
Google protobuf-javalite
Default version status: unaffected
0 to < 3.25.5affected0 to < 4.27.5affected0 to < 4.28.2affected
Google protobuf-kotlin
Default version status: unaffected
0 to < 3.25.5affected0 to < 4.27.5affected0 to < 4.28.2affected
Google protobuf-kotllin-lite
Default version status: unaffected
0 to < 3.25.5affected0 to < 4.27.5affected0 to < 4.28.2affected
Google google-protobuf [JRuby Gem]
Default version status: unaffected
0 to < 3.25.5affected0 to < 4.27.5affected0 to < 4.28.2affected