配置启用防护跨站脚本攻击 |
为解决跨站点脚本漏洞问题,例如,URL链接注入漏洞、URL基于DOM的跨站点脚本漏洞、URL宽字符跨站漏洞、URL跨站漏洞等,可以通过修改iServer配置文件【SuperMap iServer 安装目录】\webapps\iserver\WEB-INF\web.xml来启用防护跨站点脚本攻击。
配置开启防护跨站点脚本攻击如下所示:
<filter>
<filter-name>XssFilter</filter-name>
<display-name>XssFilter</display-name>
<filter-class>com.supermap.server.host.webapp.XssFilter</filter-class>
<init-param>
<param-name>processMode</param-name>
<!-- 可选值:CLEAN、THROWERROR分别表示清除危险字符,抛出异常 -->
<param-value>CLEAN</param-value>
</init-param>
<init-param>
<param-name>antisamyName</param-name>
<!-- 可选值:antisamy-myspace.xml、antisamy-ebay.xml、antisamy-tinymce.xml、antisamy-slashdot.xml -->
<param-value>antisamy-ebay.xml</param-value>
</init-param>
<init-param>
<param-name>xsrfDefendEnable</param-name>
<!-- 可选值:true、false分别表示开启和关闭防护跨站请求伪造 -->
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>refererWhiteList</param-name>
<!-- 开启防护跨站请求伪造后,可以设置跨站请求白名单 -->
<param-value>域名1;域名2;域名3</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>XssFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
注意:多个web filter同时存在时,各web filter的加载和执行有严格的顺序关系,该顺序关系和web.xml文件中各web filter的定义顺序一致。要使XSSFilter真正起到防护作用,需要在web.xml中优先定义该Filter的FilterMappping。
其中,主要配置参数如下: