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",
"binaries": [
{
"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": "libprotobuf23",
"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": "protobuf-compiler",
"binary_version": "3.12.4-1ubuntu7.22.04.2"
},
{
"binary_name": "python3-protobuf",
"binary_version": "3.12.4-1ubuntu7.22.04.2"
},
{
"binary_name": "ruby-google-protobuf",
"binary_version": "3.12.4-1ubuntu7.22.04.2"
}
]
}{
"availability": "No subscription required",
"binaries": [
{
"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": "libprotobuf32t64",
"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": "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": "python3-protobuf",
"binary_version": "3.21.12-8.2ubuntu0.1"
},
{
"binary_name": "ruby-google-protobuf",
"binary_version": "3.21.12-8.2ubuntu0.1"
}
]
}{
"availability": "No subscription required",
"binaries": [
{
"binary_name": "elpa-protobuf-mode",
"binary_version": "3.21.12-10ubuntu0.1"
},
{
"binary_name": "libprotobuf-dev",
"binary_version": "3.21.12-10ubuntu0.1"
},
{
"binary_name": "libprotobuf-java",
"binary_version": "3.21.12-10ubuntu0.1"
},
{
"binary_name": "libprotobuf-lite32t64",
"binary_version": "3.21.12-10ubuntu0.1"
},
{
"binary_name": "libprotobuf32t64",
"binary_version": "3.21.12-10ubuntu0.1"
},
{
"binary_name": "libprotoc-dev",
"binary_version": "3.21.12-10ubuntu0.1"
},
{
"binary_name": "libprotoc32t64",
"binary_version": "3.21.12-10ubuntu0.1"
},
{
"binary_name": "php-google-protobuf",
"binary_version": "3.21.12-10ubuntu0.1"
},
{
"binary_name": "protobuf-compiler",
"binary_version": "3.21.12-10ubuntu0.1"
},
{
"binary_name": "python3-protobuf",
"binary_version": "3.21.12-10ubuntu0.1"
},
{
"binary_name": "ruby-google-protobuf",
"binary_version": "3.21.12-10ubuntu0.1"
}
]
}{
"binaries": [
{
"binary_name": "libprotobuf-dev",
"binary_version": "2.5.0-9ubuntu1+esm1"
},
{
"binary_name": "libprotobuf-java",
"binary_version": "2.5.0-9ubuntu1+esm1"
},
{
"binary_name": "libprotobuf-lite8",
"binary_version": "2.5.0-9ubuntu1+esm1"
},
{
"binary_name": "libprotobuf8",
"binary_version": "2.5.0-9ubuntu1+esm1"
},
{
"binary_name": "libprotoc-dev",
"binary_version": "2.5.0-9ubuntu1+esm1"
},
{
"binary_name": "libprotoc8",
"binary_version": "2.5.0-9ubuntu1+esm1"
},
{
"binary_name": "protobuf-compiler",
"binary_version": "2.5.0-9ubuntu1+esm1"
},
{
"binary_name": "python-protobuf",
"binary_version": "2.5.0-9ubuntu1+esm1"
}
]
}{
"availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro",
"binaries": [
{
"binary_name": "libprotobuf-dev",
"binary_version": "2.6.1-1.3ubuntu0.1~esm4"
},
{
"binary_name": "libprotobuf-java",
"binary_version": "2.6.1-1.3ubuntu0.1~esm4"
},
{
"binary_name": "libprotobuf-lite9v5",
"binary_version": "2.6.1-1.3ubuntu0.1~esm4"
},
{
"binary_name": "libprotobuf9v5",
"binary_version": "2.6.1-1.3ubuntu0.1~esm4"
},
{
"binary_name": "libprotoc-dev",
"binary_version": "2.6.1-1.3ubuntu0.1~esm4"
},
{
"binary_name": "libprotoc9v5",
"binary_version": "2.6.1-1.3ubuntu0.1~esm4"
},
{
"binary_name": "protobuf-compiler",
"binary_version": "2.6.1-1.3ubuntu0.1~esm4"
},
{
"binary_name": "python-protobuf",
"binary_version": "2.6.1-1.3ubuntu0.1~esm4"
}
]
}{
"availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro",
"binaries": [
{
"binary_name": "libprotobuf-dev",
"binary_version": "3.0.0-9.1ubuntu1.1+esm3"
},
{
"binary_name": "libprotobuf-java",
"binary_version": "3.0.0-9.1ubuntu1.1+esm3"
},
{
"binary_name": "libprotobuf-lite10",
"binary_version": "3.0.0-9.1ubuntu1.1+esm3"
},
{
"binary_name": "libprotobuf10",
"binary_version": "3.0.0-9.1ubuntu1.1+esm3"
},
{
"binary_name": "libprotoc-dev",
"binary_version": "3.0.0-9.1ubuntu1.1+esm3"
},
{
"binary_name": "libprotoc10",
"binary_version": "3.0.0-9.1ubuntu1.1+esm3"
},
{
"binary_name": "protobuf-compiler",
"binary_version": "3.0.0-9.1ubuntu1.1+esm3"
},
{
"binary_name": "python-protobuf",
"binary_version": "3.0.0-9.1ubuntu1.1+esm3"
},
{
"binary_name": "python3-protobuf",
"binary_version": "3.0.0-9.1ubuntu1.1+esm3"
}
]
}{
"availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro",
"binaries": [
{
"binary_name": "libprotobuf-dev",
"binary_version": "3.6.1.3-2ubuntu5.2+esm2"
},
{
"binary_name": "libprotobuf-java",
"binary_version": "3.6.1.3-2ubuntu5.2+esm2"
},
{
"binary_name": "libprotobuf-lite17",
"binary_version": "3.6.1.3-2ubuntu5.2+esm2"
},
{
"binary_name": "libprotobuf17",
"binary_version": "3.6.1.3-2ubuntu5.2+esm2"
},
{
"binary_name": "libprotoc-dev",
"binary_version": "3.6.1.3-2ubuntu5.2+esm2"
},
{
"binary_name": "libprotoc17",
"binary_version": "3.6.1.3-2ubuntu5.2+esm2"
},
{
"binary_name": "protobuf-compiler",
"binary_version": "3.6.1.3-2ubuntu5.2+esm2"
},
{
"binary_name": "python-protobuf",
"binary_version": "3.6.1.3-2ubuntu5.2+esm2"
},
{
"binary_name": "python3-protobuf",
"binary_version": "3.6.1.3-2ubuntu5.2+esm2"
},
{
"binary_name": "ruby-google-protobuf",
"binary_version": "3.6.1.3-2ubuntu5.2+esm2"
}
]
}