6.3 Ensure that server-side scripting is disabled if not needed

Information

MongoDB supports the execution of JavaScript code for certain server-side operations: mapReduce group $where $accumulator and $function aggregation operations that allow users to define custom aggregation expressions. If you do not use these operations, server-side scripting should be disabled.

If server-side scripting is not needed and is not disabled, this introduces unnecessary risk which may allow an attacker to take advantage of insecure coding.

NOTE: Nessus has provided the target output to assist in reviewing the benchmark to ensure target compliance.

Solution

If server-side scripting is not required, for mongod instance disable it by using the --noscripting option on the command line, or setting security.javascriptEnabled to false in the configuration file.

Starting in MongoDB 4.4 this is also applicable to mongos.

Impact:

Disabling server-side scripting will block all server-side scripts from executing.

See Also

https://workbench.cisecurity.org/benchmarks/15675

Item Details

Category: CONFIGURATION MANAGEMENT

References: 800-53|CM-7b., CSCv6|18.9, CSCv7|9.2

Plugin: Unix

Control ID: 1ba8aa4cf051c9cbfddef0cfdbbdfe0c93acebbcfd3ecf5388eedac4f8eaf42d