Mssql数据库系统加固规范2019年12月目录1账号管理、认证授权...................................................................................................11.1.1SHG-Mssql-01-01-01........................................................................................11.1.2SHG-Mssql-01-01-02........................................................................................21.1.3SHG-Mssql-01-01-03........................................................................................31.1.4SHG-Mssql-01-01-04........................................................................................41.1.5SHG-Mssql-01-01-05........................................................................................51.1.6SHG-Mssql-01-01-06........................................................................................52日志配置.......................................................................................................................72.1.1SHG-Mssql-02-01-01........................................................................................73通信协议.......................................................................................................................83.1.1SHG-Mssql-03-01-01........................................................................................83.1.2SHG-Mssql-03-01-02........................................................................................83.1.3SHG-Mssql-03-01-04......................................................................................104设备其他安全要求.....................................................................................................114.1.1SHG-Mssql-04-01-01......................................................................................114.1.2SHG-Mssql-04-01-02......................................................................................141账号管理、认证授权1.1.1SHG-Mssql-01-01-01编号名称实施目的问题影响系统当前状态实施步骤SHG-Mssql-01-01-01为不同的管理员分配不同的账号应按照用户分配账号,避免不同用户间共享账号,提高安全性。账号混淆,权限不明确,存在用户越权使用的可能。usemasterSelectname,passwordfromsysloginsorderbyname记录用户列表1、参考配置操作sp_addlogin'user_name_1','password1'sp_addlogin'user_name_2','password2'或在企业管理器中直接添加远程登陆用户建立角色,并给角色授权,把角色赋给不同的用户或修改用户属性中的角色和权限2、补充操作说明1、user_name_1和user_name_1是两个不同的账号名称,可根据不同用户,取不同的名称;回退方案删除添加的用户判断依据询问管理员是否安装需求分配用户账号实施风险高重要等级★★★备注1.1.2SHG-Mssql-01-01-02编号SHG-Mssql-01-01-02名称删除或锁定无效账号实施目的删除或锁定无效的账号,减少系统安全隐患。问题影响允许非法利用系统默认账号usemaster系统当前状态Selectname,passwordfromsysloginsorderbyname记录用户列表1、参考配置操作Mssql企业管理器-SQLServer组实施步骤-(Local)(WindowsNT)-安全性-登录在用户上点右键选择删除回退方案增加删除的帐户判断依据询问管理员,哪些账号是无效账号实施风险高重要等级★★★备注1.1.3SHG-Mssql-01-01-03编号SHG-Mssql-01-01-03名称限制启动账号权限实施目的限制账号过高的用户启动sqlserver问题影响启动mssql的账号权限过高,会导致其子进程具有相同权限.系统当前状态Mssql企业管理器-SQLServer组-(Local)(WindowsNT)-属性(右键)-安全性1、参考配置操作新建SQLserver服务账号后,建议将其从User组中删除,且不要把该账号提升为Administrators组的成员。授予以实施步骤下windowsSQLRunAs账户最少的权限启动SQLServer数据库。回退方案替换会原来启动账号判定条件判断依据查看启动账号权限.实施风险高重要等级★★★备注1.1.4SHG-Mssql-01-01-04编号SHG-Mssql-01-01-04名称权限最小化实施目的在数据库权限配置能力内,根据用户的业务需要,配置其所需的最小权限。问题影响账号权限越大,对系统的威胁性越高系统当前状态记录用户拥有权限1、参考配置操作a)更改数据库属性,取消业务数据库帐号不需要的服务器角色;b)更改数据库属性,取消业务数据库帐号不需要的“数据库访问许可”和“数据库角色中允许”中不需要的角色。实施步骤2、补充操作说明操作a)用于修改数据库帐号的最小系统角色操作b)用于修改用户多余数据库访问许可权限和数据库内角色回退方案还原添加或删除的权限判断依据业务测试正常实施风险高重要等级★备注1.1.5SHG-Mssql-01-01-05编号SHG-Mssql-01-01-05名称数据库角色实施目的使用数据库角色(ROLE)来管理对象的权限。问题影响账号管理混乱系统当前状态记录对应数据库用户角色权限a)企业管理器-〉数据库-〉对应数据库-〉角色-中创建新角色;实施步骤b)调整角色属性中的权限,赋予角色中拥有对象对应的SELECT、INSERT、UPDATE、DELETE、EXEC、DRI权限回退方案删除相应的角色判断依据对应用户不要赋予不必要的权限实施风险高重要等级★备注1.1.6SHG-Mssql-01-01-06编号名称实施目的问题影响系统当前状态实施步骤回退方案判断依据实施风险重要等级SHG-Mssql-01-01-06空密码对用户的属性进行安全检查,包括空密码、密码更新时间等。修改目前所有账号的口令,确认为强口令。特别是sa账号,需要设置至少10位的强口令。账号安全性低.select*fromsysusersSelectname,Passwordfromsysloginswherepasswordisnullorderbyname#查看口令为空的用户Usemasterexecsp_password‘旧口令’,‘新口令’,用户名恢复用户密码到原来状态Selectname,Passwordfromsysloginswherepasswordisnullorderbyname查看是否有账号为密码高★备注2日志配置2.1.1SHG-Mssql-02-01-01编号名称实施目的问题影响系统当前状态实施步骤回退方案判断依据SHG-Mssql-02-01-01启用日志记录功能数据库应配置日志功能,对用户登录进行记录,记录内容包括用户登录使用的账号、登录是否成功、登录时间以及远程登录时用户使用的IP地址。无法对用户的登陆进行日志记录打开数据库属性,查看安全属性打开数据库属性,选择安全性,将安全性中的审计级别调整为“全部”,身份验证调整为“SQLServer和Windows”设置安全属性到原先状态判定条件登录测试,检查相关信息是否被记录实施风险低重要等级★★★备注3通信协议3.1.1SHG-Mssql-03-01-01编号名称实施目的问题影响系统当前状态实施步骤回退方案判断依据SHG-Mssql-03-01-01网络协议除去不必要的服务增加数据库安全隐患在MicrosoftSQLServer程序组,运行服务网络实用工具,查看协议列表参考配置操作在MicrosoftSQLServer程序组,运行服务网络实用工具。建议只使用TCP/IP协议,禁用其他协议。添加删除的协议判定条件在MicrosoftSQLServer程序组,运行服务网络实用工具,查看协议列表,查看是否有多余协议.实施风险高重要等级★★备注3.1.2SHG-Mssql-03-01-02编号SHG-Mssql-03-01-02名称加固TCP/IP协议栈实施目的加固TCP/IP协议栈,加强系统防御网络攻击能力.问题影响网络防御能力弱.查看Tcpip\Parameters\DisableIPSourceRouting系统当前状态Tcpip\Parameters\EnableICMPRedirectTcpip\Parameters\SynAttackProtect注册表键值参考配置操作对于TCP/IP协议栈的加固主要是某些注册表键值的修改。主要是以下几个:Parameters\DisableIPSourceRouting说明:该键值应设为2,以防御源路由欺骗攻击。实施步骤Parameters\EnableICMPRedirect说明:该键值应设为0,以ICMP重定向。Parameters\SynAttackProtect说明:该键值应设为2,防御SYNFLOOD攻击。回退方案还原注册表更改键值判定条件读取判断依据Parameters\DisableIPSourceRoutingParameters\EnableICMPRedirectParameters\SynAttackProtect键值.实施风险高重要等级★★备注3.1.3SHG-Mssql-03-01-04编号SHG-Mssql-03-01-04名称通讯协议加密实施目的使用通讯协议加密问题影响数据库的不安全性增加系统当前状态启动服务器网络配置工具,查看“常规”设置参