问题描述:通过fiddler,使用raw重现HTTP请求,修改GET为TRACE重新请求。tomcat返回405,head 包含
Allow:POST,GET,DELETE,OPTIONS,PUT,HEAD
解决方法:使用filter进行过滤和处理。
1.修改tomcat的server.xml,允许trace方法:<Connector allowTrace="true"
2.修改web.xml,添加filter
<filter> <filter-name>filterUtil</filter-name> <filter-class>com.utils.FilterUtil</filter-class> </filter> <filter-mapping> <filter-name>filterUtil</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
3.添加filter类
package com.utils; import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class FilterUtil implements Filter { Logger log=LoggerFactory.getLogger(this.getClass()); @Override public void destroy() { } @Override public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest) arg0; HttpServletResponse response = ((HttpServletResponse) arg1); String m=request.getMethod(); if(!"GET".equals(m)&&!"POST".equals(m)){ System.out.println("GET or POST only "); response.setHeader("Allow", "GET,POST"); response.setStatus(405); return; } arg2.doFilter(arg0, arg1); } @Override public void init(FilterConfig arg0) throws ServletException { } }
按错误的method请求即可看到效果:
相关推荐
### 关于HTTP协议禁用不常用方法漏洞的解决方案 #### 漏洞概述 在网络通信中,HTTP(超文本传输协议)是客户端与服务器之间进行数据交换的主要方式之一。HTTP定义了一系列请求方法来规范交互过程,包括但不限于GET...
不安全的 HTTP 方法、CSRF 等漏洞修复问题 在本文中,我们将讨论不安全的 HTTP 方法、CSRF 漏洞等问题的修复方法。 一、敏感信息泄露 敏感信息泄露是指攻击者可以通过访问网站目录直接下载文件,进入别的网页,...
**Internet Information Services (IIS)**是微软提供的Web服务器解决方案,同样可以通过配置来禁用不安全的HTTP方法。 1. **禁用WebDAV**:如果服务器不需要支持WebDAV功能,可以直接禁用该服务。对于IIS 7及更高...
tomcat中间件禁用webdav方法 通过本方法,可以完成所有运行于该tomcat之上的java项目均拦截webdav方法。
禁用RC4(SSL/TLS 受诫礼(BAR-MITZVAH)攻击漏洞(CVE-2015-2808)【原理扫描】) 编缉$CATALINA_HOEM/conf/server.xml配置文件,找到https端口配置处,修改如下: 复制代码 ...
3. **浏览补丁列表**:在上述页面中,你可以找到针对不同版本的Tomcat所发布的安全补丁列表及其详细信息,包括发布日期、影响范围、解决的问题等。 4. **下载补丁文件**:点击具体的补丁名称或版本号链接,进入补丁...
在本文中,我们将深入探讨Tomcat 8.5.28这一特定版本,以及它如何修复了一个安全限制绕过漏洞。 标题中的"Tomcat-8.5.28 无漏洞"意味着该版本已经对已知的安全问题进行了修补,确保了用户的服务器不会受到这些漏洞...
然而,在某些情况下,我们可能需要禁止 Tomcat 上的某些 HTTP 方法,例如 PUT、DELETE、HEAD、OPTIONS 和 TRACE 方法,以确保应用程序的安全性。 在本文中,我们将讨论如何禁止 Tomcat 上的 PUT 等方法,以防止未经...
因此,在不需要WebDAV功能或者希望增强服务器安全性的情况下,应该考虑禁用这些不必要的HTTP方法。 对于Tomcat服务器,禁用WebDAV或特定HTTP方法可以通过修改应用程序的`web.xml`配置文件来实现。以下是具体步骤: ...
Java 代码启动 Tomcat 在 Java 中,使用 Tomcat 服务器来发布 Web 应用程序是一种常见的做法。下面,我们将详细介绍如何使用 Java 代码来启动 Tomcat 服务器,并实现远程控制 Tomcat。 标题: Java 代码启动 ...
tomcat中server配置文件的结构,以及处理一个http请求的全过程
### 网站常见漏洞及解决办法 ...总之,针对网站常见的安全漏洞,除了采用上述具体的解决方案外,还应保持良好的安全实践,包括但不限于定期更新软件、使用强密码策略、加密敏感数据传输等,以降低遭受攻击的风险。
在正常情况下,Apache Tomcat的设计不允许通过PUT方法上传JSP文件,这是一种安全措施,旨在阻止潜在的攻击者上传包含恶意代码的JSP文件并执行远程代码。然而,在7.0.0到7.0.79版本中,存在一个设计缺陷,即对上传...
总之,禁用Tomcat的AJP端口是加强服务器安全的重要步骤,尤其是在不使用AJP通信或存在安全顾虑时。通过以上方法,您可以根据实际需求选择合适的方式来禁用或限制AJP服务,从而提高系统的整体安全性。
该漏洞允许攻击者通过精心构造的HTTP PUT请求上传任意文件至Tomcat服务器,进而执行服务器端代码。 #### 实验目的 本实验旨在通过模拟攻击过程,帮助读者理解CVE-2017-12615漏洞的具体机制及其潜在危害。通过实践...
2020 年 2 月 4 日,Apache Tomcat 官方发布了新的版本,该版本修复了一 个影响所有版本(7.*、8.*、9.*)的文件包含漏洞,但官方暂未发布安全公告 2020 年 2 月 20 日,CNVD 发布了漏洞公告,对应漏洞编号:CNVD-...
- **解决**: 确认请求方法是否正确,如资源仅支持GET,则不能使用POST方法访问。 **9. 406 Not Acceptable** - **场景**: 服务器找到了资源,但内容类型不被客户端接受。 - **解决**: 检查`Accept`头部中的内容类型...
这个标题和描述提到了"Apache Tomcat远程代码执行验证代码",这通常涉及到一个安全漏洞,允许攻击者通过发送特定的HTTP请求在服务器上执行任意代码。 远程代码执行(RCE)是一种严重的安全风险,它允许攻击者在目标...