It may be possible to have an extremely long aggregation pipeline in conjunction with a specific stage/operator and cause a stack overflow due to the size of the stack frames used by that stage. If an attacker could cause such an aggregation to occur, they could maliciously crash MongoDB in a DoS attack. This vulnerability affects MongoDB Server v4.4 versions prior to and including 4.4.28, MongoDB Server v5.0 versions prior to 5.0.4 and MongoDB Server v4.2 versions prior to 4.2.16.
Workaround: >= v4.2.16 users and all v4.4 users can add the --setParameter internalPipelineLengthLimit=50 instead of the default 1000 to mongod at startup to prevent a crash.
CPE | Name | Operator | Version |
---|---|---|---|
mongo | eq | r5.0.0 | |
mongo | eq | r5.0.3-rc1 | |
mongo | eq | r5.0.2 | |
mongo | eq | r5.0.3-rc0 | |
mongo | eq | r5.0.3 | |
mongo | eq | r5.0.2-rc0 | |
mongo | eq | r5.0.1 | |
mongo | eq | r5.0.3-rc2 | |
mongo | eq | r5.0.1-rc0 |