黑客24小时在线接单网站

怎么联系真的黑客,24小时在线黑客联系方式,24小时在线联系黑客,正规黑客私人接单,黑客QQ联系方式

过滤xss(过滤一直开鱼会累死吗)

本文目录一览:

2019-08-22/XSS过滤器

做后端的同学都知道,XSS过滤器,防sql注入过滤器等是常用的 。关于什么是XSS攻击,网上的说法很多,自己百度一下吧。我们只需要加入一个xss过滤器就可以了。但大部分的文章都是针对普通的get/post请求进行的参数xss过滤,如果是post+appliccation/json等提交方式就显得无能为力了。很显然,对于普通的get/post,就按照之前的方式过滤参数就可以了(对于multipart等文件上传之类的参数做校验,这里暂时没有提供)。

为了方便起见,首先定义一些常量吧:

接下来需要分别针对不同的表单提交类型写包装类,对于普通的get/post请求的包装类:

对于post+application/json的请求,对应的包装类:

接下来就是校验啦:

XSS过滤器

背景:过滤xss攻击,同时将过滤后的日志输出到指定文件。(指定文件输出请看上篇博文)

前景:利用filter进行xss攻击过滤,需要应对不同请求做不同的过滤处理,若是post请求的json格式数据,需要重写getinputstream方法(因为流读取一次后,下层controller无法再次进行读取。原理可自行百度)

因此需要重写两个wrapper(继承HttpServletRequestWrapper)(针对post的json请求以及其他格式的请求)

在filter中以contentType做类型的区分

未做业务耦合的区分(日志输出与xss过滤耦合到一起),若要区分开功能,单独书写即可

一:重写wrapper

1:contentType为multipart/form-data或application/x-www-form-urlencoded

2:contentType为application/json

二:xss处理工具方法:

三:filter过滤器

四:在web.xml配置过滤器

45. 从零开始学springboot撸一个Xss过滤器-注解实现

上章通过Filter实现了Xss全局过滤器

可能小伙伴还有点不满, 全局意味着“一刀切”,

虽然我们也有白名单黑名单设置, 但是, 白名单黑名单针对的是整个方法或整个实体类

举个例子, 我定义了个实体

可能业务上有限制(比如name限制了只有5个字符长),

那么name其实不可能存在Xss注入风险了,

程序只需要对info和des属性做转义即可

如果采用Filter, 意味着People的所有属性都会检测转义, 好像没啥必要!

那么, 可以针对性的指定字段进行Xss的过滤转义么?

为了应对这样的需求, 咸鱼君采用Aop注解来实现这么个Xss过滤器.

PS: 和Filter一样, 我们统一对入参Xss过滤, 确保参数的处理方式统一! 所以, 程序中获取的参数值都是转义后的数据!!

废话不多说, 往下看!

加入必要的pom依赖

针对方法, 参数, 属性分别定义三个注解

XssMethod

XssParam

XssField

针对注解实现切面Aspect

XssAspect

注释写的很详细, 就不多废话了!

接下来我们写个案例来测试测试

首先在启动类上启用切面

定义一个实体People, 并对info,des属性加上注解进行xss过滤

最后编写controller

json方式

键值对方式

如何正确防御xss攻击?

防御xss攻击需要重点掌握以下原则:

在将不可信数据插入到HTML标签之间时,对这些数据进行HTML Entity编码。

在将不可信数据插入到HTML属性里时,对这些数据进行HTML属性编码。

在将不可信数据插入到SCRIPT里时,对这些数据进行SCRIPT编码。

在将不可信数据插入到Style属性里时,对这些数据进行CSS编码。

在将不可信数据插入到HTML URL里时,对这些数据进行URL编码。

使用富文本时,使用XSS规则引擎进行编码过滤

XSS攻击,即跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,XSS是一种经常出现在web应用中的计算机安全。

  • 评论列表:
  •  黑客技术
     发布于 2023-01-09 15:22:46  回复该评论
  • 切”, 虽然我们也有白名单黑名单设置, 但是, 白名单黑名单针对的是整个方法或整个实体类 举个例子, 我定义了个实体 可能业务上有限制(比如name限制了只有5个字符长), 那么name其实不可能存在Xss注入风险了, 程序只需要对info和des属性做转义即可 如果采用
  •  黑客技术
     发布于 2023-01-09 12:44:50  回复该评论
  • 性的指定字段进行Xss的过滤转义么? 为了应对这样的需求, 咸鱼君采用Aop注解来实现这么个Xss过滤器. PS: 和Filter一样, 我们统一对入参Xss过滤, 确保参数的处理方式统一! 所以, 程序中获取的参数值都是转义后
  •  黑客技术
     发布于 2023-01-09 12:22:44  回复该评论
  • 两个wrapper(继承HttpServletRequestWrapper)(针对post的json请求以及其他格式的请求) 在filter中以contentType做类型的区分 未做业务耦合的区分(日

发表评论:

Powered By

Copyright Your WebSite.Some Rights Reserved.