MENU
  • Profileプロフィール
  • Blogブログ
    • WordPressワードプレス
    • プログラミング
    • WEBデザイン
    • フリーランス
    • ライフログ
  • Portfolioポートフォリオ
  • Sitemapサイトマップ
  • Contactお問合せ

カテゴリー

  • 趣味
  • WordPress
  • 本棚
  • プログラミング
  • 日記
  • WEBデザイン
  • フリーランス

タグ

Adobe Illustrator Gatsby.js HTML/CSS MySQL Node.js Python SWELL WordPressプラグイン おすすめツール エックスサーバー セキュリティ バレットジャーナル 確定申告 開発環境

アーカイブ

  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年8月
  • 2020年10月
  • 2020年8月
  • 2020年7月
  • 2020年6月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年1月
  • 2019年11月
  • 2019年9月
  • 2019年8月
  • 2019年5月
  • 2019年2月
  • 2018年11月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2017年10月
プログラミングとデザインでものづくりを楽しむブログ
ゼロの森
  • Profileプロフィール
  • Blogブログ
    • WordPressワードプレス
    • プログラミング
    • WEBデザイン
    • フリーランス
    • ライフログ
  • Portfolioポートフォリオ
  • Sitemapサイトマップ
  • Contactお問合せ
ゼロの森
  • Profileプロフィール
  • Blogブログ
    • WordPressワードプレス
    • プログラミング
    • WEBデザイン
    • フリーランス
    • ライフログ
  • Portfolioポートフォリオ
  • Sitemapサイトマップ
  • Contactお問合せ
  1. ホーム
  2. WordPress
  3. WordPressでやっておきたいセキュリティ対策

WordPressでやっておきたいセキュリティ対策

2022 3/29
WordPress
2019-11-14 2022-03-29

この前、お客さまより相談がありました。
管理画面にログインできなくなり、ホームページ上に変なメッセージが表示されてしまったとのこと・・・。

調べてみると、WordPressのコアプログラムが不正に書き換えられていました。
残念ながら、ハッキング被害に合ったようです…。
怪しいプログラムが仕込まれた箇所を特定し、最新のWordPressのコアプログラムに差し替えました。

対応はできたものの、また脅威にさらされるのは嫌ですよね…。
これを機に、WordPressのセキュリティについて、「とりあえず、これやっとけばOK!」ではなく、必要な対策を説明できるよう、自分なりに知識を深めておきたいと思い、記事にしました。

目次
スポンサーリンク

WordPressのセキュリティ被害例

WordPressは世界中で利用者の多いブログシステムです。
使用者が多いだけでなく、オープンソースでプログラムが公開されていることから、攻撃者から狙われやすいツールでもあります。

まず、WordPressを運営時にどういった被害に合うリスクがあるのかみていきましょう。

管理画面に不正ログインされる

WordPressのサイトは、

「http(s)://WordPressサイトのインストールアドレス/wp-admin/」… 管理画面

「http(s)://WordPressサイトのインストールアドレス/wp-login.php/」… ログイン画面

というように、アドレスが決まっています。

WordPress運営者なら誰でも知ってるログイン画面

WordPressを運営したことある人なら、誰でも簡単にWordPressのログイン画面にたどり着けます。

ユーザー名やパスワードを推測したり機械的に試して、ログインが通ってしまうと、管理画面を攻撃者が操作できるようになってしまいます。

もし管理画面を乗っ取られてしまうと、下記のような被害が起きる可能性があります。

  • 悪意のあるファイルのアップロード、外部サイトへの転送など、コンテンツを改竄される
  • WordPressのデータベースに保存されていた個人情報が漏洩してしまう
  • ホームページ・運営者の信用性が下がる

WordPressのコアプログラム、テーマ、プラグインの脆弱性を利用される

WordPressのプログラム、テーマ、プラグインなどのプログラムの脆弱性を悪用し、不正なコンテンツやスクリプトが混入されるという被害もあります。

こちらも、プログラムを介して、コンテンツの改竄や、ウィルスの感染、重要情報の漏洩などの被害につながる可能性があります。

コメント機能・お問合せフォームをスパムに利用される

コメントを受け付けている場合、コンテンツと関係ないコメント(スパムコメント)が大量に投稿されてしまうことがあります。

お問い合わせフォームを設置している場合、管理者宛にスパムメールが送られてくることがあります。また、お問合せフォームには入力した内容のコピーをメールアドレスに自動送信される仕組みがあります。その機能を悪用することで、第三者に迷惑メールを送られてしまう恐れがあります。

管理画面を不正ログインから守るには

ユーザー名には「admin」を使用しない

ユーザー名は
admin
administrator
ドメイン名(このサイトだったら、0forest)
などは、推測されやすいので避けましょう。

ただし、これは最低限の対策になります。

WordPressの仕様上、ユーザー名は著者の記事一覧URLなどで使われているので、外部に見えてしまう場合があります。
また、ユーザー名がわからなくても、ログインにはメールアドレスが代用できます。メールアドレスは、身近な人は知っているでしょうし、SNSなどのプロフィールに公開していることもあるかと思います。

