收藏 分销(赏)

中国移动SQLServer数据库安全配置手册模板.doc

上传人:w****g 文档编号:2510334 上传时间:2024-05-31 格式:DOC 页数:68 大小:521.54KB
下载 相关 举报
中国移动SQLServer数据库安全配置手册模板.doc_第1页
第1页 / 共68页
中国移动SQLServer数据库安全配置手册模板.doc_第2页
第2页 / 共68页
中国移动SQLServer数据库安全配置手册模板.doc_第3页
第3页 / 共68页
中国移动SQLServer数据库安全配置手册模板.doc_第4页
第4页 / 共68页
中国移动SQLServer数据库安全配置手册模板.doc_第5页
第5页 / 共68页
点击查看更多>>
资源描述

1、密 级:文档编号:项目代号:中国移动SQLServer数据库安全配置手册Version 0.2中国移动通信二零零四年十二月拟 制:审 核:批 准:会 签:标准化:版本控制版本号日期参与人员更新说明分发控制编号读者文档权限和文档关键关系1创建、修改、读取负责编制、修改、审核2同意负责本文档同意程序3标准化审核作为本项目标标准化责任人,负责对本文档进行标准化审核4读取5读取目 录第1章目标和范围11.1目标11.2适用范围11.3阅读指南21.4参考规范2第2章数据库安全规范32.1操作系统安全42.1.1安装数据库42.1.2注册表设置62.1.3系统服务62.1.4文件目录访问权限设置72.1

2、.5文件共享设置82.2帐户安全82.3密码安全102.4访问权限112.5日志统计142.6加密152.7管理员用户端安全152.8网络端口162.9安全补丁172.10其它18第3章SQLSERVER安全配置方法193.1操作系统安全193.1.1数据库安装193.1.2注册表设置203.1.3系统服务203.1.4文件目录访问权限213.1.5文件共享223.2帐户安全233.3密码安全233.4访问权限243.5日志统计263.6加密273.7管理员用户端安全283.8网络安全293.8.1不要让人随便探测到你TCP/IP端口293.8.2修改TCP/IP使用端口293.8.3拒绝来自

3、1434端口探测303.8.4对网络连接进行IP限制313.9安全补丁31第4章保持SQL SERVER 数据库服务器安全344.1定时实施备份344.2审核组组员身份344.3监控审核日志354.4确保安装最新 Service Pack 和修补程序354.5实施安全评定364.6使用安全性通告服务364.7远程管理374.8小结39附录1:SQL SERVER 数据库服务器安全概述40SQL Server 安全模型40保护服务器访问安全47保护数据库访问安全48附录2:SQL SERVER 数据库服务器安全威胁模型53SQL 注入54网络窃听56未经授权服务器访问57密码破解58附录3:SQ

4、LSERVER安全配置检验表59第1章 目标和范围1.1 目标为了加强中国移动集团下属各企业网络系统安全管理,全方面提升中国移动集团下属各企业业务网和办公网网络安全水平,确保网络通信通畅和信息系统正常运行,提升网络服务质量,特制订本方法。本文档意在于规范中国移动集团下属各企业对SQLServer数据库进行安全加固。1.2 适用范围本方法适适用于对中国移动集团下属各企业业务网和办公网系统数据库系统加固进行指导。本体系适适用于中国移动集团下属各企业各层组织体系安全管理机构和安全管理员、系统管理员。本体系管理范围包含中国移动集团下属各企业全部业务网和办公网系统范围内SQLServer数据库系统、附着

5、其上数据资产和数据库系统技术人员等。微软SQLServer 产品家族包含7个版本,能够运行在掌上电脑、一般32位IA架构服务器和64位非IA架构服务器上,本手册只针对应用最广泛SQLServer企业版和标准版,并约定它们运行服务器操作系统为Windows /服务器标准版和企业版。1.3 阅读指南为提升本手册应用价值,我们将安全规范总结成为一个检验表,附在手册第二章第9节,管理员能够根据这个检验表逐项检验本系统是否符合安全规范要求。应用程序对数据库系统安全也相关键影响,限于篇幅,本体系只提出对应用程序加固设计标准和参考资料,各单位可依据这些标准和实际情况进行安全检验,以避免应用系统称为整体系统安

