CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

数据库 | Oracle | DB2 | SQL Server | MySQL | 商业智能 | BI | DBA | Sybase| SQL Server 2008

您现在的位置: IT专家网 > 数据库子站 > 数据库技巧

SQL Server 存在远程缓冲区溢出漏洞

作者: ,  出处:熊猫卫士, 责任编辑: 金璞, 
2006-12-08 16:41
  数据库是存放多种资料的地方,因此相关数据库的漏洞也显得特别重要,再者此漏洞有可能会导致 SQL server 停止服务或攻击者能够在 SQL server 上执行任意指令,微软建议受影响用户立即安装补丁。

  涉及程序:

  SQL Server

  描述:

  Microsoft 安全公告:SQL Server 存在远程缓冲区溢出漏洞

  详细:

  Microsoft 公布了一个存在于 SQL Server 7.0 和 SQL Server 2000 上的缓冲区溢出问题。

  数据库是存放多种资料的地方,因此相关数据库的漏洞也显得特别重要,再者此漏洞有可能会导致 SQL server 停止服务或攻击者能够在 SQL server 上执行任意指令,微软建议受影响用户立即安装补丁。

  SQL Server 7.0 和 2000 的结构化查询语言(Structured Query Language, SQL)能够连结远程的资料来源(data source),其中有一项功能,能对于不常使用的资料来源利用"ad hoc" ,可以不先预设置连接服务器即可连接。它直接呼叫 OLE DB ,利用名字作为查询来连结远程资料来源。

  在 ad hoc 连结上 OLE DB 存在一个未检查缓冲区的问题。这缓冲区溢位的问题会导致 SQL server 停止服务或能够在 SQL server 上执行任意指令。SQL server 原先的设置是有大量的安全关联,且预设是域用户(domain user),因此攻击者能够利用此漏洞能获得系统特权。

  攻击者有一至二种方式来利用此漏洞。一种方式是使用受影响的函数作数据库查询,另一种方式是如果网站或者数据库提供给客户作查询服务,这有可能让攻击者利用一些特殊查询方式而去使用受到影响的函数。

  此漏洞的影响取决于 SQL Server 服务的特定组态设定。SQL server 能够设置成在系统管理员所选择的安全范围内执行,预设为域用户(domain user)。如果将此服务器的权限降低,可以让攻击者所造成的伤害能减至最少。

  有二种方式可以能够防治此漏洞影响。特别是不可信任的使用者不能够在database server 上 load 或执行他所选择的查询。另外,在处理可存取的数据库查询 前应过滤所有的 inputs。

  受影响系统

  Microsoft SQL Server 7.0

  Microsoft SQL Server 2000

  解决方案:

  相关信息::

  http://www.microsoft.com/technet/security/bulletin/MS02-007.asp

  补丁程序可以从下列网址取得:

  - - SQL Server 7.0(此次发行的补丁是累计的补丁程序):

  http://support.microsoft.com/support/misc/kblookup.asp?id=Q318268

  - - SQL Server 2000(此次发行的补丁是累计的补丁程序):

  http://support.microsoft.com/support/misc/kblookup.asp?id=Q316333

  注意:

  1)现有的补丁:

  - - SQL Server 7.0 补丁需在安装完 SQL Server 7.0 Service Pack 3 的环境上执行。

  - - SQL Server 2000 补丁需在安装完 SQL Server 2000 Service Pack 2 的环境上执行。

  - - 此补丁将包含于 SQL Server 7.0 Service Pack 4 和 SQL Server 2000Service Pack 3中。

  - - 修补完毕后需要重新激活 SQL Server 服务。

  - - 取代之前所发布的 MS01-060。

  2) SQL Server 7.0:

  如果要确定此补丁程序是否在此机器上正确安装,请以下列参数查询:

  "SELECT @@VERSION" (without the quotation marks)

  如果此修正程序有正确的安装,则查询出来的版本编号为"SQL Server 7.00 - 7.00.1021" 或更高级的版本。

  如果要核对个别的程序,在以下清单中核对日期/时间以及版本信息:

  Microsoft Knowledge Base article Q317979

  - - SQL Server 2000:

  如果要确定此补丁程序是否在此机器上正确安装,请以下列参数查询:

  "SELECT @@VERSION" (without the quotation marks)

  如果此补丁程序有正确的安装,则查询出来的版本编号是"SQL Server 8.00 -8.00.0578" 或更高级的版本。

  如果要核对个别的程序,在以下清单中核对日期/时间以及版本信息:

  Microsoft Knowledge Base article Q317979

  3) 可由下列方式取得补丁程序:

  1.可经由微软程序下载中心(Microsoft Download Center)中取得,使用 "security_patch" 字符串寻找;

  2.微软的使用者可经由 WindowsUpdate 的网站取得;

  http://windowsupdate.microsoft.com/

  3.所有的补丁程序可经由 WindowsUpdate 网站取得,也可到 WindowsUpdate 组织网站取得资料;


  阅读关于 SQL Server 数据库 远程缓冲区溢出漏洞 的全部文章

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅


    

该文章的读者还阅读了

天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i