ログイン画面のユーザー名/メールアドレスは隠しきれないことを前提に、その他の対策と併用することで、全体のセキュリティ強化した方がいいです。

パスワードには複雑なものを設定する

パスワードは桁数を増やし推測されにくいものにしましょう。

WordPressはユーザー設定画面でパスワードの強度を確認できます。
「強力」となるパスワードを設定しましょう。

二段階認証を入れる

二段階でID とパスワードを認証することで、管理画面のセキュリティを強化します。

一つのやり方はBasic認証を管理画面にいれる方法です。

あわせて読みたい
【エックスサーバー】WordPressにBasic認証パスワードをつける この記事では、WordPressで作成したサイトにBasic認証をつけて、アクセス制限をかける方法を説明します。 この記事でわかること Basic認証(ベーシック認証)って何?Ba…

また、後で紹介する「Wordfence Security」の機能でも認証アプリを利用して二段階認証を設定できます。

管理画面にアクセス制限をかける

外部の人が管理画面にアクセスできないよう制限をかけます。

海外IPからのアクセスを制限する

エックスサーバーの場合はサーバーパネル>WordPressセキュリティ設定で海外IPを制限できます。

ログインロックを入れる

ログインロックは、何度も連続してログインに失敗するときに、一定期間ログインできないようにする機能です。
機械的にユーザー名とパスワードを試してログインしようとする攻撃に有効です。

サーバーのセキュリティ機能で用意されている場合があるので調べてみましょう。

エックスサーバーの場合はサーバーパネル>WordPressセキュリティ設定にあります。

プラグインを使う場合には、後で紹介する「SiteGuard WP Plugin」の機能で設定できます。SiteGuard WP Pluginだと、何回連続で失敗するとロックとするかなど、より細かく設定ができます。

プラグインによる管理画面の保護:SiteGuard WP Plugin

SiteGuard WP Pluginは管理画面の不正ログインを防止するための機能が入ったプラグインです。

WordPress.org 日本語
SiteGuard WP Plugin SiteGuard WP Plugin は、管理ページとログインへの攻撃からの保護に特化したプラグインです。
SiteGuardの機能
  • 管理画面のURLを変更
  • ログインに画像認証を追加
  • ログイン失敗を繰り返す接続元を一定期間ロック
  • ログインしていない接続元IPアドレスから管理画面へアクセスできないようにする
  • ログイン履歴を確認できる
  • 攻撃者から狙われやすい機能(XMLRPC)を防御

WordPressコアファイル、テーマ、プラグインのセキュリティ対策

WordPressのソフトウェア、テーマ、プラグインのアップデート

最新のWordpressソフト、プラグインを使うようにしましょう。

アップデートがある場合は管理画面に印がつきます。

メンテナンスされていないテーマ、プラグインは使用しない

テーマやプラグインをインストールする時には、しっかりメンテナンスされているか確認してから使用するようにしましょう。

テーマがメンテナンスされているかどうか?
  • テーマの公式HPのアップデート情報を確認する
  • ユーザーサポート/コミュニティがあり、不具合の修正/対応が活発にやりとりされている
プラグインがメンテナンスされているかどうか?
  • 最終更新が1年以上前だと、メンテナンスされていないまま脆弱性が残っている可能性がある
  • 最新のWordPressのバージョンにverに対応されているか

使っていないテーマとプラグインは削除する

テーマは、現在使用しているテーマと、WordPressの公式テーマ「Twenty Twenty-One」を残して、他は削除しましょう。

またプラグインも、その時使うプラグインのみを有効化し、有効化していないプラグインは削除しましょう。

重要ファイルの保護

WordPressのプログラムファイルの中には「wp-config.php」というファイルがあります。このファイルには、データベースへのアクセス情報など、重要な情報が書かれているため、漏洩したり、不正に書き換えられないように保護します。

サーバーにアクセスし、wp-config.phpのファイルのパーミッションを、「400(読取専用)」に変更します。

ファイルの場所:/(WordPressをしたインストールディレクトリ)/wp-config.php

WAF(Web Application Firewall)

WAFはアクセスの内容を検査し、Webアプリケーションへの不正な攻撃とみなしたアクセスを遮断する仕組みです。この仕組みのおかげで、Webアプリケーションの脆弱性を悪用した攻撃を防ぐことができます。

サーバー機能でWAFを設定

サーバーのセキュリティ機能にWAFがついている場合は導入しましょう。

このサイトが動作しているエックスサーバーにもWAF機能があります。(初期はなぜかOFFなので、忘れずONにしましょう)

サーバー管理>セキュリティ>WAF設定で設定できます。

プラグインでWAF設定:Wordfence Security

WordPressのセキュリティを強化するための多様な機能を提供しているプラグインです。