6、全软肋。在SQLServer资源工具箱中,微软提供了更全方面SQLServer安全理论和实践,推荐各位安全管理员阅读。1.4 参考规范1. ISO/IEC 17799-信息安全管理实用规则2. ISO/IEC 13335信息技术安全管理指南3. ISO 7498-2信息处理系统开放系统互连基础参考模型-安全体系结构4. SSE-CMM系统安全工程能力成熟模型5. GB/T18336-信息技术 安全技术 信息技术安全性评定准则6. GB/T17859-1999计算机信息系统安全等级保护划分准则7. 中国移动业务支撑系统安全框架8. 中国移动业务连续性技术规范9. 中国移动业务支撑系统安全技术规范

7、10. 中国移动业务支撑系统安全总体技术规范11. SQL Server 资源工具箱第2章 数据库安全规范 加固SQLServer微软SQLServer 产品家族包含7个版本,本手册只针对对应用最广泛SQLServer企业版和标准版,并约定它们运行服务器操作系统为Windows /服务器标准版和企业版数据库操作,包含对网络、主机、数据库和应用程序加固限于篇幅,本文不再讨论对Windows/操作系统加固,请读者参考Windows/主机加固手册。,和对数据库系统安全管理等5个方面,所以,数据库安全规范也包含了上述5个方面内容。以下图所表示:图2.1:数据库安全规范分类基于易用性、实用性和方便管理标

8、准,本手册将关键讨论操作系统安全、帐户安全、密码安全、访问权限安全、日志统计、加密、管理员用户端安全、网络和安全补丁等9个方面规范。2.1 操作系统安全操作系统安全规范包含数据库安装、注册表设置、系统服务、文件目录访问权限设置和文件共享五部分内容。对Windows /操作系统加固,请阅读相关配置手册,并可用MSBP(微软安全基准分析工具)定时检验。2.1.1 安装数据库安装 SQL Server 时,除程序和数据文件外,还会安装多个 Windows 系统服务。默认情况下,程序及数据文件在 Program FilesMicrosoft SQL Server 目录下。项目具体资料服务l MSSQL

9、SERVERl MSSQLServerADHelperl Microsoft Searchl SQLSERVERAGENT文件夹l program filesMicrosoft SQL Servermssqlbinn(程序文件)l program filesMicrosoft SQL Servermssqldata(数据文件,包含 .mdf、.log 和 .ndf)l program filesMicrosoft SQL Server80tools(共享工具/联机丛书)l program filesMicrosoft SQL Servermssqllogs(错误日志)l program fil

10、esMicrosoft SQL Servermssqlbackup(备份文件)l program filesMicrosoft SQL Servermssqljobs(临时作业输出文件)对于命名实例,文件路径中使用了实例名:l program filesMicrosoft SQL ServerMSSQL$实例名binnl program filesMicrosoft SQL ServerMSSQL$实例名data数据库安装应遵照以下规范项目安全规范准备工作1. 创建一个含有最低权限当地帐户,须经过它来运行 SQL Server 服务。安装过程中提醒进行服务设置时,请使用此帐户。请一定不要使用当

11、地系统帐户或管理员帐户(除非应用系统需要)2. 确保不要在域控制器上安装 SQL Server3. 确保在 NTFS 格式分区上安装 SQL Server4. 在非系统卷(操作系统所在卷以外其它卷)上安装 SQL Server 程序及数据库文件安装1. 在生产服务器上安装 SQL Server 时,请选择自定义安装选项2. 不应在生产数据库服务器上安装表 3.2 中所列项目a) 升级工具:用于升级 SQL Server 6.5b) 复制支持:数据库用于复制脚本及二进制文件。(假如不需要进行复制,请不要安装)c) 全文搜索:全文搜索引擎(Microsoft Search 服务)。假如不需要进行全

