- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试通过使用 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/
我正在使用 Umbraco 开发 Web 应用程序。我创建了一个名为 PageNotFound 的内容,并且在 umbracoSettings.config 文件的错误部分中,我将其节点 ID 放入
我正在尝试通过使用 struts 1.3.8 的应用程序来实现 HDIV。我已经在pom文件和监听器中添加了依赖项,在web.xml文件中添加了过滤器。 token _HDIV_STATE_ 被注入(
我设置了一个简单的测试来查看 的行为。当我抛出异常时,它似乎执行了上述页面“error.jsp”,但如果我测试语法错误,如缺少“;”,我仍然会收到 tomcat 错误页面。我是不是遗漏了什么或者这不
我编写了一个自定义异常过滤器来记录我的应用程序异常发生异常后我想将用户重定向到错误页面下面是我的代码 我的代码工作得很好,它捕获了异常,但在记录后它并没有把我扔到错误页面,你能帮忙吗 我的 Custo
我仍在努力让 Spring-boot 错误页面的东西在部署了 WAR 文件的独立 tomcat 中完全工作。 我有一个配置类如下: @Configuration @ComponentScan @Ena
我定义了在所有 JSP 文件包含的 header 中,捕获任何未处理的异常并重定向到该错误页面而不是打印它们。这可以正常工作,但有一个警告 - 如果 error.jsp 本身抛出异常,它将在无限循环中
我在我的 JSP 项目中使用 Spring: 我对所有 HTML 请求都有以下映射: spring org.springframework.web.servlet.DispatcherSer
当我把它放在我的 JSP 顶部时,我得到 jsp 异常导致转发到我的错误页面...... 但是当我尝试像这样使用 web.xml 在全局范围内执行此操作时: java.lang.Throw
我的 Spring Boot 项目过去在 Mac 上运行良好。今天我将代码拉到我的 Windows 圈上,然后出现问题,当出现错误(如 404、500)时,显示的是 Tomcat 错误页面,而不是我的
我需要重写 Web 应用程序生成的 HTML。该要求同样适用于所有页面,因此我们很自然地选择了过滤器。 我抄袭了流包装方法 Oracle documentation on filters这适用于大多数
当找不到请求的资源时,我正在寻找一种干净的方法来在 Spring 4 中返回自定义的 404 错误页面。查询不同的域类型会导致不同的错误页面。 这里有一些代码来表明我的意图(Meter 是一个域类):
我在 Global.asax 中有一个全局错误处理程序,并试图在名为 ErrorPage.aspx 的页面中显示异常信息。我已经阅读了微软关于在 asp.net 页面之间传递信息的页面 (http:/
在我工作的 Spring Boot 1.4 应用程序中,我目前有 import org.springframework.boot.context.embedded.ErrorPage; 根据docum
我正在尝试使用 nginx 来提供使用 Error Page middleware 的自定义错误页面以便可以使用自定义错误页面处理对 lambda 服务(我无法控制)的 404 请求。我希望能够在该错
在此先感谢大家, 我已经覆盖了收集 header 的 HTTPServletResponse 并将一个 servlet 过滤器放在一起,该过滤器采用这些 header 并使用它们的适当方法设置它们(例
org.springframework.boot.context.embedded.ErrorPage 已弃用。 那么 maven/gradle 条目的用途是什么: org.springframewo
我知道您可以对带有 url 的普通页面使用布局过滤器,但在出现错误时 View 会发生变化,同时保持 url 不变,因此我无法使用基于路径的新布局。任何帮助,将不胜感激。谢谢! 最佳答案 在我的脑海中
当我在 tomcat 8 中呈现这个应用程序时,我一直得到一个空白页。我看到的唯一错误是: o.s.boot.context.web.ErrorPageFilter: Cannot forward t
我是一名优秀的程序员,十分优秀!