gpt4 book ai didi

java - HDIV : not redirecting to errorpage when HDIV_PARAMETER_NOT_EXISTS

转载 作者:行者123 更新时间:2023-12-01 18:09:10 29 4
gpt4 key购买 nike

我正在尝试通过使用 struts 1.3.8 的应用程序来实现 HDIV。我已经在pom文件和监听器中添加了依赖项,在web.xml文件中添加了过滤器。

token _HDIV_STATE_ 被注入(inject)到每个页面、链接中。因此,为了测试它是否能按预期对抗 CSRF 攻击,我在应用程序外部制作了一个小型 html 页面,将数据发送到应用程序以修改一些数据,以模拟 CSRF 攻击。

不幸的是,测试成功了,因为目标数据被修改了。当我检查日志时,HDIV 似乎检测到该请求不包含 _HDIV_STATE_ 但它不会取消它并重定向到错误页面或其他内容。

我的配置是否错误,或者只是我不明白当请求中不存在 token 时 HDIV 会做什么?

感谢您的帮助

pom.xml:

<dependency>
<groupId>org.hdiv</groupId>
<artifactId>hdiv-config</artifactId>
<version>2.1.12</version>
</dependency>
<dependency>
<groupId>org.hdiv</groupId>
<artifactId>hdiv-struts-1</artifactId>
<version>2.1.12</version>
</dependency>
<dependency>
<groupId>org.hdiv</groupId>
<artifactId>hdiv-jstl-taglibs-1.2</artifactId>
<version>2.1.12</version>
</dependency>

web.xml

<listener>
<listener-class>org.hdiv.listener.InitListener</listener-class>
</listener>
<filter>
<filter-name>ValidatorFilter</filter-name>
<filter-class>org.hdiv.filter.ValidatorFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>ValidatorFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<jsp-config>
<taglib>
<taglib-uri>/WEB-INF/tld/struts-html-el.tld</taglib-uri>
<taglib-location>/WEB-INF/tld/hdiv-html-el.tld</taglib-location>
</taglib>

<taglib>
<taglib-uri>/WEB-INF/tld/struts-logic-el.tld</taglib-uri>
<taglib-location>/WEB-INF/tld/hdiv-logic-el.tld</taglib-location>
</taglib>

<taglib>
<taglib-uri>/WEB-INF/tld/c.tld</taglib-uri>
<taglib-location>/WEB-INF/tld/hdiv-c.tld</taglib-location>
</taglib>
</jsp-config>

hdiv-config.hml

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:hdiv="http://www.hdiv.org/schema/hdiv"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.hdiv.org/schema/hdiv
http://www.hdiv.org/schema/hdiv/hdiv.xsd">

<hdiv:config excludedExtensions="css,png,gif,jpeg,jpg,js" errorPage="/error.jsp"
maxPagesPerSession="2" debugMode="true">
<hdiv:sessionExpired loginPage="/index.jsp" homePage="/"/>
<hdiv:startPages>/index.jsp</hdiv:startPages>
</hdiv:config>

</beans>

最佳答案

您已在 hdiv-config.xml 中激活 debugMode:

来自HDIV Reference Documentation :

HDIV offers a debug execution mode in order to apply HDIV in production environments without any functional or integration problems. In other words HDIV process and validates all the requests but doesn't change original execution of the request, just logging the possible attack but without stopping it.

尝试禁用 Debug模式。

费尔南多·洛萨诺(HDIV 团队)

关于java - HDIV : not redirecting to errorpage when HDIV_PARAMETER_NOT_EXISTS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34206430/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com