12、文搜索,请不要安装d) 联机丛书:SQL Server 文档e) 开发工具:C 开发人员所使用标头和库文件、Microsoft 数据访问 (MDAC)、XML 软件开发工具包 (SDK)及用于存放过程调试接口f) 代码实例:用于为开发人员提供指导示例代码3. 身份认证:请选择 Windows 身份验证模式,除非应用系统必需要求混合模式(使用SQLServer帐号而不是AD帐号)。Windows 身份验证有下列优点:a) 实现帐户和密码统一管理和安全策略b) 凭据不在网络上传送,而是使用标准Kerbero v5认证协议c) 应用程序数据库连接不要求提供凭据假如应用系统必需要求“混合模式”,请为

13、sa 帐户创建一个强密码,并制订密码安全管理策略,sa 帐户是密码猜测和字典攻击首选目标2.1.2 注册表设置项目安全规范限制对SQLServer创建注册表项目标访问权限安装 SQL Server 会创建以下注册表项和子项: 对于默认实例:HKEY_LOCAL_MACHINESOFTWAREMICROSOFTMSSQLSERVER 对于命名实例:HKEY_LOCAL_MACHINESOFTWAREMICROSOFTMICROSOFT SQL SERVERINSTANCENAME 对于 SQL 服务:HKEY_LOCAL_MACHINESYSTEMCurrentControlSetService

14、sMSSQLSERVER应该确保EveryOne组不能含有权限访问上述注册表键值权限保护SAM数据库假如SQLServer没有被AD管理,则Windows当地帐户信息存放在本机SAM数据库中,独立服务器在当地 SAM 数据库中存放帐户名称和单向密码哈希 (LMHash),该数据库是注册表组成部分。通常只有 Administrators 组组员才含有对帐户信息访问权限。尽管实际上密码并不存放于 SAM 中,且密码哈希不可逆,但假如攻击者取得了 SAM 数据库副本,便可利用强力攻击密码破解技术来取得有效凭据。所以,应以下所表示在注册表中创建键(不是值)NoLMHash,严禁在 SAM 中存放 LM

15、Hash相关具体信息,请参阅 Microsoft 知识库文章 299656 How to Prevent Windows from Storing a LAN Manager Hash of Your Password in Active Directory and Local SAM Databases(英文)。HKLMSystemCurrentControlSetControlLSANoLMHash2.1.3 系统服务要降低受攻击面并确保不受未发觉服务漏洞影响,请禁用任何非必需服务。运行那些仍使用最低权限帐户服务。项目安全规范SQLServer服务SQL 服务安装程序运行期间将安装以下四个

16、 Windows 服务:l MSSQLSERVER(对于命名实例,则为 MSSQL$InstanceName)。此为 SQL Server 数据库引擎,是唯一强制安装服务。l SQLSERVERAGENT(对于命名实例,则为 SQLAgent$InstanceName)。可借助此支持服务制订命令实施计划及在犯错时通知操作人员。l MSSQLServerADHelper。它可提供 Active Directory 集成服务,包含数据库实例注册。l Microsoft Search。它可提供全文搜索能力。在任何情况下均须经过当地系统帐户来运行此服务。l Microsoft DTC:提供分布式事务控

17、制能力,假如不经过 Microsoft DTC 使用分布式事务,请禁用该服务。只有 MSSQLSERVER 数据库引擎是必备。其它服务提供了附加功效,只在特定情况下才需要使用。如并非必需,请禁用这些服务。服务帐号不应将 SQL Server 配置为以当地系统帐户或当地 Administrators 组任何组员帐户运行。相关配置用于运行 MSSQLSERVER 服务帐户2.1.4 文件目录访问权限设置除利用 ACL 确保操作系统文件安全外,还要强化 NTFS 权限来限制对 SQL Server 程序文件、数据文件、日志文件和系统级工具访问。另外,还应只许可 SQL Server 服务帐户访问其所

