A missing bounds check in the BSON CodeWScope element accessors allows an attacker to trigger an out-of-bounds heap read via a crafted aggregation pipeline. The vulnerability can be exploited by an authenticated user by generating a malformed BSONColumn data containing a CodeWScope element, bypassing wire-level BSON validation. When the forged element is decompressed, the unchecked size value is used in pointer arithmetic, causing either a server crash or disclosure of adjacent heap memory contents.
{
"binaries": [
{
"binary_version": "1:3.6.3-0ubuntu1.4+esm2",
"binary_name": "mongodb"
},
{
"binary_version": "1:3.6.3-0ubuntu1.4+esm2",
"binary_name": "mongodb-clients"
},
{
"binary_version": "1:3.6.3-0ubuntu1.4+esm2",
"binary_name": "mongodb-server"
},
{
"binary_version": "1:3.6.3-0ubuntu1.4+esm2",
"binary_name": "mongodb-server-core"
}
]
}
{
"binaries": [
{
"binary_version": "1:3.6.9+really3.6.8+90~g8e540c0b6d-0ubuntu5.3+esm1",
"binary_name": "mongodb"
},
{
"binary_version": "1:3.6.9+really3.6.8+90~g8e540c0b6d-0ubuntu5.3+esm1",
"binary_name": "mongodb-clients"
},
{
"binary_version": "1:3.6.9+really3.6.8+90~g8e540c0b6d-0ubuntu5.3+esm1",
"binary_name": "mongodb-server"
},
{
"binary_version": "1:3.6.9+really3.6.8+90~g8e540c0b6d-0ubuntu5.3+esm1",
"binary_name": "mongodb-server-core"
}
]
}