StringEscapeUtils的常用使用,防止SQL注入及XSS注入


 

StringEscapeUtils的常用使用,防止SQL注入及XSS注入

版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/wanghaoqian/article/details/78293631

引入common-lang-2.4.jar中
一个方便做转义的工具类,主要是为了防止sql注入,xss注入攻击的功能
官方参考文档
StringEscapeUtils.unescapeHtml(sname)
1.escapeSql 提供sql转移功能,防止sql注入攻击,
例如典型的万能密码攻击’ ’ or 1=1 ’ ‘

StringBuffer sql = new StringBuffer("select key_sn,remark,create_date from tb_selogon_key where 1=1 "); if(!CommUtil.isEmpty(keyWord)){ sql.append(" and like '%" + StringEscapeUtils.escapeSql(keyWord) + "%'"); }
  • 1
  • 2
  • 3
  • 4

2.escapeHtml /unescapeHtml 转义/反转义html脚本

System.out.println(StringEscapeUtils.escapeHtml("<a>dddd</a>")); 
  • 1

输出结果为:<a>dddd</a>

System.out.println(StringEscapeUtils.unescapeHtml("<a>dddd</a>")); 
  • 1

输出为:

<a>ddd</a>
  • 1

3.escapeJavascript/unescapeJavascript 转义/反转义js脚本

System.out.println(StringEscapeUtils.escapeJavaScript("<script>alert('1111')</script>")); 
  • 1

输出为:<script>alert(‘111’)</script>
4.escapeJava/unescapeJava 把字符串转为unicode编码

System.out.println(StringEscapeUtils.escapeJava("中国")); 
  • 1

输出为:用escapeJava方法转义之后的字符串为:/u4E2D/u56FD/u5171/u4EA7/u515A


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM