我寫了一個春天的web應用程序。除了一件事以外,非常穩固。應用程序返回一個HTTP OPTIONS請求,其響應是「允許:GET,HEAD,POST,PUT,DELETE,OPTIONS」但事實並非如此,只允許GET和POST。其他操作(GET和POST除外)返回「操作不支持」錯誤405和服務器名稱和版本等。安全團隊不喜歡服務器的所有詳細信息都返回「不支持」錯誤消息的事實。Spring框架:HTTP選項返回所有方法(獲取,放置,發佈,刪除,跟蹤,頭,選項)
我花了很多時間試圖覆蓋該錯誤頁面或引入405的自定義錯誤頁面......但我沒有成功。 我花了整整一天的時間嘗試禁用HTTP選項。沒有成功。 只是一個細節,我跑捲曲語句來測試:
curl "http://localhost:8080/webappX/welcome.htm" -X PUT -v
而且我的應用程序的回報:
HTTP Status 405 - Request method 'PUT' not supported
Tomcat/6.0...etc
由於該數據(Tomcat的版本,服務器信息,並響應元數據)可以用於安全攻擊,我如何創建一個隱藏我的服務器的詳細信息,並提供一個非常小的錯誤頁面的自定義405頁? 或者我該如何禁用PUT,DELETE,TRACE,OPTIONS,HEAD,這樣tomcat可能會忽略它們或者不提供關於我的服務器的內部信息。
謝謝
非常感謝!你讓我今天很開心。除了OPTIONS之外,它對所有操作都很完美。對於選擇我不得不添加到web.xml中有以下 \tdispatchOptionsRequest \t 真正的參數值> \t 和它的工作般的魅力。你搖滾! –
Rose
而在myInterceptor.java而不是默認的Forbidden頁面,它給出了一些服務器信息,我剛剛創建了一個405.htm頁面併發送response.sendredirect()到如下所示的頁面:response.sendRedirect(「405.htm」) ; – Rose
非常好,我很高興看到一切都已經解決。 –