18、需内容。位置SQL 服务帐户权限安装位置(Program FilesMicrosoft SQL ServerMSSQL)读取并实施列出文件夹内容读取数据库文件目录(.mdf、.ndf、.ldf 文件)(Program FilesMicrosoft SQL ServerMSSQLData)完全控制错误日志文件目录(Program FilesMicrosoft SQL ServerMSSQLLOG)完全控制备份文件目录(Program FilesMicrosoft SQL ServerMSSQLBackup)完全控制作业临时文件输出目录(Program FilesMicrosoft SQL Ser

19、verMSSQLJobs)完全控制2.1.5 文件共享设置取消全部不使用共享,并强化对任何须需共享 NTFS 权限。默认情况下,全部用户对新创建文件共享均含有完全控制权限。应强化这些默认权限,以确保只有经授权用户才能访问共享所展露文件。除了要对共享所展露文件和文件夹使用显式共享权限外,还应该对它们使用 NTFS ACL。假如不许可对计算机进行远程管理,请取消所以而不使用管理共享,比如 C$ 和 Admin$。注意:一些应用程序可能要求有诸如 Microsoft Management Server (SMS) 或 Microsoft Operations Manager (MOM) 等管理共享。

20、相关具体信息,请参阅 Microsoft 知识库文章 318751 How To:Remove Administrative Shares in Windows or Windows NT 4.0(英文)。2.2 帐户安全下面内容假定读者已经读过附录1:SQLServer 数据库服务器安全概述,熟悉了SQLServer安全模型。为保护帐户安全,应遵照以下标准:项目内容确保 SQL Server 服务帐户安全1. 使用最低权限帐户运行 SQL Server 服务可将设法从 SQL Server 实施操作系统命令攻击者所造成危害降至最低水平。不应为 SQL Server 服务帐户授予诸如 Admi

21、nistrators 组组员身份等较高特权2. 假如出于一些目标(比如,实施网络备份、进行复制或日志传送)需要从 SQL Server 访问网络资源,SQL Server 服务帐户必需能够在网络内经过身份验证,提议使用最低权限AD域帐户删除或禁用不使用帐户在 SQL Server SP3 安装过程中,Sqldbreg2.exe 将创建“调试程序”帐户。VisualStudio .NET 将在调试所管理 .NET 代码中存放过程时使用该帐户。因为该帐户唯一用途就是为调试提供支持,所以能够从生产数据库服务器中将其删除禁用 Windows 贵宾帐户Windows 贵宾帐户是匿名连接计算机时所使用帐户

