依赖jar包
引入包 |
版本 |
jdk |
1.8 |
spring boot |
2.7.2 |
jsoup |
1.13.1 |
spring-boot-starter-web |
2.7.2 |
jackson-databind |
2.13.3 |
javax.servlet-api |
4.0.1 |
spring-boot-autoconfigure |
2.7.2 |
使用
添加依赖
1 2 3 4 5
| <dependency> <groupId>cn.allbs</groupId> <artifactId>allbs-xss</artifactId> <version>2.0.0</version> </dependency>
|
1
| implementation 'cn.allbs:allbs-xss:2.0.0'
|
1
| implementation("cn.allbs:allbs-xss:2.0.0")
|
自动过滤html相关标签
添加注解后默认开启xss防御,只拦截PUT
及POST
请求的接口,可以在方法上添加注解@XssIgnore关闭xss拦截
配置说明
1 2 3 4 5 6 7 8 9 10
| security: xss: enabled: true pathPatterns: - /user excludePatterns: - /xss
|
示例
代码
1 2 3 4 5 6 7 8 9
| @RequestMapping("xss") @RestController public class XssController {
@PostMapping("test") public String test(String htmlContent) { return htmlContent; } }
|
过滤前
1
| <script>alert('xss攻击')</script>参数
|
过滤后