HTTPヘッダー研究その4: IISのHTTPヘッダーを書き換えよう
IISのHTTPヘッダーを書き換える方法は、apacheのそれと比べて情報源がかなり限定されていて調べるのに大変苦労しました。それだけにここでその方法を書いてしまうのはちょっと惜しい気持ちもあるのですが、まあ隠しても仕方ないので書いてしまいます。(この書き込みが役に立たれたら是非コメント欄に書き込んでください・・・)
基本的にIISでHTTPレスポンスヘッダーを書き換えるためにはISAPIフィルタリングアプリケーションをIISに登録する必要があります。
【HTTPヘッダーを自由自在に書き換える方法】
HTTPヘッダーを自由自在に書き換えられる無料のISAPIアプリは残念ながらみつかりませんでした。しかし有料ではservermaskという強力なものがあります。
servermaskは不要なHTTPヘッダーを消したり書き換えたりする機能の他に、HTTPヘッダー的に他のWEBサーバに化けるという機能もあります。HTTPヘッダーいじりが本当に自由自在にできるので便利です。価格は1サーバライセンス99.95ドル。サーバ台数が少ないサイトでは有効ではないでしょうか。(うちはサーバ台数が多すぎて無理です・・・)
【HTTPヘッダーの製品情報を隠蔽する】
製品情報の隠蔽、すなわちServerName部分だけ隠蔽するだけだったら無料のISAPIが2つ存在します。
1つめはマイクロソフト社が提供するURLSCANツールを入れる方法です。
まずはインストールしましょう。次に設定ファイルを変更します。設定ファイル
c:\WINNT\system32\inetsrv\urlscan\urlscan.ini
の中で「RemoveServerHeader=1」として、urlscan.exeを実行し、IISを再起動することで適用されます。ただしURLSCANツールはHTTPヘッダーの書き換えのためにあるというよりは不正アクセスの防御のために作られたツールです。適用の前にはURLSCANの仕組みをよく理解しておくことが必要です。特に[AllowExtensions]に.aspを追加し、[DenyExtensions]で.aspを削除しておかないとASP言語の実行がされなくなります。使い方を間違えるととても危険なツールです。
もう1つはMoIISProtectをISAPIに追加する方法です。
MOIISProtectをISAPIフィルタに登録するだけでIIS製品情報が非表示になります。これは簡単で便利です。
【HTTPヘッダーのETag情報を隠蔽する】
最後にETag情報だけを隠蔽するためのETagFixというISAPIアプリを紹介します。これは試してないですが、多分予想通りの働きをしてくれるものと思われます。無料だそうです。
Comments