设为首页收藏本站

安徽论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 17381|回复: 0

不安全的http方法

[复制链接]

110

主题

0

回帖

342

积分

中级会员

Rank: 3Rank: 3

积分
342
发表于 2022-3-26 10:31:29 | 显示全部楼层 |阅读模式
网站内容均来自网络,本站只提供信息平台,如有侵权请联系删除,谢谢!
本章节所需工具burp和curl
curl下载地址:https://curl.haxx.se/download.html
漏洞简介


什么是http方法?
   根据HTTP标准,HTTP请求可以使用多种方法,其功能描述如下所示。
  HTTP1.0定义了三种请求方法: GET、POST、HEAD
  HTTP1.1新增了五种请求方法:OPTIONS、PUT、DELETE、TRACE 、CONNECT
  
什么是不安全的http方法?
   在所有的HTTP方法中,安全界认为PUT、DELETE、TRACE是不安全的,另外WebDAV中的几个方法,RFC 5789中的PATCH方法也被认为是不安全的。(TRACE容易引发XST攻击,PATCH修改资源的部分内容,PUT/DELETE没有认证机制等原因,不仅仅因为它们会产生结果)
  不安全的http方法有什么危害?
   1、OPTIONS方法,将会造成服务器信息暴露,如中间件版本、支持的HTTP方法等。
  2、PUT方法,由于PUT方法自身不带验证机制,利用PUT方法即可快捷简单地入侵服务器,上传Webshell或其他恶意文件,从而获取敏感数据或服务器权限。
  3、DELETE方法,利用DELETE方法可以删除服务器上特定的资源文件,造成恶意攻击。
  漏洞利用


环境搭建
   1、测试环境为:WIN10 64位、Tomcat 8.5.15、curl 7.65、burp 1.7.30
  2、在Tomcat 8默认配置中,web.xml文件的org.apache.catalina.servlets.DefaultServlet的
  readonly参数默认是true,即不允许DELETE和PUT操作,所以通过PUT或DELETE方法访问,就会报403错误。为配合测试,把readonly参数设为false。
  
漏洞验证
   打开burp抓包,ctrl+R发送到重放模块,修改http方法为OPTIONS,再返回包中发现支持的方法,如下图
  
漏洞利用
   安装curl:https://blog.csdn.net/dear_alice_moon/article/details/79509466
  使用方法:https://www.cnblogs.com/hbzyin/p/7224338.html
  打开如下图
  
   对目标url进行测试,如下图
  
PUT上传文件
   payload:curl -X PUT http://127.0.0.1:8800/test/1.html -d "1111"
  
DELETE删除文件
   payload:curl -X DELETE http://127.0.0.1:8800/test/1.html
  
   如果不是jsp的站点,我们可以直接上传webshell,如果是JSP站点,
  在默认配置下,涉及jsp、jspx后缀名的请求由org.apache.jasper.servlet.JspServlet处理**,除此之外的请求才由org.apache.catalina.servlets.DefaultServlet处理。
  刚才将DefaultServlet的readonly设置为false,并不能对jsp和jspx生效。因此,当PUT上传jsp和jspx文件时,Tomcat用JspServlet来处理请求,而JspServlet中没有PUT上传的逻辑,所以会403报错。
  绕过限制
   tomcat任意文件上传漏洞:影响版本是tomcat7.0.0-7.0.81版本。我这里没装先不试了
  利用Tomcat 7的任意文件上传漏洞(CVE-2017-12615)来实现目的,该漏洞**通过构造特殊后缀名,绕过tomcat检测,让它用DefaultServlet的逻辑处理请求,从而上传jsp文件**。具体来说,主要有三种方法,比如shell.jsp%20 、shell.jsp::$DATA 、shell.jsp/
  如何修复


  如何修复此漏洞?
  在配置文件中添加如下代码
  1.                                     fortune                /*                PUT                DELETE                HEAD                OPTIONS                TRACE                                
复制代码


  • 用于限制对资源的访问;
  • 用于限制那些角色可以访问资源,这里设置为空就是禁止所有角色用户访问;
  • 指定需要验证的资源
  • 指定那些方法需要验证

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
免责声明
1. 本论坛所提供的信息均来自网络,本网站只提供平台服务,所有账号发表的言论与本网站无关。
2. 其他单位或个人在使用、转载或引用本文时,必须事先获得该帖子作者和本人的同意。
3. 本帖部分内容转载自其他媒体,但并不代表本人赞同其观点和对其真实性负责。
4. 如有侵权,请立即联系,本网站将及时删除相关内容。
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表