zoukankan      html  css  js  c++  java
  • 启用了不安全的HTTP方法

    安全风险:
          可能会在Web 服务器上上载、修改或删除Web 页面、脚本和文件。
    可能原因:
          Web 服务器或应用程序服务器是以不安全的方式配置的。
    修订建议:
          如果服务器不需要支持WebDAV,请务必禁用它,或禁止不必要的HTTP 方法。
    方法简介:
    除标准的GET和POST方法外,HTTP请求还使用其他各种方法。许多这类方法主要用于完成不常见与特殊的任务。如果低权限用户可以访问这些方法,他们就能够以此向应用程序实施有效攻击。以下是一些值得注意的方法:
      PUT    向指定的目录上载文件
      DELETE   删除指定的资源
      COPY   将指定的资源复制到Destination消息头指定的位置
      MOVE   将指定的资源移动到Destination消息头指定的位置
      SEARCH   在一个目录路径中搜索资源
      PROPFIND   获取与指定资源有关的信息,如作者、大小与内容类型
      TRACE   在响应中返回服务器收到的原始请求
    其中几个方法属于HTTP协议的WebDAV(Web-based Distributed Authoring and Versioning)扩展。
     
    渗透测试步骤:
    使用OPTIONS方法列出服务器使用的HTTP方法。注意,不同目录中激活的方法可能各不相同。
    许多时候,被告知一些方法有效,但实际上它们并不能使用。有时,即使OPTIONS请求返回的响应中没有列出某个方法,但该方法仍然可用。
    手动测试每一个方法,确认其是否可用。
     
    使用curl测试:

    curl -v -X OPTIONS http://www.example.com/test/

    查看响应的 Allow: GET, HEAD, POST, PUT, DELETE, OPTIONS

    curl -v -T test.html  http://www.example.com/test/test.html

    看是否能上载来判断攻击是否生效。
     
    找一个存在的页面,如test2.html

    curl -X DELETE http://www.example.com/test/test2.html

    如果删除成功,则攻击有效。
     
    解决方案:
    如tomcat,配置web.xml

    <security-constraint>
    <web-resource-collection>
    <web-resource-name>fortune</web-resource-name>
    <url-pattern>/*</url-pattern>
    <http-method>PUT</http-method>
    <http-method>DELETE</http-method>
    <http-method>HEAD</http-method>
    <http-method>OPTIONS</http-method>
    <http-method>TRACE</http-method>
    </web-resource-collection>
    <auth-constraint></auth-constraint>
    </security-constraint>
    <login-config>
    <auth-method>BASIC</auth-method>
    </login-config>

    重启tomcat即可完成。
    以上的代码添加到某一个应用中,也可以添加到tomcat的web.xml中,区别是添加到某一个应用只对某一个应用有效,如果添加到tomcat的web.xml中,则对tomcat下所有的应用有效。
     
    FROM:http://yingfangming.blog.163.com
  • 相关阅读:
    BZOJ 2456 mode
    BZOJ 1041 [HAOI2008]圆上的整点
    东北育才 第6天和第7天
    POJ 3692 Kindergarten(最大团问题)
    KM算法及其应用
    UVA 11582 Colossal Fibonacci Numbers!(循环节打表+幂取模)
    ZOJ 3960 What Kind of Friends Are You?(读题+思维)
    POJ 2349 Arctic Network(最小生成树中第s大的边)
    HDU 1576 A/B(欧几里德算法延伸)
    NYOJ 1013 除法表达式(欧几里德算法+唯一分解定理)
  • 原文地址:https://www.cnblogs.com/tdcqma/p/5355801.html
Copyright © 2011-2022 走看看