• 欢迎访问水熊虫网站,这里是我个人的工作博客,内容大多是遇到问题完善后,会在这里进行总结归纳内容! QQ群
  • 网站导航中的友情链接专栏上线,更新的都是自己这三年整理的一些东西,感兴趣可以看看!
  • 你所浪费的今天,是昨天死去的人奢望的明天。你所厌恶的现在,是未来的你回不去的曾经!

教你管理SQLServer实例(7)配置外围应用

MSSQL WaterBear 7年前 (2017-05-10) 678次浏览 已收录 扫描二维码

一、配置外围应用的目的
只要有足够的时间,任何人最终都能突破任何安全机制。安全机制的目标是提供足够多的障碍,使攻击一个系统的投入超过回报。配置SQL Server外围应用的目的,是尽可能使SQL Server启用的功能减小到最小程度,尽量减少攻击点的数量。
外围应用主要有两类,一类是针对连接,另一类是针对功能。SQL Server 2005提供了专门的图形化界面。

教你管理SQLServer实例(7)配置外围应用

SQL Servr 2005 外围应用配置器

教你管理SQLServer实例(7)配置外围应用

二、SQL Server 2008的改动
  SQL Server 2008删除了“SQL Server 2005外围应用配置器”图形化界面,官方的解释为:
1. 针对服务和连接的配置,已经集成在SQL Server配置管理器(SSCM)。
2. 针对功能的配置,只可以使用sp_configure脚本。

教你管理SQLServer实例(7)配置外围应用

三、使用sp_configure
1. 开启高级选项
默认情况下,sp_configure只可以查看和修改当前实例的基本选项。使用以下脚本,开启高级选项。

 EXEC sp_configure 'show advanced options',1
GO
RECONFIGURE WITH OVERRIDE 
GO
EXEC sp_configure
GO

2. 打开或关闭某选项
例如,打开CLR功能、禁用OLE automation procedures功能。

EXEC sp_configure 'clr enabled',1
EXEC sp_configure 'Ole Automation Procedures',0
GO
RECONFIGURE WITH OVERRIDE 
GO

四、关于部分功能的说明
1、OLE Automation
  此过程提供与之前版本的一些基本交互功能。SQL Server 2005推荐使用CLR(公共语言运行时)。两者的主要区别在于:CLR例程是在一个受保护的内存空间中运行,不会破坏SQL Server内存栈,而OLE Automation就可能造成这个破坏。
  旧版本的任何应用程序如果需要使用OLE Automation服务,就应该使用VB .net或C#进行重写。

2. SQL Mail XPs
  此功能是为了向后兼容。推荐使用database mail(数据库邮件)。

3. CDOC(cross db ownership chaining,跨数据库所有权链)
  此功能允许在数据库之间转移所有权。一经启用,数据库的所有者相当于放弃控制权,把它移交给另一个数据库的所有者。

教你管理SQLServer实例(7)配置外围应用

4、即席分布式查询(Ad Hoc Distributed Queries)
  OpenRowset和OpenDatasource允许在代码中嵌入安全凭据,从而在SQL Server中发起到另一个实例的连接,这会造成潜在的风险。只有当应用程序和脚本调用这些函数时,才启用“即席分布式查询”功能。推荐使用链接服务器。

5. xp_cmdshell
  这是一个扩展存储过程,允许从数据库引擎内运行操作系统命令。由于此功能启用后,可以执行任何操作系统命令,一旦SQL Server管理员帐号被攻破,那么攻击者就可以利用xp_cmdshell执行操作系统命令,例如:创建系统管理员等。

转载文章地址:http://bbs.51cto.com/thread-1075800-1.html


WaterBear , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:教你管理SQLServer实例(7)配置外围应用
喜欢 (0)
[[email protected]]
分享 (0)