『WEB DESIGNING』2022年10月号のWordPressのセキュリティ対策をやってみた

『WEB DESIGNING』2022年10月号でセキュリティ関係の特集が組まれていまして、WordPressに関するセキュリティ対策が掲載されていました。

このブログもWordPressで作っていますし、僕が勤める会社のコーポレートサイトもWordPressで作っているので、これを機にセキュリティについてしっかり取り組もうと思った次第です。

スポンサーリンク

インストール時の変更

WordPressの本体ファイルをいじるタイプの対策です。

もしかすると後述のプラグインよりもハードルは高いかもしれませんが、そんなに難しい内容ではないのでやってみましょう。

wp-config.phpのパーミッションを600に変更

これはすでになっていました。これはFFFTPでパーミッションを確認した画面です。

パーミッション600とは、オーナーによる呼び出しと書き込みが有効になった状態で、外部から操作されないようになります。

wp-config.phpにはデータベースやアクセスするパスワードなどの情報が記載されているので、ここの中身が見えたり書き換えられたりするとサイトを乗っ取られたり改ざんされてしまいます。

function.phpで削除コマンドを追加

WordPressは普通に使っているだけでWordPress特有のタグがばんばんサイトに使われます。

余計なタグはページの読み込みが遅くなる他、WordPressを使っていることがわかってしまい、攻撃のターゲットにされてしまう可能性が高くなります。

そういうわけでfunction.phpで不要なタグを削除するコマンドを記述します。

ただ、何を記述するかはこの本に書いていなかったので調べました。いろいろ記事が出てきましたが、下記のリンクがセキュリティのことを重視しているように見えたので参考にしました。

【WordPress】functions.phpで不要なタグを削除しよう - 株式会社DOL
DOLが抱えているサイトリニューアル案件では、WordPressのオリジナルテーマを作成することが多々あります
//不要なタグを削除
// WordPressバージョン情報の削除
remove_action('wp_head','wp_generator');

// Windows Live Writerの削除
remove_action('wp_head', 'wlwmanifest_link');

// 絵文字設定の削除
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'wp_print_styles', 'print_emoji_styles' );

// RSDの削除
remove_action( 'wp_head', 'rsd_link' );

どれが不要かというのはサイトによって違うのですが、バージョン情報については削除が推奨されています。アップデートしていないことがモロバレになりますしね。

プラグイン

ここからはセキュリティ関係のプラグインです。プラグインを入れて設定するだけで機能するので簡単です。

SiteGuard WP Plugin

SiteGuard WP Plugin
SiteGuard WP Plugin は、管理ページとログインへの攻撃からの保護に特化したプラグインです。

WordPressで作られているとわかったらログインページのURLも簡単に推測できます。

ログインページまで辿り着けば、あとはパスワードを総当りでいつかログインできてしまいます。

そこでURLを変更するプラグインがSiteGuard WP Pluginです。任意のURLに変更することができます。

他にも複数回ログイン失敗でロックするブルートフォース攻撃対策や、ユーザー名の秘匿化などログイン画面からの攻撃を防ぐ機能があります。

BackWPup

BackWPup – WordPress Backup Plugin
WordPress の完全自動バックアップを予約します。保存するコンテンツ (Dropbox、S3など) を指定できます。これは無料版です

データのバックアップを取るためのプラグインです。

使用しているサーバーによっては自動バックアップ機能がついているのですが、僕がこのブログで使っているスターサーバーは自動どころかバックアップ機能自体がついていません。

WordPressはWordPress本体の他、テーマ、メディア、そしてデータベースとバックアップを取る量が多くてかなり手間です。

「手動でやらないといけない ✕ かなり手間 = めんどくさくて永遠にやらない」という方程式が成立するので、プラグインを使ってバックアップを効率化させます。

設定については結構奥が深そうで、別記事にまとめています。

WP Activity Log

WP Activity Log
Keep a comprehensive log of user and system changes that take place on your WordPress website with the the #1 user-rated...

ログインや投稿の編集などのログを収集するプラグインです。

ログインの失敗についても表示されるので、不正ログインされそうになっているかどうかもわかります。ちょうど10回ログインが試行された痕跡がありました。怖いですね。

毎日まめに見るようなものではありませんが、いざという時にログを確認できるというのは心強いですので入れておいた方がいいですね。

コメント

コメントする前にお読みください

プログラミングに関する質問について、詳細なコードはお答えしませんのでご了承ください。
また、迷惑コメント防止のために初回のコメント投稿は承認制です。投稿が反映されるまで少し時間がかかります。