• 关于WebDAV带来的网站潜在安全问题的疑问


    WebDAV:分布式创作和版本控制协议 (Web-based Distributed Authoring and Versioning) 一种基于 HTTP 1.1协议的通信协议。它扩展了HTTP 1.1,在GETPOSTHEAD等几个HTTP标准方法以外添加了一些新的方法,使应用程序可直接对Web Server直接读写,并支持写文件锁定(Locking)及解锁(Unlock),还可以支持文件的版本控制

    HTTP 1.1(请参阅 IETF RFC 2068)提供一组可供客户端与服务器通讯的方法,并指定响应(从服务器返回发出请求的客户端)的格式。 WebDAV 完全采用此规范中的所有方法,扩展其中的一些方法,并引入了其他可提供所描述功能的方法。 WebDAV 中使用的方法包括:
    1.Options、Head 和 Trace。
    主要由应用程序用来发现和跟踪服务器支持和网络行为。
    2.Get。
    检索文档。
    3.Put 和 Post。
    将文档提交到服务器。
    4.Delete。
    销毁资源或集合。
    5. Mkcol。
    创建集合。
    6.PropFind 和 PropPatch。
    针对资源和集合检索和设置属性。
    7.Copy 和 Move。
    管理命名空间上下文中的集合和资源。
    8. Lock 和 Unlock。
    改写保护。

    通俗的说,该协议允许我们通过http协议就能对远程服务器上的文件进行操作,包括写入、删除、更新等。

    理解到这里,貌似如果在web服务中开启了该协议,意味着为恶意攻击者开启了一个可以攻击服务器的新的便捷途径,并且能够轻易的造成恶劣的影响。

    网上的资料都说应该禁用web服务对该协议的支持,对于tomcat来说,好像默认就是不启用对webdav协议的支持的,但是有很多人的博客上都写了如何在web.xml中关闭http的不常用的或者不安全的方法,关闭代码如下,添加到web.xml中即可:

    <security-constraint>  
      <web-resource-collection>  
       <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>
    

     目前不明白的地方是:

    webdav协议如此不安全,出现的意义何在?

    tomcat默认就不开启webdav协议的支持,禁用put、delete等方法是不是有点多此一举?

    有些安全漏洞扫描软件,会将支持options方法当成是webdav扩展漏洞,这样合适么?

    期待各位大神给予指点。。。

  • 相关阅读:
    kafka原理深入研究 (转 )
    redis——持久化篇
    IDEA 配置环境和相关工具整理(新手入门)
    Spring Data JPA(官方文档翻译)
    springboot:spring data jpa介绍
    JDK8-十大新特性-附demo
    JDK8新特性一览
    Maven中的pom.xml配置文件详解
    数据库面试题(更新中...)
    互联网协议系列
  • 原文地址:https://www.cnblogs.com/anai/p/4624377.html
Copyright © 2020-2023  润新知