TRACEメソッドをOffにする方法

■Traceメソッドとは?
クライアントが送信したリクエストをそのまま返す機能


■Traceメソッドを利用した攻撃方法

「クロスサイトトレーシング」というものがあります。
これは、クライアントにTRACEメソッドを発行するように仕向け、そのレスポンスを
なんらかの形で取得することでBasic認証のパスワードを搾取するという攻撃です。

引用元:http://grin.flagbind.jp/archives/memo/apache/index.html


■TRACEメソッドを無効にする方法
1. TraceEnable

以下の各バージョンから提供されているディレクティブ
1.3.34
2.0.55
2.2.*


・設定方法

TraceEnable Off
* デフォルトは On


・参考URL
http://grin.flagbind.jp/archives/memo/apache/index.html
http://itpro.nikkeibp.co.jp/article/USNEWS/20051020/223109/
http://httpd.apache.org/docs/2.2/ja/mod/core.html#traceenable


2.mod_rewriteによる対応
バージョンの問題などで TraceEnable ディレクティブがない場合は、mod_rewriteにより対応可能です。


   RewriteEngine on
   RewriteCond %{REQUEST_METHOD} ^TRACE
   RewriteRule .* - [F]


これは、REQUEST_METHOD が TRACE だったら 「403 URL Forbidden」 を返すという設定です。
ですので、OPTIONSメソッドで確認すると、もちろんTRACEは許可されています。


参考:http://grin.flagbind.jp/archives/memo/apache/index.html