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.
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "elpa-protobuf-mode" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "libprotobuf-dev" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "libprotobuf-java" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "libprotobuf-lite23" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "libprotobuf-lite23-dbgsym" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "libprotobuf23" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "libprotobuf23-dbgsym" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "libprotoc-dev" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "libprotoc23" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "libprotoc23-dbgsym" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "protobuf-compiler" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "protobuf-compiler-dbgsym" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "python3-protobuf" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "python3-protobuf-dbgsym" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "ruby-google-protobuf" }, { "binary_version": "3.12.4-1ubuntu7.22.04.2", "binary_name": "ruby-google-protobuf-dbgsym" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "elpa-protobuf-mode" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "libprotobuf-dev" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "libprotobuf-java" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "libprotobuf-lite32t64" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "libprotobuf-lite32t64-dbgsym" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "libprotobuf32t64" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "libprotobuf32t64-dbgsym" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "libprotoc-dev" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "libprotoc32t64" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "libprotoc32t64-dbgsym" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "php-google-protobuf" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "protobuf-compiler" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "protobuf-compiler-dbgsym" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "python3-protobuf" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "python3-protobuf-dbgsym" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "ruby-google-protobuf" }, { "binary_version": "3.21.12-9ubuntu1.1", "binary_name": "ruby-google-protobuf-dbgsym" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "elpa-protobuf-mode" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "libprotobuf-dev" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "libprotobuf-java" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "libprotobuf-lite32t64" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "libprotobuf-lite32t64-dbgsym" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "libprotobuf32t64" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "libprotobuf32t64-dbgsym" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "libprotoc-dev" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "libprotoc32t64" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "libprotoc32t64-dbgsym" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "php-google-protobuf" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "protobuf-compiler" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "protobuf-compiler-dbgsym" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "python3-protobuf" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "python3-protobuf-dbgsym" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "ruby-google-protobuf" }, { "binary_version": "3.21.12-8.2ubuntu0.1", "binary_name": "ruby-google-protobuf-dbgsym" } ] }