最近掃描項目所在的服務器發現一個漏洞,名稱叫“遠程WWW服務支持TRACE請求”,提供的解決辦法沒多大用處,只說是“管理員應禁用WWW服務對TRACE請求的支持”,但具體怎樣做不太清楚,上網搜了一下,利用apache服務器的rewrite功能,對TRACE請求進行攔截,以下是解決辦法。
詳細描述 | 遠端WWW服務支持TRACE請求。RFC 2616介紹了TRACE請求,該請求典型地用於測試HTTP協議實現。攻擊者利用TRACE請求,結合其它瀏覽器端漏洞,有可能進行跨站腳本攻擊,獲取敏感信息,比如cookie中的認證信息,這些敏感信息將被用於其它類型的攻擊。 |
解決辦法 | 管理員應禁用WWW服務對TRACE請求的支持。 IIS URLScan Apache Source Code Modification Mod_Rewrite Module RewriteEngine on RewriteCond {REQUEST_METHOD} ^(TRACE|TRACK) RewriteRule .* - [F] |
步驟:
1、停止Apache服務(以root權限登錄)
# cd /opt/IBM/HTTPServer/bin
# ./apachectl stop
2、修改httpd.conf文件
# cd /opt/IBM/HTTPServer/conf
編輯httpd.conf文件
# 首先,激活rewrite模塊(去掉符號#)
LoadModule rewrite_module modules/mod_rewrite.so
# 啓用Rewrite引擎
RewriteEngine On
# 對Request中的Method字段進行匹配:^TRACE 即以TRACE字符串開頭
RewriteCond %{REQUEST_METHOD} ^TRACE
# 定義規則:對於所有格式的來源請求,均返回[F]-Forbidden響應
RewriteRule .* - [F]
對於2.0.55以上版本的apache服務器,有一種更簡單的辦法:
TraceEnable off
3、啓動Apache服務(以root權限登錄)
# cd /opt/IBM/HTTPServer/bin
# ./apachectl start