MongoDB
TMA-MONGODB-6.3
Ensure that server-side scripting is disabled if not needed
Description
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. The benchmark rates this recommendation Manual; the automated check covers its objective pass criterion. Checks the YAML config file /etc/mongod.conf (SKIP when it does not exist). Treat a FAIL as an accepted exception only where server-side JavaScript ($where, mapReduce, $function, $accumulator) is required.
How it is checked
Audit method: File pattern
- File
/etc/mongod.conf- Pattern
(?m)^[ \t]*javascriptEnabled:[ \t]*['\x22]?false\b
How it is fixed
Fix method: Guidance or infrastructure patch
If server-side scripting is not required set security.javascriptEnabled: false in /etc/mongod.conf (or start mongod/mongos with --noscripting) and restart.
Properties
- Operating systems
- Any
- Tags
- mongodbhardening
- Reference
- CIS MongoDB 8 Benchmark v2.0.0 - 6.3 Ensure that server-side scripting is disabled if not needed
Check this host
Run this on a machine you are allowed to audit. The scan is read-only.
tmaegis scan --target mongodb --level 2