SQL server 基线安全加固操作

  1. 账号管理、认证授权  ELK-Mssql-01-01-01

编号

ELK-Mssql-01-01-01

名称

为不同的管理员分配不同的账号

实施目的

应按照用户分配账号,避免不同用户间共享账号,提高安全性。

问题影响

账号混淆,权限不明确,存在用户越权使用的可能。

系统当前状态

use master

Select name,password from syslogins order by name

记录用户列表

实施步骤

  1. 参考配置操作

sp_addlogin 'user_name_1','password1'

sp_addlogin 'user_name_2','password2'

或在企业管理器中直接添加远程登陆用户

建立角色,并给角色授权,把角色赋给不同的用户或修改用户属性中的角色和权限

  1. 补充操作说明

1、user_name_1和user_name_1是两个不同的账号名称,可根据不同用户,取不同的名称;

回退方案

删除添加的用户

判断依据

询问管理员是否安装需求分配用户账号

实施风险

重要等级

★★★

备注

ELK-Mssql-01-01-02

编号

ELK-Mssql-01-01-02

名称

删除或锁定无效账号

实施目的

删除或锁定无效的账号,减少系统安全隐患。

问题影响

允许非法利用系统默认账号

系统当前状态

use master

Select name,password from syslogins order by name

记录用户列表

实施步骤

1、参考配置操作

Mssql企业管理器-> SQL Server组

->(Local)(Windows NT)->安全性->登录

在用户上点右键选择删除

回退方案

增加删除的帐户

判断依据

询问管理员,哪些账号是无效账号

实施风险

重要等级

★★★

备注

 ELK-Mssql-01-01-03

编号

ELK-Mssql-01-01-03

名称

限制启动账号权限

实施目的

限制账号过高的用户启动sql server

问题影响

启动mssql的账号权限过高,会导致其子进程具有相同权限.

系统当前状态

Mssql企业管理器-> SQL Server组

->(Local)(Windows NT)-属性(右键)-安全性

实施步骤

1、参考配置操作

新建SQL server服务账号后,建议将其从User组中删除,且不要把该账号提升为Administrators组的成员。授予以下windows SQLRunAs账户最少的权限启动 SQL Server数据库。

回退方案

替换会原来启动账号

判断依据

判定条件

查看启动账号权限.

实施风险

重要等级

★★★

备注

​​​​​​​ ELK-Mssql-01-01-04

编号

ELK-Mssql-01-01-04

名称

权限最小化

实施目的

在数据库权限配置能力内,根据用户的业务需要,配置其所需的最小权限。

问题影响

账号权限越大,对系统的威胁性越高

系统当前状态

记录用户拥有权限

实施步骤

  1. 参考配置操作
  1. 更改数据库属性,取消业务数据库帐号不需要的服务器角色;
  2. 更改数据库属性,取消业务数据库帐号不需要的“数据库访问许可”和“数据库角色中允许”中不需要的角色。
  1. 补充操作说明

操作a)用于修改数据库帐号的最小系统角色

操作b)用于修改用户多余数据库访问许可权限和数据库内角色

回退方案

还原添加或删除的权限

判断依据

业务测试正常

实施风险

重要等级

备注

​​​​​​​ ELK-Mssql-01-01-05

编号

ELK-Mssql-01-01-05

名称

数据库角色

实施目的

使用数据库角色(ROLE)来管理对象的权限。

问题影响

账号管理混乱

系统当前状态

记录对应数据库用户角色权限

实施步骤

  1. 企业管理器-〉数据库-〉对应数据库-〉角色-中创建新角色;
  2. 调整角色属性中的权限,赋予角色中拥有对象对应的SELECT、INSERT、UPDATE、DELETE、EXEC、DRI权限

回退方案

删除相应的角色

判断依据

对应用户不要赋予不必要的权限

实施风险

重要等级

备注

​​​​​​​ELK-Mssql-01-01-06

编号

ELK-Mssql-01-01-06

名称

空密码

实施目的

对用户的属性进行安全检查,包括空密码、密码更新时间等。修改目前所有账号的口令,确认为强口令。特别是sa 账号,需要设置至少10位的强口令。