22、。要限制到数据库服务器匿名连接,请使该帐户保持在禁用状态重命名管理员帐户默认当地管理员帐户因其在计算机上享受较高特权而成为恶意使用目标。要提升安全性,请重命名默认管理员帐户,并为其指定一个强密码强制实施强密码策略为防范密码猜测和强力字典攻击,应经过配置安全策略来应用强密码策略。这部分具体内容见下一节:密码安全限制远程登录使用“当地安全策略”工具从 Everyone 组中删除“从网络访问此计算机”用户权限,以对可远程登录服务器者施加限制禁用空会话(匿名登录)为了预防匿名访问,请禁用空会话。空会话是未经身份验证或匿名用户在两台计算机间建立会话。假如不禁用空会话,攻击者便可匿名(即,不需要进行身份验

23、证)连接到服务器其它标准1. 要求帐户委派同意。无尤其同意,请不要在 Active Directory 中将域帐户标识为信任委派。2. 不要使用共享帐户。请不要创建供多人使用共享帐户。为经授权个人提供其专用帐户。可对各人活动分别进行审核,并对应分配组组员身份和特权。3. 限制当地 Administrators 组组员身份。理想情况是,管理帐户不超出两个。这有利于提供可说明性。同时,请不要共享密码,这也是为了提供可说明性。4. 限制管理员帐户进行交互式登录。假如只实施当地管理,则取消“从网络访问此计算机”以拒绝授予网络登录权限,便可限制管理员帐户进行交互式登录。这么做能够预防用户(不管出于善意还

24、是其它动机)利用管理员帐户远程登录到服务器。假如当地管理策略灵活性太差,可实施安全远程管理。相关远程管理具体信息,请参阅本模块后文中远程管理。5. 启用 NTLMv2 身份验证:假如用户端计算机利用 Windows 身份验证连接到数据库服务器,则应该对数据库服务器进行配置,让其使用安全性最高 Windows 身份验证版本,即 NTLMv2注意:要支持 NTLMV2,用户端必需运行 Windows 、Windows Server 或 Windows NT 4.0操作系统,并安装 Service Pack 42.3 密码安全不管是使用AD帐户还是SQLServer帐户,全部应确保其密码符合强安全策

25、略。1. 设置密码长度和复杂性。强制实施强密码降低了密码猜测或字典攻击成功几率。2. 设置密码过期。定时使密码失效可降低旧密码被用来进行未经授权访问几率。使用期确实定通常以企业安全策略作为指导。下表为默认和提议密码策略设置:密码策略默认设置提议最低设置强制密码历史记忆 1 个密码记忆 24 个密码密码最长久限42 天42 天最短密码期限0 天2 天最短密码长度0 个字符8 个字符密码必需符合复杂性要求禁用启用为域中全部用户均设置使用可逆加密强密码禁用禁用另外,还应统计失败登录尝试,以检测和跟踪恶意行为。相关具体信息,请参阅第五节:日志统计相关密码策略具体信息,请参阅 Microsoft Tec

26、hNet 网站上“Best Practices”,其网址为 (英文)。2.4 访问权限请根据以下规范来改善数据库中授权设置:项目说明使用强 sa(系统管理员)密码默认系统管理员 (sa) 帐户一直是无数攻击目标。它是 SQL Server 管理固定服务器角色 sysadmin默认组员,请确保对此帐户使用强密码。1. 即便将身份验证从 SQL 改为 Windows,sa 仍然处于活动状态2. 对全部帐户,尤其是特权帐户(如 sysadmin 和 db_owner 角色组员)均使用强密码。假如使用复制,请给用于和远程分布式服务器建立连接distributor_admin 帐户也使用强密码。删除 S

27、QL 贵宾用户帐户假如启用了 Windows 贵宾帐户,则安装 SQL Server 时会创建一个贵宾用户帐户。假如登录有对 SQL Server 访问权限,但没有经过数据库用户帐户对数据库进行访问权限,则登录便会含有贵宾身份提议禁用 Windows 贵宾帐户。另外,还要从全部用户定义数据库中删除贵宾帐户。请注意,无法从 master、tempdb、复制及分发数据库中删除贵宾帐户删除 BUILTINAdministrators 服务器登录默认情况下,系统会将 BUILTINAdministrators 当地 Windows 组添加到 sysadmin 固定服务器角色,以对 SQL Server

28、 进行管理。这意味着作为 BUILTINAdministrators 组员域管理员能够不受限制地访问 SQL Server 数据库。大多数企业会对域管理员和数据库管理员角色加以区分。假如要进行这种区分,请删除 BUILTINAdministrators SQL Server 登录。一个好做法是,按以下步骤中所表示,专门创建这么一个 Windows 组:它位置中包含特定数据库管理,并被作为服务器登录添加到SQL Server 中不为公共角色授予权限全部数据库均包含一个公共数据库角色。每个其它用户、组和角色全部是该公共角色组员。您无法删除公共角色组员,不过,能够不为授予对应用程序数据库表、存放过程

