防止XSS攻击

XSS是一种脚本攻击,利用的是一些网站的漏洞,主要是对输入和输出不进行脚本过滤所造成的,具体可以去搜索一下。

针对这种攻击有比较简单的解决办法:过滤html脚本。

这里有个参考函数:


public static final String [] DISABLE_SCRIPT=new String[]{"%3C","%3c","%3E","%3e","<",">"};
public static boolean existDisableScript(String s){
if(StringUtils.isNotEmpty(s)){
for(int i=0;i<DISABLE_SCRIPT.length;i++){
if(StringUtils.contains(s, DISABLE_SCRIPT[i])){
return true;
}
}
}
return false;
}


这个方法很简单,把"<"">"检查一遍,返回一个是否存在禁用的布尔值。只要仔细地检查输出和输入就可以避免这个问题,主要还是在应用中多进行这方面的测试就可以很好地避免。

另外还要注意,尽量不要在数据库内保存可疑数据,如果一定要保存富文本,则可以仿照BB code的方式换一种脚本,这其实在论坛中是很普遍的做法。毕竟HTML是相当危险的。

没办法java的只能放到杂事去了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值