select user, host FROM mysql.user;查看管理用户
show variables like 'validate%'; 查看口令策略
show variables like '%password%'; 查看口令策略
show variables like '%general%'; 查看日志是否开启
show variables like '%control%'; 查看登录失败处理
show variables like '%connection_control%'; 查看登录失败处理
show variables like '%timeout%'; 查看登录超时
show variables like '%ssl%'; 查看传输协议
show variables like '%have_ssl%'; 查看传输协议
show variables like '%have_openssl%'; 查看传输协议
\s; 查看是否启用SSL
show grants for 'XXXX'@'localhost'; 查看XXXX管理员权限
select user,authentication_string FROm mysql.user; 查看是否存在匿名账户
select username,account_status from dba_users;查看是否有多余的、过期的账户
select * from mysql.user where user='用户名';查看用户角色权限
select * from mysql.db; 查看数据库权限列
select * from mysql.tables_priv; 查看用户表权限列
select * from mysql.columns_priv; 查看管理员权限列
Show variables like '%log%'; 查看审计
select * from information_schema.PLUGINS where PLUGIN_NAME='audit_log'; 查看审计
select version(); 查看数据库版本
show variables where variable_name like 'version'; 查看当前补丁版本
show variables where variable_name like '%version%'; 查看当前补丁版本
select username, account_status, profile from dba_users where account_status NOT like '%LOCKED';查看未锁定的所有账户
select username,account_status from dba_users where account_status='OPEN';查看使用的账户
select value from v$parameter where name='audit_trail';查看是否开启审计
show parameter audit_file_dest;查看审计存储路径
show parameter audit;查看审计存储路径
打开sqlnet.ora配置文件,查看登录白名单地址限制以及其他相关配置
SQL Server数据库
select @@version 查看数据库版本
select name, LOGINPROPERTY([name], 'PasswordLastSetTime') AS 'PasswordChanged' FROM sys.sql_logins;上传口令更换时间
select * from sys.sql_logins; 查看is_policy_checked字段的赋值是否强制实施密码策略
sp_configure 'remote login time'查看超时
sp_configure 'remote query timeout'查看超时
sp_configure 查看“c2 audit mode”项的值,“0”是未开启C2审计,“1”是开启C2审计。
其他安全配置可在SQL Server管理工具中看到。
PostgreSQL数据库
psql -h 127.0.0.1 -d postgres -U postgres 连接pgsql server
pg_ctl --version 查看数据库版本
select version(); 查看数据库版本(登录到数据库中)
打开pg_hba.conf配置文件查看数据库的身份认证方式
select * from pg_shadow ; 口令到期时间
show password_encryption; 查看口令加密算法
select * from pg_settings ps where ps.name like '%timeout%'; 查询超时
show shared_preload_libraries; 查看是否启用密码复杂度模块
打开postgresql.conf配置文件,查看ssl字段是否为on
\du 查看管理用户。
打开postgresql.conf配置文件,查看logging_collector 是否= on,on表示开启日志,查看 log_statement的参数判断数据库审计记录信息。
GaussdDB
gsql -d postgres -U gaussdba:登录数据库,gaussdba为用户名
gaussdb --version 查询数据库版本
cps template-instance-list --service gaussdb gaussdb命令查看gaussdb部署节点
select * from pg_user; 查询用户
cps template-params-show --service gaussdb gaussdb 查看登录失败处理。
\set 查看连接超时时间。
cps template-params-show --service gaussdb gaussdb 查看传输协议。
进入/opt/fusionplatform/data/gaussdb_data/data目录,执行cat postgresql.conf | grep ssl_ciphers中的算法(也就是进入安装目录查看postgresql.conf配置文件中的ssl采用的算法。
select * from information_schema.routine_privileges where grantee='user_name'; 命令查询user_name用户所拥有的权限,user_name替换成实际的用户名。
select ROLNAME from pg_authid where oid=10; 查看默认用户。
show audit_enabled;查看审计,ON表示已经开启审计功能。
select * from pg_query_audit('2022-08-19 08:00:00','2022-08-20 08:00:00'); 查看具体时间段的日志记录。
进入/var/log/fusionsphere/component/gaussdb目录,执行ll,查看该目录下文件的权限。
打开pg_hba.conf配置文件,查看IP白名单限制(登录地址限制)。
达梦数据库
select * from v$dm_ini where para_name ='PWD_POLICY';查看密码策略
SELECT * FROM V$DM_INI WHERE PARA_NAME='ENABLE_AUDIT';查看审计状态
select * from V$AUDITRECORDS;查看审计记录
select * from v$dm_ini where para_name ='ENABLE_OBJ_REUSE';查看客体内存重用和文件重用
其他安全配置可在DM管理工具中看到。
人大金仓数据库
select version(); 查看数据库版本
打开kingbase.conf配置文件可看到口令策略、登录失败处理和超时退出、安全审计策略
select setting from sys_settings where name='ssl';查看是否开启SSL
select * from sys_user;查看管理用户
打开init.log查看日志信息
其他安全配置可在人大金仓数据库对象管理工具中看到。
推荐阅读