SV-237731r667225_rule
V-237731
SRG-APP-000164-DB-000401
O121-C2-014400
CAT II
10
If all user accounts are authenticated by the OS or an enterprise-level authentication/access mechanism, and not by Oracle, no fix to the DBMS is required.
If any user accounts are managed by Oracle: Develop, test, and implement a password verification function that enforces DoD requirements.
Oracle supplies a sample function called ORA12C_STRONG_VERIFY_FUNCTION. This can be used as the starting point for a customized function. The script file is found in the following location on the server depending on OS:
Windows:
%ORACLE_HOME%\RDBMS\ADMIN\catpvf.sql
UNIX/Linux:
$ORACLE_HOME/rdbms/admin/catpvf.sql
If all user accounts are managed and authenticated by the OS or an enterprise-level authentication/access mechanism, and not by Oracle, this is not a finding.
For each profile that can be applied to accounts where authentication is under Oracle's control, determine the password verification function, if any, that is in use:
SELECT * FROM SYS.DBA_PROFILES
WHERE RESOURCE_NAME = 'PASSWORD_VERIFY_FUNCTION'
[AND PROFILE NOT IN (<list of non-applicable profiles>)]
ORDER BY PROFILE;
Bearing in mind that a profile can inherit from another profile, and the root profile is called DEFAULT, determine the name of the password verification function effective for each profile.
If, for any profile, the function name is null, this is a finding.
For each password verification function, examine its source code.
If it does not enforce the organization-defined minimum number of special characters (1 unless otherwise specified), this is a finding.
V-237731
False
O121-C2-014400
If all user accounts are managed and authenticated by the OS or an enterprise-level authentication/access mechanism, and not by Oracle, this is not a finding.
For each profile that can be applied to accounts where authentication is under Oracle's control, determine the password verification function, if any, that is in use:
SELECT * FROM SYS.DBA_PROFILES
WHERE RESOURCE_NAME = 'PASSWORD_VERIFY_FUNCTION'
[AND PROFILE NOT IN (<list of non-applicable profiles>)]
ORDER BY PROFILE;
Bearing in mind that a profile can inherit from another profile, and the root profile is called DEFAULT, determine the name of the password verification function effective for each profile.
If, for any profile, the function name is null, this is a finding.
For each password verification function, examine its source code.
If it does not enforce the organization-defined minimum number of special characters (1 unless otherwise specified), this is a finding.
M
4059