问题影响

账号安全性低.

系统当前状态

select * from sysusers

Select name,Password from syslogins where password is null order by name # 查看口令为空的用户

实施步骤

Use master

exec sp_password ‘旧口令’,‘新口令’,用户名

回退方案

恢复用户密码到原来状态

判断依据

Select name,Password from syslogins where password is null order by name

查看是否有账号为密码

实施风险

重要等级

备注

日志配置  ELK-Mssql-02-01-01

编号

ELK-Mssql-02-01-01

名称

启用日志记录功能

实施目的

数据库应配置日志功能,对用户登录进行记录,记录内容包括用户登录使用的账号、登录是否成功、登录时间以及远程登录时用户使用的IP地址。

问题影响

无法对用户的登陆进行日志记录

系统当前状态

打开数据库属性,查看安全属性

实施步骤

打开数据库属性,选择安全性,将安全性中的审计级别调整为“全部”,身份验证调整为“SQL Server 和Windows”

回退方案

设置安全属性到原先状态

判断依据

判定条件

登录测试,检查相关信息是否被记录

实施风险

重要等级

★★★

备注

通信协议 ELK-Mssql-03-01-01

编号

ELK-Mssql-03-01-01

名称

网络协议

实施目的

除去不必要的服务

问题影响

增加数据库安全隐患

系统当前状态

在Microsoft SQL Server程序组, 运行服务网络实用工具,查看协议列表

实施步骤

参考配置操作

在Microsoft SQL Server程序组, 运行服务网络实用工具。建议只使用TCP/IP协议,禁用其他协议。

回退方案

添加删除的协议 

判断依据

判定条件

在Microsoft SQL Server程序组, 运行服务网络实用工具,查看协议列表,查看是否有多余协议.

实施风险

重要等级

★★

备注

​​​​​​​ELK-Mssql-03-01-02

编号

ELK-Mssql-03-01-02

名称

加固TCP/IP协议栈

实施目的

加固TCP/IP协议栈,加强系统防御网络攻击能力.

问题影响

网络防御能力弱.

系统当前状态

查看

HKLM\System\CurrentControlSet\Services\

Tcpip\Parameters\ DisableIPSourceRouting

HKLM\SYSTEM\CurrentControlSet\Services\

Tcpip\Parameters\ EnableICMPRedirect

HKLM\System\CurrentControlSet\Services\

Tcpip\Parameters\SynAttackProtect

注册表键值

实施步骤

参考配置操作

对于TCP/IP协议栈的加固主要是某些注册表键值的修改。主要是以下几个:

HKLM\System\CurrentControlSet\Services\Tcpip\

Parameters\DisableIPSourceRouting

说明:该键值应设为2,以防御源路由欺骗攻击。

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\

Parameters\EnableICMPRedirect

说明:该键值应设为0,以ICMP重定向。

HKLM\System\CurrentControlSet\Services\Tcpip\

Parameters\SynAttackProtect

说明:该键值应设为2,防御SYN FLOOD攻击。

回退方案

还原注册表更改键值

判断依据

判定条件

读取

HKLM\System\CurrentControlSet\Services\Tcpip\

Parameters\ DisableIPSourceRouting

HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\

Parameters\ EnableICMPRedirect

HKLM\System\CurrentControlSet\Services\Tcpip\

Parameters\SynAttackProtect

键值.

实施风险

重要等级

★★

备注

​​​​​​​ ELK-Mssql-03-01-04

编号

ELK-Mssql-03-01-04

名称

通讯协议加密

实施目的

使用通讯协议加密

问题影响

数据库的不安全性增加

系统当前状态

启动服务器网络配置工具,查看“常规”设置

实施步骤

参考配置操作

启动服务器网络配置工具,更改“常规”设置为“强制协议加密”。

回退方案

恢复“强制协议加密”到原状态

判断依据

启动服务器网络配置工具,查看“常规”设置

实施风险

重要等级

备注

设备其他安全要求 ELK-Mssql-04-01-01

编号

ELK-Mssql-04-01-01

名称

