URL跨站漏洞

     最近工作中遇到一个URL跨站漏洞,从网上一查,得知是XSS中的一种,这是局方通过购买的安全测试软件测出来,只给我们发了一个测试结查报告,刚开始单从这个报告的解决方法中得不到具体的解决信息,也只是一般的解决信息,这些都可以从网上找到,如要了解XSS漏洞,可从google中了解,如下说说我的解决方法:

     从网上搜了一把,发现解决方法和现有系统中的不太好改,要改前端的话,URL地址多,那就只能从后端去拦截。

     先说一个题外话,iteye是我上的最基本的一个网站,不知大家平时有没有发,在www.iteye.com/后面加入一些JS的脚本代码,它都会跳到一个错误提示页面,这样就可以很好的拦截了XSS漏洞,现很多的网站又都做到这些,而把JS加到我们的系统中,JS脚本据然执行了,那这就有问题 。

    解决办法:

          1,在后端写一个总的过滤器,如Filter...,把JS 的特殊字符判断一下,如<script> alert , ' , " , document,....一些字符做过滤处理,如URL后面有这些字符就跳到一个出错页面,注意转码,URLDecoder.decode(requesturl,"UTF-8") ; ,有时在URL中的字符都是编过码的。

         2, 之前看到有一些网站上,在URL后面加JS脚本,它的容错机制很多,还是会在显示原URL的内容,不会出现错误页面。 这种方法也是在Filter中做的过滤,做法比第一种写的要多,它是要把出现的如 从 script 后面的js脚本代码去掉,再把URL拼接起来,往下传递去请求相应的内容。

      以上解决基本可解决,但在客户端 有时也要做一些判断,主要是对输入框中的内容做限制,或过滤JS字符,如login 对话框 ,用户名,密码,要做数字字符和长度的限制等 ,还有一些其它的输入。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值