网络安全-使用HTTP动词篡改的认证旁路
这个东西去年的安全扫描都没有,今天就扫出来了,非常奇怪的一个东西。好吧,找资料找原因。结果可能应为搜索名词的原因,这个问题在群友的帮助下解决了。
在我理解中servlet只有post和get方法,然后结果怎么出来这么多奇奇怪怪的方法呢。这些方法干啥的呢?
首先找到的是一个禁用http下不安全的方法的博客,具体谁的博客我也没关注。先按照他的方法修改,修改方法也挺简单,改下tomcat的web.xml就好。
- <security-constraint>
- <web-resource-collection>
- <http-method>HEAD</http-method>
- <http-method>PUT</http-method>
- <http-method>DELETE</http-method>
- <http-method>OPTIONS</http-method>
- <http-method>TRACE</http-method>
- <url-pattern>/*</url-pattern>
- </web-resource-collection>
- <auth-constraint>
- <role-name></role-name>
- </auth-constraint>
- </security-constraint>
<security-constraint>
<web-resource-collection>
<http-method>HEAD</http-method>
<http-method>PUT</http-method>
<http-method>DELETE</http-method>
<http-method>OPTIONS</http-method>
<http-method>TRACE</http-method>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name></role-name>
</auth-constraint>
</security-constraint>
为啥要加这个呢!找了下web.xml的说明
WebDAV (Web-based Distributed Authoring and Versioning)是基于 HTTP 1.1 的一个通信协议。它为 HTTP 1.1 添加了一些扩展(就是在 GET、POST、HEAD 等几个 HTTP 标准方法以外添加了一些新的方法),使得应用程序可以直接将文件写到 Web Server 上,并且在写文件时候可以对文件加锁,写完后对文件解锁,还可以支持对文件所做的版本控制。这个协议的出现极大地增加了 Web 作为一种创作媒体对于我们的价值。基于 WebDAV 可以实现一个功能强大的内容管理系统或者配置管理系统。
好吧,这样就理解了,既然是一个通讯协议增加了这些方法,那么按博主的方法改掉就好了。
可惜事与愿违,使用AppScan扫描还是存在这个问题。那么就纳闷了,为啥会出现这样的情况呢?
于是找到了
AppScan问题“HTTP动词篡改导致的认证旁路”的解决方法
- <span style="white-space:pre"> </span> String method = req.getMethod();
- if(!"GET".equals(method)&&!"POST".equals(method)&&!"HEAD".equals(method))
- {
- log.error("The request with Method["+method+"] was forbidden by server!");
- response.setContentType("text/html;charset=GBK");
- response.setCharacterEncoding("GBK");
- resp.setStatus(403);
- response.getWriter().print("<font size=6 color=red>对不起,您的请求非法,系统拒绝响应!</font>");
- return;
- }
<span style="white-space:pre"> </span> String method = req.getMethod();
if(!"GET".equals(method)&&!"POST".equals(method)&&!"HEAD".equals(method))
{
log.error("The request with Method["+method+"] was forbidden by server!");
response.setContentType("text/html;charset=GBK");
response.setCharacterEncoding("GBK");
resp.setStatus(403);
response.getWriter().print("<font size=6 color=red>对不起,您的请求非法,系统拒绝响应!</font>");
return;
}
在burpsuite上面验证,也成功的反应出了正确的消息头。
- resp.setStatus(403);
resp.setStatus(403);
不然是无法通过AppScan的扫描的
网络安全-使用HTTP动词篡改的认证旁路的更多相关文章
- asp.net mvc 安全测试漏洞 " HTTP 动词篡改的认证旁路" 问题解决
IBM Security Appscan漏洞筛查-HTTP 动词篡改的认证旁路漏洞,具体解决方案: 在Web.Config中system.webServer节点增加配置security: <se ...
- AppScan9.0.3.5漏洞扫描记录
1.跨站点脚本编制 这个安全漏洞拿cookie做文章,而且是将前端的一些弹窗方法,要么通过脚本注入,要么通过url.encode之后注入,看几个变异的版本: 版本一: cookie 从以下位置进行控 ...
- 使用appscan安全扫描问题以及解决办法
最近在做安全扫描,把遇到的一些问题以及一些解决方法记录下,以备后用. 扫描软件: IBM Security AppScan Standard 规则: 17441 1. 已解密的登录请求 (高) - ...
- 传说中的WCF(10):消息拦截与篡改
我们知道,在WCF中,客户端对服务操作方法的每一次调用,都可以被看作是一条消息,而且,可能我们还会有一个疑问:如何知道客户端与服务器通讯过 程中,期间发送和接收的SOAP是什么样子.当然,也有人是通过 ...
- 传说中的WCF:消息拦截与篡改
我们知道,在WCF中,客户端对服务操作方法的每一次调用,都可以被看作是一条消息,而且,可能我们还会有一个疑问:如何知道客户端与服务器通讯过程中,期间发送和接收的SOAP是什么样子.当然,也有人是通过借 ...
- 腾讯云TcaplusDB获新加坡MTCS最高等级安全认证
近日,经过国际权威认证机构DNV GL的全面评估审核,TcaplusDB获得了新加坡多层云安全(以下简称"MTCS")T3级最高等级认证,这标志着TcaplusDB全面满足了新加坡 ...
- Spring Security 5.0.x 参考手册 【翻译自官方GIT-2018.06.12】
源码请移步至:https://github.com/aquariuspj/spring-security/tree/translator/docs/manual/src/docs/asciidoc 版 ...
- Appscan漏洞之Authentication Bypass Using HTTP Verb Tampering
本次针对 Appscan漏洞 Authentication Bypass Using HTTP Verb Tampering(HTTP动词篡改导致的认证旁路)进行总结,如下: 1. Authentic ...
- Nmap备忘单:从探索到漏洞利用(Part 4)
这是我们的Nmap备忘单的第四部分(Part 1. Part 2. Part 3).本文中我们将讨论更多东西关于扫描防火墙,IDS / IPS 逃逸,Web服务器渗透测试等.在此之前,我们应该了解一下 ...
随机推荐
- 浏览器在初始化JS 环境时都发生了些什么
原文:https://segmentfault.com/a/1190000005754797 1.用 C/C++ 构造内部数据结构创建一个 OP 即(Object.prototype)以及初始化其内部 ...
- LinuxShell脚本编程7-for和while
1.for的使用 #! /bin/bash ` do echo $a done 表示:a初始值为1,然后a=a+2的操作,一直到a<=10为止 for((i=1;i<=10;i=i+2)) ...
- ios UISearchDisplayController 实现 UITableView 搜索功能
UISearchDisplayController 是苹果专为 UITableView 搜索封装的一个类. 里面内置了一个 UITableView 用于显示搜索的结果.它可以和一个需要搜索功能的 co ...
- 游戏场景下的DDoS风险分析及防护
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 作者:腾讯游戏云资深架构师 vince 本篇文章主要是分享游戏业务面临的安全风险场景,以及基于这些场景的特点,我们应该如何做好对应的防护. ...
- Redis 小结
一.redis简介 redis是一款基于C语言编写的,开源的非关系型数据库,由于其卓越的数据处理机制(按照规则,将常用的部分数据放置缓存,其余数据序列化到硬盘),大家也通常将其当做缓存服务器来使用. ...
- Silverlight & Blend动画设计系列二:旋转动画(RotateTransform)
Silverlight的基础动画包括偏移.旋转.缩放.倾斜和翻转动画,这些基础动画毫无疑问是在Silverlight中使用得最多的动画效果,其使用也是非常简单的.相信看过上一篇<偏移动画(Tra ...
- ASP.NET MVC4 新手入门教程之四 ---4.添加一个模型
在本节中,您将添加一些类,用于管理数据库中的电影.这些类将 ASP.NET MVC 应用程序的"模型"部分. 您将使用一种称为实体框架的.NET 框架数据接入技术来定义和使用这些模 ...
- CSS基础知识---浮动,定位和盒模型
转载请注明出处! 需要掌握的三个最重要的CSS概念是浮动,定位和盒模型. 盒模型概述: 页面上的每个元素都被看做一个矩形框(元素框or盒模型),这个框由元素内容,内边距,边框和外边距组成. 内边距出现 ...
- [android] 练习使用ListView(三)
解决OOM和图片乱序问题 package com.android.test; import java.io.InputStream; import java.net.HttpURLConnection ...
- OkHttp完全解析之整体调用流程
前言:阅读好的代码如同观赏美景一样的美妙 OkHttp是一个Square公司在github开源的Java网络请求框架,非常流行.OkHttp 的代码并不是特别庞大,代码很多巧妙的实现,非常值得学习. ...