29、及其它对象访问权限公共角色授予权限。不然,便无法利用用户定义数据库角色取得所需授权,因为公共角色会为数据库中用户授予默认权限确保留放过程安全限制对应用程序存放过程访问。请不要为公共角色或贵宾用户授予对所创建任何存放过程访问权限。确保留放过程安全关键防线先是要确保使用强身份验证,然后是提供正确授权,从而实现只许可必需用户权限来运行存放过程。提议做法是:为应用程序创建一个 SQL Server 登录,将登录映射到数据库用户,再将用户添加到用户定义数据库角色,然后为角色授予权限。确保扩展存放过程安全对于下列存放过程,管理员才能有权利访问sp_sdidebugxp_availablemediaxp_c

30、mdshellxp_deletemailxp_dirtreexp_dropwebtaskxp_dsninfoxp_enumdsnxp_enumerrorlogsxp_enumgroupsxp_enumqueuedtasksxp_eventlogxp_findnextmsgxp_fixeddrivesxp_getfiledetailsxp_getnetnamexp_grantloginxp_logeventxp_loginconfigxp_logininfoxp_makewebtaskxp_msver xp_regreadxp_perfendxp_perfmonitorxp_perfsample

31、xp_perfstartxp_readerrorlogxp_readmailxp_revokeloginxp_runwebtaskxp_schedulersignalxp_sendmailxp_servicecontrolxp_snmp_getstatexp_snmp_raisetrapxp_sprintfxp_sqlinventoryxp_sqlregisterxp_sqltracexp_sscanfxp_startmailxp_stopmailxp_subdirsxp_unc_to_drivexp_dirtree 限制 cmdExec 对 sysadmin 角色访问权限SQL Server

32、 代理使用 cmdExec 函数来实施 Windows 命令行应用程序和其排定脚本。在 SQL Server Service Pack 3 之前版本中,默认情况下 SQL Server 代理许可非 sysadmin 角色所属用户排定可能需要特许系统访问权限作业。应该对此设置进行更改,以只许可 sysadmin 角色组员排定作业其它1. 限制 sysadmin 组员数。为确保实现个体可说明性,请限制作为 sysadmin 角色组员帐户数量。理想情况下,此角色组员用户不应超出两位。2. 授予受限数据库权限。只为帐户分配完成作业所绝对必需权限。应避免使用诸如 db_datareader 和 db_d

33、atawriter 等内置角色。这些角色不提供任何授权粒度,并含有对全部自定义数据库对象访问权限。3. 不要更改应用于 SQL Server 对象默认权限。在 SQL Server Service Pack 3 之前版本中,公共角色不含有对多种默认 SQL Server 数据库对象访问权限。在 Service Pack 3 中,对安全性设计进行了复审,并经过在非必需处删除公共角色及实施更为正确角色检验提升了安全性4. 限制对敏感命令及存放过程访问。SQL Server 提供了功效强大和操作系统挂接。比如,能够使用 xp_cmdshell 扩展存放过程来运行任何操作系统命令。假如攻击者设法(比如

34、,利用 SQL注入漏洞)做到了在数据库中随意运行命令,则只有用于运行 SQL Server 帐户安全凭据才能限制其实施操作系统命令能力。这便是经过最低权限帐户来运行 SQL Server 关键原因2.5 日志统计管理员可利用Windows 操作系统级审核和 SQL Server 登录审核统计系统事件。具体规范以下:类别解释和说明统计全部失败 Windows 登录尝试系统会以事件形式将 Windows 登录失败统计在 Windows 安全事件日志中。以下事件 ID 表示存在可疑情况:l 531:这表示尝试使用已禁用帐户进行了登录。l 529:这表示尝试使用未知用户帐户或使用密码无效有效用户帐户进

