TMAegis
More rules for yugabytedb

TMA-YUGABYTEDB-5.2

Ensure that the default password changed for the cassandra role

CriticalLevel 2Automatedyugabytedb

Description

The cassandra role has a default password which must be changed. The benchmark rates this recommendation Manual; the automated check covers its objective pass criterion. Attempts a ycqlsh login as cassandra/cassandra against ${YCQL_HOST:-127.0.0.1}:${YCQL_PORT:-9042} (ycqlsh on PATH); passes only when the server rejects the credentials. A successful login (including with YCQL authentication disabled) fails, an unreachable server fails.

How it is checked

Audit method: Shell command

shell
command -v ycqlsh >/dev/null 2>&1 || exit 1; out=$(ycqlsh -u cassandra -p cassandra -e 'SELECT release_version FROM system.local;' "${YCQL_HOST:-127.0.0.1}" "${YCQL_PORT:-9042}" 2>&1); rc=$?; if [ $rc -eq 0 ]; then echo default_password_accepted; elif printf '%s' "$out" | grep -qiE 'AuthenticationFailed|Bad credentials|incorrect|Unauthorized'; then echo compliant; else exit 1; fi
Expected output
compliant

How it is fixed

Fix method: Guidance or infrastructure patch

Log in to ycqlsh as a superuser and run ALTER ROLE cassandra WITH PASSWORD = '<new strong password>';

Properties

Operating systems
Any
Tags
yugabytedbauthentication
Reference
CIS YugabyteDB Benchmark v2.0.0 - 5.2 Ensure that the default password changed for the cassandra role

Check this host

Run this on a machine you are allowed to audit. The scan is read-only.

shell
tmaegis scan --target yugabytedb --level 2