如何通过Jsoup在Spring Boot 2.x中有效防止XSS攻击?
- 内容介绍
- 文章标签
- 相关推荐
本文共计723个文字,预计阅读时间需要3分钟。
后端应用通常接收各种信息参数,例如评论、回复等文本内容。除了特定场景下,可以接受富文本标签和属性(如b、ul、li、h1、h2、h3等)外,需要过滤掉危险的字符和标签,防止xs攻击。
后端应用经常接收各种信息参数,例如评论,回复等文本内容。除了一些场景下面,可以特定接受的富文本标签和属性之外(如:b,ul,li,h1, h2, h3...),需要过滤掉危险的字符和标签,防止xss攻击。
一、什么是XSS?
看完这个,应该有一个大致的概念。
XSS攻击常识及常见的XSS攻击脚本汇总
XSS过滤速查表
二、准则
- 永远不要相信用户的输入和请求的参数(包括文字、上传等一切内容)
- 参考第1条
三、实现做法
结合具体业务场景,对相应内容进行过滤,这里使用Jsoup。
jsoup是一款Java的HTML解析器。Jsoup提供的Whitelist(白名单)对文本内容进行过滤,过滤掉字符、属性,但是又保留必要的富文本格式。
如,白名单中允许b标签存在(并且不允许b标签带有其他属性)那么在一段Html内容,在过滤之后,会变成:
过滤前:
<b style="xxx" onclick="<script>alert(0);</script>">abc</>
过滤后:
<b>abc</b>
Whitelist主要方法说明
方法
说明
XssFilter过滤器
import org.apache.commons.lang3.StringUtils; import javax.servlet.*; import javax.servlet.localhost:8080/demo/th/xss?abc=%3Ca%20href=%22www.baidu.com/a%22%20onclick=%22alert(1);%22%3Eabc%3C/a%3E%3Cscript%3Ealert(0);%3C/script%3E&abc=%3Cb%20style=%22xxx%22%20onclick=%22%3Cscript%3Ealert(0);%3C/script%3E%22%3Eabc%3C/%3E
到此这篇关于springboot2.x使用Jsoup防XSS攻击的实现的文章就介绍到这了,更多相关springboot2.x防XSS攻击内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!
本文共计723个文字,预计阅读时间需要3分钟。
后端应用通常接收各种信息参数,例如评论、回复等文本内容。除了特定场景下,可以接受富文本标签和属性(如b、ul、li、h1、h2、h3等)外,需要过滤掉危险的字符和标签,防止xs攻击。
后端应用经常接收各种信息参数,例如评论,回复等文本内容。除了一些场景下面,可以特定接受的富文本标签和属性之外(如:b,ul,li,h1, h2, h3...),需要过滤掉危险的字符和标签,防止xss攻击。
一、什么是XSS?
看完这个,应该有一个大致的概念。
XSS攻击常识及常见的XSS攻击脚本汇总
XSS过滤速查表
二、准则
- 永远不要相信用户的输入和请求的参数(包括文字、上传等一切内容)
- 参考第1条
三、实现做法
结合具体业务场景,对相应内容进行过滤,这里使用Jsoup。
jsoup是一款Java的HTML解析器。Jsoup提供的Whitelist(白名单)对文本内容进行过滤,过滤掉字符、属性,但是又保留必要的富文本格式。
如,白名单中允许b标签存在(并且不允许b标签带有其他属性)那么在一段Html内容,在过滤之后,会变成:
过滤前:
<b style="xxx" onclick="<script>alert(0);</script>">abc</>
过滤后:
<b>abc</b>
Whitelist主要方法说明
方法
说明
XssFilter过滤器
import org.apache.commons.lang3.StringUtils; import javax.servlet.*; import javax.servlet.localhost:8080/demo/th/xss?abc=%3Ca%20href=%22www.baidu.com/a%22%20onclick=%22alert(1);%22%3Eabc%3C/a%3E%3Cscript%3Ealert(0);%3C/script%3E&abc=%3Cb%20style=%22xxx%22%20onclick=%22%3Cscript%3Ealert(0);%3C/script%3E%22%3Eabc%3C/%3E
到此这篇关于springboot2.x使用Jsoup防XSS攻击的实现的文章就介绍到这了,更多相关springboot2.x防XSS攻击内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!