このプラグインはWAFはもちろん、二段階認証など、多様なセキュリティ強化のための機能が含まれています。

WordPress.org 日本語
Wordfence Security – Firewall & Malware Scan あなたの Web サイトを、ファイアウォール、ウイルススキャン、IP ブロック、ライブトラフィック、ログインの安全性の確保、等の機能を含んだ、最も包括的な WordPress の...
Wordfence Securityの主な機能
  • Web Application Firewallにより、悪意のあるアクセスをブロック
  • 二段階認証
  • WordPressソフトをスキャンし、不正にプログラムが書き換えられていないか チェックする
  • スパムコメントのブロック
  • リアルタイム・トラフィック解析:アクセスしてきた人間やBOTを監視できる
  • IPブロック機能:指定したIPアドレスと接続元ネットワークからの接続を拒否する

コメント機能・お問合せフォームのスパム対策

お問い合わせフォームやコメント機能を利用している方はGoogle reCaptchaを導入しておきましょう。

Kinsta
CAPTCHAを使用してボットやスパムからWordPressサイトを保護する方法 WordPressのセキュリティが重要であることに議論の余地はありません。セキュリティ上の欠陥は、サイトに深刻な被害をもたらします。加えて、ハッカーがボットを使用して、…

よく使われるお問合せフォームにもreCAPTHCAの設定ができたりします。

HPcode(えいちぴーこーど)
Google reCAPTCHAでWordPressお問い合わせフォームからの迷惑メール(スパム)対策をしよう | HPcode(えい… Google reCAPTCHAを使ってWordPressのお問い合わせフォームの迷惑メール(スパム)対策する方法です。Googleアカウントをもっている方はすぐに対応できるので、迷惑メール…

万が一被害にあったときのために

バックアップを取る

仮に攻撃者によってホームページが改ざんされてしまった場合に備えて、バックアップを取っておきましょう。

万一ハッキングされてしまっても、バックアップを取った時点のデータに戻すことができます。

サーバーのバックアップ機能を利用する

多くのサーバーには、データのバックアップ・復旧機能がついています。

例えば、エックスサーバーではデータは7日分、データベースは14日分保管しています。

Webデータ
(WordPressソフト、テーマ、プラグイン、画像ファイル)
MySQLデータベース
(記事本文、投稿日時、カテゴリー、コメントなどのデータ)
保存期間過去7日分過去14日分

プラグインを利用する

サーバーの機能とは別に、バックアップを取りたい場合にはプラグインを使います。

WordPress.org 日本語
UpdraftPlus WordPress Backup Plugin バックアップと復元を簡単に。手動または自動予約 (Dropbox、S3、Google ドライブ、Rackspace、FTP、SFTP、メール、その他) による完全なバックアップ。

WordPressのおすすめセキュリティ対策まとめ

攻撃例対応策
管理画面への不正ログインユーザー名をadmin以外にする
パスワードの強化
二段階認証の追加
アクセス制限
プラグインによる保護
プログラムの脆弱性を利用WordPress、テーマ、プラグインのアップデート
こまめにメンテナンスされているテーマ・プラグインを使う
不要なテーマとプラグインを削除
重要なファイルの保護
WAFの導入
ファイルのバックアップ
コメント機能・お問合せフォームの悪用Google reCaptchaの導入

以上、WordPressのセキュリティ対策でした。

WordPress
セキュリティ
よかったらシェアしてね!
URLをコピーする
URLをコピーしました!
  • エックスサーバーにWordpressをインストールする
  • 2020年の手帳をイラストレーターで作りました♡

関連記事

  • 【2022年版】Smash Balloon Social Photo Feedの使い方〜インスタグラムを表示できるプラグイン〜
    2022-03-25
  • WordPressでホームページを作れるようになるまでに私が学んだこと
    2022-01-30
  • 【図解】WordPressのテーブル構造はどうなっているの?
    2021-12-03
  • WordPressの投稿に管理者用メモをいれるプラグインを作る
    2021-11-29
  • 記事をランダム表示するウィジェットを作る
    2021-11-27
  • Snow Monkey Formsでお問合せフォームを作成する
    2021-11-17
  • WordPressプラグインを作ってみる。はじめの一歩。
    2021-11-10
  • 【初心者向け】WordPressを安全に使いたい!Wordfence Securityの設定方法
    2021-10-31
Zero Forest
カテゴリー
  • WordPress (30)
  • プログラミング (17)
  • WEBデザイン (6)
  • フリーランス (7)
  • ライフログ (10)
    • 趣味 (2)
    • 本棚 (3)
    • 日記 (5)
タグ
Adobe Illustrator (2) Gatsby.js (3) HTML/CSS (7) MySQL (1) Node.js (2) Python (2) SWELL (1) WordPressプラグイン (10) おすすめツール (3) エックスサーバー (4) セキュリティ (3) バレットジャーナル (2) 確定申告 (1) 開発環境 (3)
  • サイトマップ
  • サイトポリシー

© Zero*forest

目次
閉じる