## 什么是XSS攻击
* XSS又称为CSS(Cross SiteScript),跨站脚本攻击。其原理是攻击者向有XSS漏洞的网站中“嵌入”恶意的HTML代码,当其他用户浏览该网站时,这段HTML代码会自动执行,从而达到攻击的目的。如:盗取用户Cookie、重定向到其他网站等。
* 理论上,所有可以输入的地方没有对输入数据进行处理的话,都会存在XSS漏洞。漏洞的厉害取决于攻击代码的能力。
## 如何配置
* 比如某些接口API,请求参数是xml类型,带有<>标记,会被xss拦截过滤
* 针对这种情况,可以配置富文本过滤,具体配置如下
~~~
jpower:
xss:
# 是否开启富文本过滤(如果开启,content参数名和以WithHtml结尾得参数名将不进行XSS过滤,默认位关闭)
isIncludeRichText: true
~~~
* 富文本过滤默认为关闭需要配置开启,开启后`content`参数名和以`WithHtml`结尾得参数名都不会进行XSS过滤。
* 如果我们不止一个参数或者还有其他参数,我们可以对接口进行过滤,具体配置如下
~~~
jpower:
xss:
# XSS不过滤得接口路径,支持通配符模式
excludes:
- /html/**
- /weixin
~~~
* 配置这个后,会对配置过的接口不进行XSS过滤,支持通配符配置。
## 注意
* XSS过滤在JPower工程中会直接启用,并默认进行SQL防注入过滤。
- 序言
- 开发环境准备
- 环境要求
- 环境安装
- 基础环境安装
- Nacos安装
- Sentinel安装
- 插件安装
- 导入工程
- 运行工程
- 工程测试
- JPower特性
- 系统启动器
- 多终端令牌认证
- 系统鉴权
- 鉴权API
- 鉴权配置
- API权限配置
- 接口放行配置
- 数据权限
- redis缓存
- 动态网关
- 聚合文档
- SaaS多租户
- 概念
- 使用
- Xss防注入
- 日志记录
- 操作日志&错误日志
- SQL打印
- feign请求日志&配置
- gateway日志
- 服务日志打印
- 导入导出
- 字典查询
- 系统文件上传下载
- 接口监控
- 代码生成器
- 配置文件共享
- Mybatis过滤器
- 配置说明
- 高级实战
- nacos动态配置
- Seata分布式事务
- 简介
- docker启动
- 微服务配置
- 微服务远程调用
- 声明式服务调用 Feign
- 熔断机制 Sentinel
- sentinel流控
- 简介
- 微服务配置
- 配置nacos对接
- APM监控&链路追踪
- 简介
- 安装
- 微服务接入
- SpringBootAdmin监控
- ELK分布式日志追踪系统
- ELK简介
- ELK一键部署
- 微服务日志对接ELK
- JPower-Chat
- 配置说明
- 生产部署
- docker部署
- docker安装
- docker-compose安装
- harbor安装
- 部署步骤
- 版本升级
- 1.0.1升级到2.0.0
- 2.0.0升级到2.0.2
- 2.0.2升级2.1.0
- 2.1.0升级到2.1.1
- 2.1.1升级到2.1.2
- 2.1.2升级到2.1.4