停用不必要的存储过程

实施目的

停用sql server中存在的危险存储过程

问题影响

数据库的不安全性增加

系统当前状态

查看存储过程列表

SQL server 基线安全加固操作_第1张图片

实施步骤

参考配置操作

use master
exec sp_dropextendedproc 'xp_cmdshell'
exec sp_dropextendedproc 'xp_dirtree'
exec sp_dropextendedproc 'xp_enumgroups'
exec sp_dropextendedproc 'xp_fixeddrives'
exec sp_dropextendedproc 'xp_loginconfig'
exec sp_dropextendedproc 'xp_enumerrorlogs'
exec sp_dropextendedproc 'xp_getfiledetails'
exec sp_dropextendedproc 'Sp_OACreate'
exec sp_dropextendedproc 'Sp_OADestroy'
exec sp_dropextendedproc 'Sp_OAGetErrorInfo'
exec sp_dropextendedproc 'Sp_OAGetProperty'
exec sp_dropextendedproc 'Sp_OAMethod'
exec sp_dropextendedproc 'Sp_OASetProperty'
exec sp_dropextendedproc 'Sp_OAStop'
exec sp_dropextendedproc 'Xp_regaddmultistring'
exec sp_dropextendedproc 'Xp_regdeletekey'
exec sp_dropextendedproc 'Xp_regdeletevalue'
exec sp_dropextendedproc 'Xp_regenumvalues'
exec sp_dropextendedproc 'Xp_regread'
exec sp_dropextendedproc 'Xp_regremovemultistring'
exec sp_dropextendedproc 'Xp_regwrite'
drop procedure sp_makewebtask

Go

删除测试或不必要的存储过程,一般情况下建议删除的存储过程有:

sp_OACreate

sp_OADestroy

sp_OAGetErrorInfo

sp_OAGetProperty

sp_OAMethod

sp_OASetProperty

sp_OAStop

sp_regaddmultistring

xp_regdeletekey

xp_regdeletevalue

xp_regenumvalues

xp_regremovemultistring

除非应用程序需要否则以下存储过程也建议删除:

xp_perfend

xp_perfmonitor

xp_perfsample

xp_perfstart

xp_readerrorlog

xp_readmail

xp_revokelogin

xp_runwebtask

xp_schedulersignal

xp_sendmail

xp_servicecontrol

xp_snmp_getstate

xp_snmp_raisetrap

xp_sprintf

xp_sqlinventory

xp_sqlregister

xp_sqltrace

xp_sscanf

xp_startmail

xp_stopmail

xp_subdirs

xp_unc_to_drive

xp_dirtree

sp_sdidebug

xp_availablemedia

xp_cmdshell

xp_deletemail

xp_dirtree

xp_dropwebtask

xp_dsninfo

xp_enumdsn

xp_enumerrorlogs

xp_enumgroups

xp_enumqueuedtasks

xp_eventlog

xp_findnextmsg

xp_fixeddrives

xp_getfiledetails

xp_getnetname

xp_grantlogin

xp_logevent

xp_loginconfig

xp_logininfo

xp_makewebtask

xp_msver

回退方案

新建存储过程将删除的手工建立或恢复备份的数据库

判断依据

调用存储过程,检查是否存在

Exec 存储过程(参数1,参数2)

实施风险

重要等级

备注

​​​​​​​ELK-Mssql-04-01-02

编号

ELK-Mssql-04-01-02

名称

安装补丁

实施目的

为系统打最新的补丁包。

问题影响

数据库的不安全性增加

系统当前状态

select @@version

实施步骤

参考配置操作

select @@version

确保SQL Server的补丁为最新的。下载并安装最新的补丁

SQL Server2000的版本和补丁号对应关系如下:

8.00.194 -------SQL Server 2000 RTM

8.00.384 -------(SP1)

8.00.534 -------(SP2)

8.00.760 -------(SP3)

8.00.2039-------(SP4)

回退方案

判断依据

微软自动升级工具查看未安装补丁

实施风险

重要等级

备注

你可能感兴趣的:(数据库,安全,安全,数据库,运维,服务器)