数据库安全检查表精编版.docx
《数据库安全检查表精编版.docx》由会员分享,可在线阅读,更多相关《数据库安全检查表精编版.docx(26页珍藏版)》请在冰点文库上搜索。
数据库安全检查表精编版
数据库安全检查表【精编版】
1.1数据库
编号
生产厂商/型号
12-5-4
物理位置
中心机房
所在网络
检查日期
检查人
责任人
审核人
编号
检查项目
检查内容
操作方法
结果
检查记录
1
通
用
安
全
机
制
操作系统检查
检查数据库安装目录的权限,,确保只有系统管理员才能访问该目录
对Windows操作系统而言,采用regedt32检查HKLM\Software\Sybase中的权限键值
2
服务器信息
列举网络上的远程服务器
execsp_helpserver
检查输出内容:
网络密码加密的部份可能如下:
"netpasswordencryption"=true
"netpasswordencryption"=false
安全机制部份可能如下:
"rpcsecuritymodelA"是不提供安全机制
"rpcsecuritymodelB"是提供不同的安全服务,如互相认证、消息加密、完整性校验等。
列举特定服务器的信息
execsp_helpdb
3
登陆配置
检查认证模式是否开启
execsp_loginconfig"loginmode"
检查默认登陆
execsp_loginconfig"defaultaccount"
在集成认证模式中,确认默认登陆角色不是sa,设置为NULL或者一个低权限的用户。
4
补丁
查看服务器版本信息
select@@VERSION
5
数据库配置
通用数据库参数
获得当前Server的配置
execsp_configure
6
检查输出'allowupdatestosystemtables'
如果是“on”状态,DBA可以通过存储过程修改系统表。
建议sso将其设
置为“off”状态。
因为已经建立的存储过程可以被执行,建议审计数据库的存储过程列表。
execsp_configure"allowupdatestosystemtables"
7
检查并保证'allowresourcelimit'的值设为“1”
execsp_configure"allowresourcelimit"
8
保证系统表'syscomments'已经被保护该系统表非常重要,但默认情况下被设置为"1",确认该值被设置为"0"。
execsp_configure"selectonsyscomments.text"
9
错误日志配置
检查是否设置失败登陆日志,确认该值设置为"0"
execsp_configure"logauditlogonfailure"
10
检查是否设置成功登陆日志,确认该数值设为"0"
execsp_configure"logauditlogonsuccess"
11
用
户
级
安
全
组
列举某数据库的所有组:
useDBName
execsp_helpgroup
12
列举某组内的用户:
useDBName
execsp_helpgroupGroupName
13
角色
检查服务器角色和用户定义的角色:
selectname,password,pwdate,statusfromsyssrvroles
14
检查每个角色的详细信息:
execsp_displayroles"RoleName",expand_up
15
检查每个用户的详细信息:
execsp_displayrolesUserName,expand_down
16
检查角色中空口令用户:
selectnamefromsyssrvroleswherepassword=NULL
17
用户
检查某数据库的所有用户:
execsp_helpuser
18
检查散列用户口令:
selectname,passwordfromsyslogins
19
检查每个数据库的用户权限:
useDBName
execsp_helprotect
20
口令安全参数
检查口令过期时间,建议设置为14天
execsp_configure"passwordexpirationinterval"
'0'–密码从不过期
'n'–天数.
21
检查口令是否至少包含一位数字
execsp_configure"checkpasswordfordigit"
'0'-强制用户口令中至少包含一个数字
22
检查最小密码长度,建议为8位以上
execsp_configure"minimumpasswordlength"
23
数
据
级
安
全
权限
检查关键表、过程、触发器的权限,检查赋予public组权限的对象:
useDBName
execsp_helprotectObjectName
输出:
1.用户权限列表
2.所有对象的权限类型
3.是否设置WITHGRANT权限
24
存储过程
列出数据库中所有扩展存储过程:
usesybsystemprocs
selectnamefromsysobjectswheretype='XP'
25
删除扩展存储过程xp_cmdshell,并删除sybsyesp.dll
execsp_dropextendedprocxp_cmdshell
如果一定需要使用xp_cmdshell,则审核其权限分配:
usesybsystemprocs
execsp_helprotect“xp_cmdshell”
26
检查其它存储过程
如sendmail,freemail,readmail,deletemail,startmail,stopmail,删除无
用的存储过程,并删除mail帐号'sybmail'.
27
网
络
层
安
全
远端服务器信息
检查远端服务器是否允许访问
usemaster
execsp_configure"allowremoteaccess"
'1'-允许远程访问
'0'-不允许远程访问
检查信任用户的存在情况
execsp_helpremoteserver
28
远程连接机制
检查安全机制和其提供的安全服务
select*fromsyssecmechs
Syssecmech表默认并不存在,仅在查询的时候创建,它由以下的列组成:
sec_mech_name服务器提供的安全机制名
available_service安全机制提供的安全服务
举例,Windows网络管理员,其内容将为:
sec_mech_name=NTLANMANAGER
available_service=unifiedlogin
29
检查libctl.cfg文件
内部包含了网络驱动的信息,安全,目录磁盘和其他初始化信息。
1.如果LDAP密码加密。
2.安全机制:
"dce"DCE安全机制。
"csfkrb5"CyberSAFEKerberos安全机制。
"LIBSMSSP"WindowsNT或Windows95(仅客户端)上的Windows
网络管理员。
注意:
libtcl.cfg的位置:
UNIX模式:
$SYBASE/config/
桌面模式:
SYBASE_home\ini\
30
检查统一登陆需要的参数
execsp_configure"unifiedloginrequired"
如果网络安全被设置为启用,则保证其设置为"1"。
设置为"0",将会
允许传统的用户密码方式登陆到ASE,这样跟信任连接一样会对网络的
安全性造成影响。
........................................................................................................
数据库安全检查表【精编版】
数据库
编号
生产厂商/型号
12-5-4
物理位置
中心机房
所在网络
检查日期
检查人
责任人
审核人
编号
检查项目
检查内容
操作方法
结果
检查记录
1
通
用
安
全
机
制
操作系统检查
检查数据库安装目录的权限,,确保只有系统管理员才能访问该目录
对Windows操作系统而言,采用regedt32检查HKLM\Software\Sybase中的权限键值
2
服务器信息
列举网络上的远程服务器
execsp_helpserver
检查输出内容:
网络密码加密的部份可能如下:
"netpasswordencryption"=true
"netpasswordencryption"=false
安全机制部份可能如下:
"rpcsecuritymodelA"是不提供安全机制
"rpcsecuritymodelB"是提供不同的安全服务,如互相认证、消息加密、完整性校验等。
9
错误日志配置
检查是否设置失败登陆日志,确认该值设置为"0"
execsp_configure"logauditlogonfailure"
10
检查是否设置成功登陆日志,确认该数值设为"0"
execsp_configure"logauditlogonsuccess"
11
用
户
级
安
全
组
列举某数据库的所有组:
useDBName
execsp_helpgroup
12
列举某组内的用户:
useDBName
execsp_helpgroupGroupName
13
角色
检查服务器角色和用户定义的角色:
selectname,password,pwdate,statusfromsyssrvroles
14
检查每个角色的详细信息:
execsp_displayroles"RoleName",expand_up
15
检查每个用户的详细信息:
execsp_displayrolesUserName,expand_down
16
检查角色中空口令用户:
selectnamefromsyssrvroleswherepassword=NULL
17
用户
检查某数据库的所有用户:
execsp_helpuser
18
检查散列用户口令:
selectname,passwordfromsyslogins
19
检查每个数据库的用户权限:
useDBName
execsp_helprotect
20
口令安全参数
检查口令过期时间,建议设置为14天
execsp_configure"passwordexpirationinterval"
'0'–密码从不过期
'n'–天数.
21
检查口令是否至少包含一位数字
execsp_configure"checkpasswordfordigit"
'0'-强制用户口令中至少包含一个数字
22
检查最小密码长度,建议为8位以上
execsp_configure"minimumpasswordlength"
23
数
据
级
安
全
权限
检查关键表、过程、触发器的权限,检查赋予public组权限的对象:
useDBName
execsp_helprotectObjectName
输出:
1.用户权限列表
2.所有对象的权限类型
3.是否设置WITHGRANT权限
24
存储过程
列出数据库中所有扩展存储过程:
usesybsystemprocs
selectnamefromsysobjectswheretype='XP'
25
删除扩展存储过程xp_cmdshell,并删除sybsyesp.dll
execsp_dropextendedprocxp_cmdshell
如果一定需要使用xp_cmdshell,则审核其权限分配:
usesybsystemprocs
execsp_helprotect“xp_cmdshell”
26
检查其它存储过程
如sendmail,freemail,readmail,deletemail,startmail,stopmail,删除无
用的存储过程,并删除mail帐号'sybmail'.
27
网
络
层
安
全
远端服务器信息
检查远端服务器是否允许访问
usemaster
execsp_configure"allowremoteaccess"
'1'-允许远程访问
'0'-不允许远程访问
检查信任用户的存在情况
execsp_helpremoteserver
28
远程连接机制
检查安全机制和其提供的安全服务
select*fromsyssecmechs
Syssecmech表默认并不存在,仅在查询的时候创建,它由以下的列组成:
sec_mech_name服务器提供的安全机制名
available_service安全机制提供的安全服务
举例,Windows网络管理员,其内容将为:
sec_mech_name=NTLANMANAGER
available_service=unifiedlogin
29
检查libctl.cfg文件
内部包含了网络驱动的信息,安全,目录磁盘和其他初始化信息。
1.如果LDAP密码加密。
2.安全机制:
"dce"DCE安全机制。
"csfkrb5"CyberSAFEKerberos安全机制。
"LIBSMSSP"WindowsNT或Windows95(仅客户端)上的Windows
网络管理员。
注意:
libtcl.cfg的位置:
UNIX模式:
$SYBASE/config/
桌面模式:
SYBASE_home\ini\
30
检查统一登陆需要的参数
execsp_configure"unifiedloginrequired"
如果网络安全被设置为启用,则保证其设置为"1"。
设置为"0",将会
允许传统的用户密码方式登陆到ASE,这样跟信任连接一样会对网络的
安全性造成影响。
........................................................................................................