xfocus logo xfocus title
首页 焦点原创 安全文摘 安全工具 安全漏洞 焦点项目 焦点论坛 关于我们
English Version

Microsoft SQL Server 2000数据库一致性检查存在缓冲溢出漏洞


发布时间:2002-07-27
更新时间:2002-07-27
严重程度:
威胁程度:远程管理员权限
错误类型:边界检查错误
利用方式:服务器模式

BUGTRAQ ID:5307
CVE(CAN) ID:CAN-2001-0644

受影响系统
Microsoft SQL Server 2000 SP2
Microsoft SQL Server 2000 SP1
   - Microsoft Windows 2000 Workstation
   - Microsoft Windows 2000 Workstation SP1
   - Microsoft Windows 2000 Workstation SP2
   - Microsoft Windows NT 4.0 SP5
   - Microsoft Windows NT 4.0 SP6
   - Microsoft Windows NT 4.0 SP6a
Microsoft SQL Server 2000
   - Microsoft Windows 2000 Workstation
   - Microsoft Windows 2000 Workstation SP1
   - Microsoft Windows 2000 Workstation SP2
   - Microsoft Windows NT 4.0
   - Microsoft Windows NT 4.0 SP5
   - Microsoft Windows NT 4.0 SP6
   - Microsoft Windows NT 4.0 SP6a
Microsoft SQL Server 2000 Desktop Engine
   + Microsoft Visio Enterprise Network Tools
详细描述
Microsoft SQL Server 2000包含数据库一致性检查(Database Consistency Checkers (DBCCs)),是命令行控制台工具,允许维护数据库和执行其他操作。

某些DBCC函数存在缓冲溢出,提供超长字符串作为参数可导致以SQL进程执行任意代码,这些函数包括:

DBCC ADDEXTENDEDPROC ('xp_storedproc','XXX...') (a)
DBCC INDEXFRAG ('','XXX...') (b)
DBCC UPDATEUSAGE ('','XXX...') (c)
DBCC CHECKCONSTRAINTS ('XXX...') (c)
DBCC SHOWCONTIG ('XXX...') (d)
DBCC CLEANTABLE ('','XXX...') (d)

a)需要sysadmin fixed server成员可以运行此命令。
b)需要sysadmin fixed server role, db_owner or db_ddladmin fixed database role运行此命令。
c)需要sysadmin fixed server role or db_owner fixed database role 运行此命令。
d)所有用户可以运行此命令。

测试代码


解决方案
补丁下载:

Microsoft SQL Server 2000 SP2:

Microsoft Patch Q316333
http://support.microsoft.com/default.aspx?scid=http://download.microsoft.com/download/SQLSVR2000/Update/8.00.0650/W98NT42KMeXP/EN-US/8.00.0650_enu.exe

相关信息
参考:http://archives.neohapsis.com/archives/bugtraq/2002-07/0317.html
http://www.microsoft.com/technet/treeview/default.asp?url=/technet/security/bulletin/MS02-038.asp