WordPressのセキュリティ強化対策!コピペでHTTPセキュリティヘッダを追加

WordPressのセキュリティ強化対策!コピペでHTTPセキュリティヘッダを追加

WordPressは世界で多くの利用者がいるオープンソースのコンテンツ管理システム(CMS)です。
一方で脆弱性もたくさん公開されています。
利用者が多い&脆弱性も多いシステムなので攻撃者の格好の攻撃対象にもなりやすいと言えるでしょう。

WordPressのリスクを理解し攻撃されないようにセキュリティ強化&対策をしていけば安全に運用できることが可能です。

今回、WordPressのセキュリティ強化&対策の一つの手段としてHTTPセキュリティヘッダを追加することで、WordPressへの攻撃や脆弱性を軽減する方法をご紹介します。

HTTPセキュリティヘッダとは

 

セキュリティヘッダとは、Webブラウザでのセキュリティ対策を設定するためにWebアプリケーションで使用されるディレクティブです。ブラウザはこれらのディレクティブに基づき、クロスサイトスクリプティングやクリックジャッキングなど、クライアント側の脆弱性を利用するのを困難にすることができます。また、ヘッダを使用すると、有効なTLS通信のみを許可したり、有効な証明書の使用を強制したり、特定のサーバ証明書の使用を強制したりするようにブラウザを設定することもできます。

 

引用元:HTTPセキュリティヘッダの設定 | Deep Security

 

アバター
ME

まずは以下のサイトから自分のサイトの状況をチェックしましょう。

▼チェックサイト

.htaccessに以下のソースコードをコピペ

.htaccessのファイルをイジる時は最初にバックアップとりましょう。
その後、ドメイン直下にある.htaccess内に追記します。
以上となります。

ざっくり説明

1行目:HSTSの設定

サイトを常時SSL化していてもhttpでアクセスされる場合があります。
httpでアクセスされると攻撃者を受ける可能性があります。
このようなことを回避するために、httpにアクセスされたら強制的にhttpsへ接続するように指示するセキュリティ対策。

2行目:Content-Security-Policyの設定

常時SSL化したのに、サイト内の画像などにhttp://から始まるソースがあると、ブラウザは「これは安全なWebサイトではない」と認識してしまいます。
そういった場合であってもブラウザがhttp://→https://としてくれるようになります。

3行目:X-Content-Type-Optionsの設定

ブラウザによるコンテンツタイプの自動判別機能を悪用してスクリプトを実行されるXSS(クロスサイト・スクリプティング)などの攻撃を受ける脅威を防ぐセキュリティ対策。Content-Type指定を無視してコンテンツを扱う事を禁止するための設定。

4行目:X-XSS-Protectionの設定

ブラウザがXSS(クロスサイト・スクリプティング)フィルターの機能を有効にし、XSS攻撃が反映されたページを見つけたらフィルター機能を有効化させて、その読み込みをブロックするセキュリティ対策。
0 は無効
1 は有効
mode=block は攻撃を検知した際に応答しない

5行目:Expect CTの設定

証明書の透明性(CT)についてWebサーバーとの接続を検証するようにブラウザーに指示する。

6行目:Referrer Policyの設定

リンク元がhttpsで、リンク先がhttpでジャンプする時はリファラーを送信しない設定。

7行目:X-Frame-Optionsの設定

主にClickjacking(クリックジャッキング)という攻撃を防ぐためにのセキュリティ対策。
ブラウザが他のサイトのフレームを呼び出さないように制御します。
ただし、自分で生成した時は許可します。

プラグイン導入でもOK

プラグインでも同じようなことが対策可能です。
例えば「HTTP Headers」とか。

HTTP Headers

まとめ

アバター
ME

.htaccessにコピペで追記するだけでWordPressのセキュリティが少なからず強化されるのでお勧めです!