GAE/jなjspでX-Content-Type-Options: nosniffのつけ方

Google App Engine/Javaを使っているのですが、jspに「X-Content-Type-Options: nosniff」をつけたのでメモ、importしたすぐ後に以下を追加しました。

response.setHeader("X-Content-Type-Options","nosniff");

追加で、以下も設定しておきました、Expiresも追加しておこうかなぁ・・・そのうち。

response.setHeader("X-XSS-Protection","1; mode=block");
response.setHeader("X-Frame-Options","SAMEORIGIN");

確認は、以下のURLでも可能です。

指定のURLへHTTPリクエストを送信し、レスポンスのヘッダ情報を表示します。

http://www.crystal-creation.com/web-appli/information/http-response/

ちゃんと登録されていますね。X-Frame-Optionsはフレームをローカルで作ってテストしたら確認できますよ!

Name Value
Content-Type text/html; charset=utf-8
X-Content-Type-Options nosniff
X-XSS-Protection 1;mode=block
X-Frame-Options SAMEORIGIN
Date Thu, 13 Jan 2011 00:12:28 GMT
Server Google Frontend
Content-Length 0
http://www.crystal-creation.com/web-appli/information/http-response/

変更前はこちら

Name Value
Content-Type text/html; charset=utf-8
Date Thu, 13 Jan 2011 03:56:46 GMT
Server Google Frontend
Content-Length 0

参考

動的にコンテンツを生成している場合には、とにかくあらゆるコンテンツのレスポンスヘッダに X-Content-Type-Options: nosniff を付与するようにしましょう。少なくとも、IE8以降ではHTML以外のものがHTML扱いされてXSSが発生する、ということはなくなります

X-Content-Type-Options: nosniff つかわないやつは死ねばいいのに! - 葉っぱ日記

というか、ほとんどがIE8以降にMicrosoftが導入なんだから、Microsoftはきちんと整理して文書にまとめて欲しい。

1分でわかる「X-ナントカ」HTTPレスポンスヘッダ - 葉っぱ日記