抵御 XSS 跨站脚本攻击
type
Post
status
Published
date
Oct 10, 2021
slug
summary
在过滤器将请求类进行包装,并覆盖 http 参数处理方法方式实现参数转义的方式对可能的 XSS 脚本代码过滤
tags
项目方案
category
技术分享
icon
password
XSS 攻击介绍
XSS 就是一段可以被网页程序执行的恶意代码指令,通常是JavaScript,但实际上也可以包括 Java、 VBScript、ActiveX、 Flash 或者甚至是普通的HTML。
攻击者通过 XSS 可以获得比较高的权限来执行一些操作,例如获取私密网页内容、会话和cookie等各种内容,对应用安全造成影响。
- 例如用户在发帖或者注册的时候,在文本框中输入
<script>alert('xss')</script>,这段代码如果不经过转义处理,而直接保存到数据库。将来视图层渲染HTML的时候,把这段代码输出到页面上,那么<script>标签的内容就会被执行。
模板引擎:Thymeleaf
type
Post
status
Published
date
Sep 23, 2021
slug
summary
tags
模板引擎
category
技术分享
icon
password
Thymeleaf 是 SpringBoot 官方推荐的模板引擎,和 Freemarker 相比:
- 支持HTML原型格式,浏览器可以直接打开
- 可以作为 HTML 片段、代码模板、右键模板等
模板引擎:FreeMarker
type
Post
status
Published
date
Sep 16, 2021
slug
summary
tags
模板引擎
category
技术分享
icon
password
模板引擎是服务端渲染,页面静态化技术之一,也是MVC架构中的V(视图层)技术,和JSP类似
页面静态化:
- 例如有的列表页访问量大,但数据变化频率不高,每一次访问都需要查询数据库动态获取数据进行展示,对数据库造成很大的访问压力
- 页面静态化将原来动态网页(如通过ajax请求动态获取数据库中的数据并展示的网页)改为通过静态化技术生产的静态网页,这样用户在访问网页时,服务器直接响应静态html页面,而不进行动态查询数据库