TRACEメソッドって危ないのでしょうかの自分メモ
時々、Twitterなんかでも話題に上るWebサーバにおいて
TRACE/TRACK(以下はTRACEと表現をまとめます)メソッドが
有効であることに対するセキュリティ診断での指摘の程度について考えました。
きっかけはGSX社からリリースされていた「TRACEメソッドの現状」というもの。
よくまとまっていたので自分でも整理するためにメモ。
クロスサイトトレーシング(以下、XST)はもはや説明不要かもしれませんが
簡単に説明すると、WebサーバでTRACEメソッドが有効になっている場合に
HTTPヘッダに含まれている情報も盗まれてしまうといったものです。
この盗み出されてしまうかもしれない情報の中で例示される代表格は
Basic認証(IDとパスワードをBase64エンコードした文字列)ですね。
脆弱性診断(ツール、ペネトレーション問わず)ではWebサーバ上で
TRACEメソッドが許可されている
という条件で指摘を行うことが殆どです。
そして、多くの場合「中」程度の危険性として報告されているようです。
(報告される危険度に関する基準は各社、各ツールで温度差はあるかもしれませんが
ボクの勤めている会社の場合は過去の連載記事に書かせていただいているのでこちらを参考にしてください。)
しかし、XSTの脆弱性を利用して、情報を盗み出すには複数の条件があります。
条件は以下の通り。(XSTを利用してBasic認証情報を窃取する場合)
①ウェブアプリケーションまたはWebサーバでXSSが実行可能
②WebサーバでTRACEメソッドが許可されている。
③サイト上のどこかでBasic認証が用いられている
④攻撃されるユーザのブラウザがXMLHttpRequestによる
TRACEメソッド実行が許可・対応されているブラウザを使用している。
この④についてGSX社のレポートに書かれていたことををまとめると
各主要ブラウザのTRACEメソッドへの対応状況は下記の通りになります。
・InternetExploer: Service Pack3(2008年4月21日リリース)以降は非対応
・FireFox: バージョン1.5(2005年11月29日リリース)以降は非対応
・Chrome: 正式リリース版(2008年12月12日リリース)以降は非対応
・Safari: Windows正式版(2008年3月18日リリース)以降は非対応
・Opera: バージョン8.0(2005年4月18日リリース)以降は非対応
これを見ていただけるとお分かりいただけるかと思いますが
現在よく使われているであろう殆どのブラウザにおいて
このXSTを利用した攻撃を成立させることができないということになります。
もう少し言うと
2011年4月22日現在
サポートが行われている主要ブラウザにTRACEメソッドを実行させることのできるものはありません。
ただし、ココ(The Internet Explorer 6 Countdown)を見るとInternet Explore6はいまだに利用率が1割程度となっています。
その中には極僅かながらService Pack3以前のものが含まれていると考えらますが
この4つの条件を満たし、攻撃を成立させることは殆どないだろうと判断できると思います。
少なくとも「中」程度の危険性はないと言えると思います。
ちなみに、ボクの勤めている会社でのペネトレーションテストで
TRACEメソッドが許可されている場合の指摘については
今年度から危険度を「低」だったものを「他」(インフォメーションレベル)としました。