预防WEB页面XSS漏洞的简单方式

输入的参数,必须经过转码才能输出到页面上,如果不经转换而原样直接输出到页面上,则会产生XSS漏洞。


比如:在输入框,输入姓名“张三confirm(123)”
如果直接在页面上输出的话,就会弹窗显示123,其实就是执行了用户设定的js操作了,这就产生了xss漏洞。

xss漏洞很好预防,只要在参数输出时转码就行了。


预防方式,只要输出时做处理:
(1)jstl:<c:out value="${name}" escapeXml="true"/>
(2)EL: ${fn:escapeXml(param)}
(3)工具类:org.apache.commons.lang.StringEscapeUtils.escapeXml(String)。


实质就是转换如下特殊字符:> , < , & , ", '


另外,重点注意区别
xml转义字符([b]包含了单引号[/b]):
< < 小于号
> > 大于号
& & 和
&apos; ' 单引号
" " 双引号


html转义字符:
< 小于 <
> 大于 >
& &符号 &
" 双引号 "
© 版权 ©
® 已注册商标 ®
™ 商标(美国) ™
× 乘号 ×
÷ 除号 ÷
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值