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


引入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("&lt;a&gt;dddd&lt;/a&gt;"));
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
————————————————
版權聲明:本文為CSDN博主「小獅王」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/wanghaoqian/article/details/78293631


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM