bson before 0.8 incorrectly uses int rather than sizet for many variables, parameters, and return values. In particular, the bsonensure_space() parameter bytesNeeded could have an integer overflow via properly constructed bson input.
{
"availability": "No subscription required",
"binaries": [
{
"binary_name": "libwhoopsie-dev",
"binary_version": "0.2.52.5ubuntu0.5"
},
{
"binary_name": "libwhoopsie0",
"binary_version": "0.2.52.5ubuntu0.5"
},
{
"binary_name": "whoopsie",
"binary_version": "0.2.52.5ubuntu0.5"
}
]
}{
"binaries": [
{
"binary_name": "libduo-dev",
"binary_version": "1.9.21-1build1"
},
{
"binary_name": "libduo3",
"binary_version": "1.9.21-1build1"
},
{
"binary_name": "libpam-duo",
"binary_version": "1.9.21-1build1"
},
{
"binary_name": "login-duo",
"binary_version": "1.9.21-1build1"
}
]
}{
"binaries": [
{
"binary_name": "libduo-dev",
"binary_version": "1.11.3-1build1"
},
{
"binary_name": "libduo3",
"binary_version": "1.11.3-1build1"
},
{
"binary_name": "libpam-duo",
"binary_version": "1.11.3-1build1"
},
{
"binary_name": "login-duo",
"binary_version": "1.11.3-1build1"
}
]
}{
"binaries": [
{
"binary_name": "libduo-dev",
"binary_version": "1.11.3-1.1build2"
},
{
"binary_name": "libduo3t64",
"binary_version": "1.11.3-1.1build2"
},
{
"binary_name": "libpam-duo",
"binary_version": "1.11.3-1.1build2"
},
{
"binary_name": "login-duo",
"binary_version": "1.11.3-1.1build2"
}
]
}