35、行了登录。这些审核事件数量意外增加可能预示着有些人在尝试猜测密码。统计文件系统中全部失败操作系统将失败审核事件统计在 Windows 安全事件日志中,对文件系统进行 NTFS 审核来检测可能存在恶意尝试。这一过程分为两个步骤: 启用日志统计 审核文件系统中失败操作启用 SQL Server 登录审核将SQLServer审核等级设置为“全部”或“失败”2.6 加密加密表现在利用EFS(加密文件系统)对数据库文件进行加密和网络协议加密两个层次,因为应用加密全部会影响性能,所以提议由管理员根据实际需求进行处理。这部分规范以下表所表示:类别解释和说明网络协议加密考虑到性能和通用型,提议采取VPN或IP

36、Sec技术对网络通信进行加密,尽可能不要直接利用SQLServer提供网络加密功效文件加密具体内容请参考TechNet 文章“Step-by-Step Guide to Encrypting File System (EFS)”,其网址为使用 EFS 时应注意以下事项:l 应该对数据库文件 (.MDF) 而不是日志文件 (.LDF) 进行加密。假如对日志文件加密,SQLServer 便无法打开数据库。l 应在文件级而不是目录级进行加密。尽管使用 EFS 时最好做法往往是在目录级进行加密,方便自动加密新添加文件,但仍应只在文件级对 SQL Server 数据文件加密,因为这么能够避免将日志文件加

37、密。l 评定性能成本。使用 EFS 会造成性能下降。在现在环境中使用 EFS 前请对其进行测试,以确定对性能实际影响。通常能够忽略这种性能下降,因为该过程开启时,数据文件解密是由SQL Server 来完成2.7 管理员用户端安全SQLServer提供管理用户端软件为企业管理器和SQLServer跟踪工具,应限定管理员只能从指定管理终端上访问SQLServer服务器,具体规范以下:类别解释和说明限定管理员只能从指定终端上使用管理工具连接服务器SQLServer管理工具使用RPC协议和服务器进行通信,经过在防火墙上设定许可使用TCP445端口终端IP地址,能够限定管理员只能从指定终端上访问SQL

38、Server服务器限定管理员只能从指定终端经过远程桌面操作服务器远程桌面使用TCP3389端口,经过在防火墙上设定许可使用TCP3389端口终端IP地址,能够限定管理员只能从指定终端上访问SQLServer服务器2.8 网络端口默认情况下,SQL Server 会侦听 TCP 端口 1433,并将 UDP 端口 1434 用于用户端和服务器间协商。应结合使用防火墙和 IPSec 策略来限制对这些端口访问,从而将攻击者可兹利用攻击路径降至最低水平。提议安全配置规范以下:类别解释和说明限制对 SQL Server 端口访问利用外围防火墙来预防 Internet 对 SQL Server 端口(默认

39、情况下为 TCP 端口 1433 和 UDP 端口1434)进行直接访问,但这并不能预防服务器遭受内部攻击。对 IPSec 策略进行配置,以限制被设计为和数据库连接 Web 或应用程序服务器经过 TCP 端口 1433 和 UDP 端口 1434 进行访问配置命名实例来侦听同一端口默认情况下,SQL Server 命名实例会动态分配端口号,并对用户端使用 UDP 协商,以使用户端能够找到命名实例。为避免在内部防火墙开放一列端口号或不得不创建多个 IPSec 策略,应使用“Server网络实用工具”来配置实例,使其侦听特定端口号假如重新配置了服务器端口号,则还必需重新配置全部用户端,以确保它们能

40、够连接到正确端口号。您或许能够使用用户端网络实用工具,但不应在 Web 服务器上安装此实用工具,而应由应用程序经过将端口号附加于 Server 或 Data Source 属性,在其连接字符串中指定该端口号,如以下代码中所表示。Server=YourServer|YourServerIPAddress,PortNumber配置防火墙来支持 DTC 通信(如有必需)假如应用程序使用企业服务 (COM+) 事务,并要求 DTC 服务,则可能必需对将 Web 应用程序和数据库服务器隔离开防火墙进行专门配置,以在不一样 DTC 实例间及 DTC 和 SQL Server 间实现 DTC通信。相关为 D

