Oracle Database
TMA-ORACLE-DB-4.4
Ensure Old Password Versions Are Not Used
说明
No password versions (hashes) prior to 12c should be allowed for user authentication. Run on the database host as the Oracle software owner with ORACLE_HOME, ORACLE_SID and PATH set; connects to the CDB root with 'sqlplus -S / as sysdba' (OS authentication) so CDB_/GV$ views cover all open PDBs.
检查方式
审计方法: SQL 查询
out=$(sqlplus -S -L / as sysdba 2>/dev/null <<'EOF'
whenever sqlerror exit failure
set heading off feedback off pagesize 0 verify off echo off trimspool on define off
select count(*) from cdb_users c
where not regexp_like(c.password_versions, '^\s*12C\s*$')
and c.username not in ('SYS');
exit
EOF
) || exit 1
printf '%s\n' "$out"
- 预期输出
0
修复方式
修复方法: 操作指南或基础设施补丁
Follow the process "Finding and Resetting User Passwords That Use the 10G Password Version" as outlined in the Oracle Database Upgrade Guide to reset affected user passwords and enforce 12c password versioning. ; Identify users with old password versions. ; Ensure that SQLNET.ALLOWED_LOGON_VERSION_SERVER is set to 12a. ; Reset their passwords using the ALTER USER command.
属性
- 操作系统
- 任意
- 标签
- oracle-dbdatabaseoracleauthentication
- 参考
- CIS Oracle Database 23ai Benchmark v1.1.0 - 4.4 Ensure Old Password Versions Are Not Used
检查本机
请在您有权审计的机器上运行此命令。扫描为只读操作。
tmaegis scan --target oracle-db