加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

皕杰报表web端新增两个过滤器

(2022-07-14 10:34:01)
标签:

报表工具

皕杰报表

为了解决由于编码问题而导致的找不到模板文件以及解决安全扫描中XSS注入风险问题,皕杰报表web端新增了两个过滤器供选择,一个是字符编码过滤器(CharacterEncodingFilter),一个是XSS过滤器(XssRequestFilter)。

一、 字符编码过滤器(CharacterEncodingFilter

实质上这是一个编码转换过滤器,把URL中的编码统一成UTF-8,从而解决了由于编码问题而导致的找不到模板文件、页面乱码等问题。如果要使用该过滤器,需在web.xml中进行如下配置:

<filter>

  <filter-name>CharacterEncodingFilter</filter-name>

  <filter-class>bios.report.engine.output.CharacterEncodingFilter</filter-class>

  <init-param>

    <param-name>encode</param-name>

    <param-value>UTF-8</param-value>

  </init-param>

</filter>

<filter-mapping>

  <filter-name>CharacterEncodingFilter</filter-name>

  <url-pattern>/ReportEmitter</url-pattern>

</filter-mapping>

<filter-mapping>

  <filter-name>CharacterEncodingFilter</filter-name>

  <url-pattern>/ReportQuerier</url-pattern>

</filter-mapping>

… …

有两点需要注意:

1、该过滤器仅仅针对GET请求有效。

2、如果使用皕杰框架平台的话,请把该过滤器配置在平台的主过滤器之后。

二、XSS过滤器(XssRequestFilter

为了解决安全扫描中XSS注入风险问题,增加了一个XSS过滤器(XssRequestFilter),可以有效解决XSS注入的安全问题。如果要使用该过滤器,需在web.xml中进行如下配置:

<filter>

    <filter-name>XSSRequestFilter</filter-name>

    <filter-class>bios.report.engine.output.XSSRequestFilter</filter-class>

</filter>

 

<filter-mapping>

    <filter-name>XSSRequestFilter</filter-name>

    <url-pattern>/ReportEmitter</url-pattern>

</filter-mapping>

<filter-mapping>

    <filter-name>XSSRequestFilter</filter-name>

    <url-pattern>/ReportQuerier</url-pattern>

</filter-mapping>

… …

XSS规则配置

为了能灵活控制不断变化的XSS注入,XssRequestFilter把过滤规则放置在/WEB-INF/resources/xssruler_config.xml中,这样可以根据需要进行过滤规则控制。

一个参数只能配置一条规则,参数名区分大小写;一个规则中可以配置很多的注入特征字符,不同的特征字符之间用逗号隔开,特征字符不区分大小写,按照配置的顺序执行处理;

如下所示:

<Config>

 

  <parameter name="rpt" xss="script,alert" />

  <parameter name="rptskin" xss="script,alert" />

 

</Config>

其它说明

1、遇到参数值中有xss脚本时,并不中断请求,而是把参数值中的与xss特性相关内容去掉。

2XSS特性字符中如果有特殊字符,例如:‘<’用‘ <’代替;‘>’用‘ >’代替。

3、如果使用皕杰框架平台的话,请把该过滤器配置在平台的主过滤器之后。

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有