啓用了不安全的HTTP方法

參考網址:http://www.cnblogs.com/tdcqma/p/5355801.html


安全風險:

      可能會在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 --X OPTIONS http://www.example.com/test/

查看響應的 Allow: GET, HEAD, POST, PUTDELETE, OPTIONS

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

看是否能上載來判斷***是否生效。

 

找一個存在的頁面,如test2.html

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

如果刪除成功,則***有效。(測試時好像並不能真正刪除文件,命令可以執行但是返回403禁止頁面信息,不知道是不是tomcat問題,如果添加下面配置,則直接禁止不會有返回頁面)

 

解決方案:

如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下所有的應用有效。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章