The protobuf crate before 3.7.2 for Rust allows uncontrolled recursion in the protobuf::codedinputstream::CodedInputStream::skip_group parsing of unknown fields in untrusted input.
{
"binaries": [
{
"binary_version": "2.25.2-1",
"binary_name": "librust-protobuf+bytes-dev"
},
{
"binary_version": "2.25.2-1",
"binary_name": "librust-protobuf+serde-derive-dev"
},
{
"binary_version": "2.25.2-1",
"binary_name": "librust-protobuf+serde-dev"
},
{
"binary_version": "2.25.2-1",
"binary_name": "librust-protobuf+with-serde-dev"
},
{
"binary_version": "2.25.2-1",
"binary_name": "librust-protobuf-dev"
}
]
}
{
"binaries": [
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf+bytes-dev"
},
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf+serde-derive-dev"
},
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf+serde-dev"
},
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf+with-serde-dev"
},
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf-dev"
}
]
}
{
"binaries": [
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf+bytes-dev"
},
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf+serde-derive-dev"
},
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf+serde-dev"
},
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf+with-serde-dev"
},
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf-dev"
}
]
}
{
"binaries": [
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf+bytes-dev"
},
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf+serde-derive-dev"
},
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf+serde-dev"
},
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf+with-serde-dev"
},
{
"binary_version": "2.27.1-1",
"binary_name": "librust-protobuf-dev"
}
]
}