41、TC 开放端口具体信息,请参阅 Microsoft 知识库文章 250367 INFO:Configuring Microsoft Distributed Transaction Coordinator (DTC) to Work Through a Firewall(英文)。其它考虑以下图中所表示,使用 Server 网络实用工具“隐藏服务器”选项。假如在 SQL 网络实用工具 TCP/IP 属性对话框中选择了此选项,系统会重新配置 SQL Server,使其侦听端口 2433。该选项还会严禁对尝试枚举 SQL Server 实例用户端所发出广播要求做出响应。因为能够采取多个方法枚举端口以发

42、觉其位置,所以还不能依靠这一方法来完全隐藏 SQL Server 端口。注意:仅当存在单一 SQL Server 实例时,才能使用此选项。相关具体信息,请参阅 Microsoft 知识库文章 308091 BUG:Hide Server Option Cannot Be Used on Multiple Instances of SQL Server (英文)。2.9 安全补丁不立即安装最新修补程序和更新程序为攻击者提供了充足利用已知漏洞实施攻击机会。应确定是否使用最新 Windows / 和 SQL Server Service Pack 及更新程序对数据库服务器进行了更新。并确保在生产服务

43、器上安装修补程序和更新程序前,尽可能模拟生产服务器环境测试系统上对它们进行测试。具体操作步骤:2.10 其它1. 在数据库服务器上安装证书。假如使用 Windows 身份验证(NTLM 或 Kerberos),系统不会经过网络向 SQL Server 传送登录凭据。假如使用 SQL 身份验证,好做法是对凭据加密,因为它们是以未加密格式被传送给 SQL Server 。经过在数据库服务器上安装证书来进行加密。这么做结果是,在网络中传送 SQL 凭据会被自动加密。确保应用程序安全地存放了数据库连接字符串也是一个好做法。2. 限制对敏感命令及存放过程访问。SQL Server 提供了功效强大和操作系

44、统挂接。比如,能够使用 xp_cmdshell 扩展存放过程来运行任何操作系统命令。假如攻击者设法(比如,利用 SQL注入漏洞)做到了在数据库中随意运行命令,则只有用于运行 SQL Server 帐户安全凭据才能限制其实施操作系统命令能力。这便是经过最低权限帐户来运行 SQL Server 关键原因。3. 使用专用计算机作为数据库服务器。还请将其加入群集,以作故障转移之用。4. 对数据库服务器采取物理保护。将服务器置于一个安全计算机房中。5. 限制当地登录。除管理员外,不许可任何人在当地登录服务器。第3章 SQLServer安全配置方法3.1 操作系统安全3.1.1 数据库安装编号401名称安

45、装数据库关键等级:高基础信息:提议使用“自定义”安装选项检测内容:1. 系统盘、数据磁盘是否是NTFS分区2. 是否已经创建好了最小权限AD域帐号3. 是否是在一台独立服务器上安装SQLServer4. 无须要服务是否没有启用提议操作:1. 创建一个含有最低权限当地帐户,须经过它来运行 SQL Server 服务。安装过程中提醒进行服务设置时,请使用此帐户。请一定不要使用当地系统帐户或管理员帐户(除非应用系统需要)2. 确保不要在域控制器上安装 SQL Server3. 确保在 NTFS 格式分区上安装 SQL Server4. 在非系统卷(操作系统所在卷以外其它卷)上安装 SQL Server 程序及数据库文件5. 删除无须要服务操作结果:SQLServer安装正常3.1.2 注册表设置编号402名称检验注册表权限关键等级:高基础信息:应该确保EveryOne组不能含有权限访问SQL

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 通信科技 > 数据库/数据算法

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服