【apache】TRACEメソッドを無効化する
TRACEメソッドとは?
TRACEメソッドはWebサーバに対してクライアントが送信した内容をそのまま返すメソッド。
TRACEメソッドが利用できるとどうなる?
WebサーバがTRACEメソッドをサポートしている場合、XST(Cross Site Tracing)という攻撃をおこなわれる可能性がある。
クライアントが送信した内容は、ヘッダも含めてそのまま返されるので、セッションIDを含んだCookieや、ベーシック認証のID、パスワードなどがレスポンスで返ってくる。これを悪意のあるスクリプトが取得する可能性がある。
TRACEメソッドを無効化する
TRACEメソッドを無効化する方法。
- サーバー設定ファイルにて、TraceEnableディレクティブの値を「Off」に設定する。
-
※Apache 1.3.34、2.0.55以降の場合。
TraceEnable Off
- mod_rewriteを使用する。
-
Apache 1.3.33、2.0.54以前の場合などは、mod_rewiteを利用して対応する。
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_METHOD} ^TRACE RewriteRule ^.*$ - [F] </IfModule>
TRACEメソッドがデフォルトでOnになっているのは、非常に謎なところです。Webサーバーを立てたら、まずOffにしておいてよいと思います。
コメント