.htaccess

.htaccessで出来るレスポンスヘッダーのセキュリティ対策

2017.11.22

妖艶なMac

ホームページは常時HTTPS化がスタンダードです。
通信が暗号化されますのでセキュリティ的に望ましいという理由からです。その辺の事情も相まってホームページのセキュリティへの関心が高まってきている気がします。
一部の人間の間だけですが・・・・・・・・

ホームページのセキュリティへの関心は私の体感では制作者含めまだまだって感じはします。私自身もまだこれがホームページのセキュリティのベストプラクティスだ!と言えるものはありません。Content Security Policyのように実装するサイトを選ぶものもありますが取り入れれるものはドンドン取り入れてやろうって姿勢では取り組んでいます。

レスポンスヘッダで出来るセキュリティ

セキュリティについてちょくちょく調べて私が実際に.htaccessに記載している対策です。

Header always append X-Frame-Options SAMEORIGIN
Header always set X-Content-Type-Options "nosniff"
Header always set X-XSS-Protection "1; mode=block"
Header set Strict-Transport-Security "max-age=315360000; includeSubDomains; preload"

ちなみにこのサイトはNginxなので.htaccessは使えませんので、別の記事で紹介して今います。Niginxの方はそちらを参照してください。

クリックジャッキング対策

クリックジャッキング対策はiframeでサイトを読み込まれないようにして、サイトが悪用されないようにする対策です。下記を.htaccessに記述します。

Header always append X-Frame-Options SAMEORIGIN

X-Frame-Optionsの設定

DENY全部不許可
SAMEORIGIN同一サイトはOK
ALLOW-FROM全部許可

XSS対策

クロスサイトスクリプティング対策としてレスポンスヘッダーにX-XSS-Protectionを指定することにより、ユーザーが使用するブラウザのXSSに対するフィルター機能を強制的に有効にさせ、セキュリティリスクを軽減させる対策です。

Header always set X-XSS-Protection "1; mode=block"

X-Content-Type-Options

X-Content-Type-Optionsを指定することによりContent Typeを無視した動作を行うことを防ぎセキュリティリスクを回避します。

Header always set X-Content-Type-Options "nosniff"

HTTP Strict Transport Security(HSTS)

HSTSはホームページのHTTPS化の時に合わせて行うことが推奨されている対策です。ユーザーがHTTPでリクエストを行ってもHTTPSが適応されます。ただしこれは2回目の訪問からであり1回目からHSTSに適応させるにはHSTSプリロードへ登録する必要があります。

HSTSプリロードへの登録は下記URLから行えます。

Header set Strict-Transport-Security "max-age=315360000; includeSubDomains; preload"

対策出来ることはまだある

今回のレスポンスヘッダのセキュリティ対策はほんの一例にすぎません。厳密にセキュリティ対策を行うことを前提に制作されたホームページならContent Security Policyも設定するはずですし、サイトの制作方法によっても色々と対策があります。WordPressはレスポンスヘッダ以前にWordPressで行わなくてはならない対策もあります。とりあえずアンテナはってもっと理解を深めねばって感じです。

WEBSITE DESIGN REQUEST

ホームページ制作依頼について

W・D・Sでホームページ制作をご希望の方はお気軽にご相談ください。
制作内容、ご予算、納期をお知らせいただくとスムーズです。

ホームページ制作を相談する