WordPressのカスタマイズ方法やプラグインレビューを中心に、パソコン/動物/植物のことなどを紹介するホームページです

【WordPress】悪質なマルウェア「ランサムウェア(Ransomware)」に所有しているサイトが感染しないようにするための対策いろいろ

公開日:2016(平成28)年12月12日/最終更新日:

Knowledge Base Wordpress 設定



【景品表示法に基づく表記】ページ内のコンテンツには、商品プロモーションが含まれています

今日ニュースで初めて知った「ランサムウェア(Ransomware)」というマルウェア。情報弱者と思われても仕方ない状況ですが、改めて「ランサムウェア(Ransomware)」とは何なのか?最近では盛んに狙われているとされるWordPressで作成しているサイトに対してできる対策を紹介します。

「ランサムウェア(Ransomware)」が主に猛威をふるっているのがスマートフォン。変なメールが届いて「なんだろう?」と思ってリンクをクリックすると・・・警告画面が出てきてすべての作業ができなくなり、データを人質にして身代金を払えば解除するという本当に悪質なマルウェアです。

もう消去してしまったので具体的に紹介することができなくて残念なのですが、先日スマホのメールアドレス宛に、「クロネコから宅配便お届けに関するお知らせ」というような件名のメールが来ました。

何事も疑ってかかる性格の私は、まず「クロネコヤマト」でもなく「宅急便」でもない件名からして怪しいと思ったのですが、興味本位でメールを開くと、そこにはたどたどしい(日本人なら企業からのメールでないことが分かるような文言)文章が書かれていました。内容は「
〇月〇日にお届けする荷物に関して確認事項があるのでリンクをクリックしてください」というような内容だったと思います。

ヤマト運輸からこんなメールが届いたこともないし、荷物が届く予定もない、しかも・・・
何だこれ?メールの送信日時よりも過去の日時に届く荷物に対して確認してくれって書いてある
例えば「10月31日に届いたメールに10月15日にお届けする荷物に関するお知らせがある」と書かれているのです。よく読むと日本語おかしいですね。日付が逆か、「お届けした」となっているのが普通ですよね?

それに、ヤマト運輸ならそれなりなドメインで届くはずのメールアドレスは全く関係ないドメインだったので一発で「黒だな」と判断できました。

当時は「ランサムウェア(Ransomware)」なんて知らなかったのでひょっとしてリンクをクリックしていたら引っ掛かっていたのかもしれません。

一方パソコンでは

で書いたペイパル(Paypal)を騙ったメール。これも添付ファイルが付いていたのでひょっとすると「ランサムウェア(Ransomware)」が仕込まれたメールだったのかもしれません。

まあまあ怪しい経験談はその位にして、「ランサムウェア(Ransomware)」はホームページのプログラムに悪質なコードを仕込み、発症するようにもなっているようなので、汎用的なサイト作成ツールであるWordPressが狙われているというわけです。

ではどうやってこのウイルスにかからないようにするか?せっかくサイトを見ようと思って検索結果をクリックした方が、私の(あなたの)作ったサイトによって「ランサムウェア(Ransomware)」に感染しないようにするか?

100%は無理だとしてもできることをしよう!!ということでいくつか対策方法を紹介します。

「ランサムウェア(Ransomware)」はマルウェア

「ランサムウェア(Ransomware)」はプログラムに悪質なコードを仕込むことで動作させるわけですから、コードを改変できる状態にしないことが最大の防御になると思います。

とはいえ、肝心のサーバーアカウントにログインされてしまえばWordPressでなくても「ランサムウェア(Ransomware)」を拡散させる可能性が出てくるわけですから、そちらに対してはレンタルサーバー側で対応していただくしかないと思います。

WordPressで使っているデータベーステーブルのうち、ユーザーに関するものを見ると、パスワードは暗号化されているので一見安全なように見えますが、中のプログラムそのものを書き換えられればハイ終了!!となってしまいますからね。

それを言い出したらキリがなくなってしまいますので、今回はレンタルサーバー内には侵入されないということを前提に、サイト作成者としてできることをいくつか挙げていきます。

サイト内のファイルに接続できる環境をなくす

簡単に言えばFTPなどのファイル転送設定をなくすということです。WordPressは一旦使い始めてしまえばほとんどが管理画面から作業できてしまいますから、インストールの際などに行ったFTPの設定は接続ソフトの設定ではなく、レンタルサーバー側の設定からも削除してしまいましょう。

とはいえ、WordPressで転送が必要な場合に困ってしまいますから、

などで管理画面からサーバー内のファイルを見れる状態にはしておきましょう(必要時以外は有効化しないことをおすすめします)

WordPress側でできることを行う

WordPressには不正アクセスを防ぐためのいろいろなプラグインがリリースされています。中にはこれ1つで全部大丈夫(オールインワン〇〇)というような謳い文句のプラグインもあって一見便利に見えますが、もしもこれが「ランサムウェア(Ransomware)」の踏み台だったら・・・と勘繰って、必要なものを必要なだけ実装するようにしましょう。

次項でいろいろと紹介しますからその中から「これはできそう」というものを最大限やってくださいね。

WordPressでできる「ランサムウェア(Ransomware)」対策

ログインした履歴を知る

まずは何処か知らない場所からログインされた形跡がないか、ログインしようとした形跡がないかを調べましょう。いわゆるログイン履歴を取るという作業です。これをいつでも知ることができるプラグインに

というのがありますから、導入して履歴を見るようにしましょう。ログインした履歴、ログインに失敗した履歴の両方がユーザー別に見えますから大変便利です。変な名前のプラグインですが当サイトでも使っている安全なプラグインです。

「admin」というユーザー名は削除する

初心者が何の気なしにWordPressをインストールしたとき、そのままにしてしまうのが初期のユーザー名候補として表示される「admin」というユーザー名。それをそのまま使っていませんか?

もし使っているなら、別の管理者用ユーザーIDを追加して「admin」というユーザーは削除しましょう。

不要なユーザーは削除する

複数の人で運営しているサイトや、自由に登録してもらうサイトなどではいわゆる「幽霊ユーザー」もいるはずです。長くログインのないユーザーなどには連絡をするなどして削除するか、権限を「購読者」にしましょう。

購読者は会員のみ閲覧できるコンテンツがある場合以外、普通の訪問者と同じくサイトを見ることとコメントを残すときに必須項目の入力が省ける位のことしかできない権限なので、怪しいものはすべて「購読者」にしておきましょう。

パスワードを長く複雑にする

長くしたところで・・・という感は個人的に持っているのですが、やはり複雑にしておいた方がセキュリティ面としては有利なのでなるべく長いものにして、さらには定期的に変更するということをすればいいと思います。

何度かログインに失敗したらしばらくログインできなくする

WordPressは初期状態では何回ログインに失敗してもロックがかからないようになっています。これを使ってあり得そうなユーザー名やパスワードをじゃんじゃん入力して試す・・・なんてことをする輩もいます(機械的にやる行為をブルートフォースアタックと言います)。

これをされるとログインされてしまう危険性が増えるばかりでなく、サーバーに負荷がかかってサイトが表示できなくなるということにもつながります。

というプラグインを使うことで、「〇分間に〇回ログインに失敗したら〇分間ログインできなくする」という設定ができるようになります。

ログインに失敗した理由を表示しないようにする

WordPressのログイン画面はログインに失敗すると親切に「〇〇が違います」と理由を表示してくれます。なんて親切なの~♫ではなく、手動でサイトにログインして悪さをしようとする輩には格好のヒントになってしまいますから、一切表示しないようにします。これも便利なプラグインがあって

を使えば簡単に実装できます。

ユーザー名を類推できないようにする

ちょっと使い慣れた方なら「ユーザーのニックネームを別にしてるから大丈夫でしょ!」と思う方もいるとは思います。確かにユーザー設定でニックネーム(表示名)を設定すると、見た目上ではユーザー名が分からなくなります。でも・・・

URLがユーザー名を語ってしまっている

ことはご存じですか?試しにユーザーの記事一覧を表示してみてください。そしてURLを見ると・・・
「http://〇〇.com/ユーザー名」になっていませんか?

WordPressは汎用なCMSですから、当然こうやってユーザーIDが分かるかも・・・というのは周知の事実ですから、ここにも対策をしましょう。

というプラグインを使うと、ユーザーの記事一覧のスラグ(簡単にURLとしておきますね)を変更することができます。

1つのユーザーアカウントに同時接続できなくする

WordPressの仕様では、自分のアカウントに自身が接続していても、そのアカウントには同時に複数の場所からログインできるようになっています。少なくとも自分がログインしている間は他人がログインできないようにしておくことでセキュリティアップが図れます。これも

というプラグインを使えば簡単に実装できます。

不要なプラグインは停止し、削除する

今稼働していなくてもいいプラグインは停止しておくようにしましょう。また、使用しないだろうと思われるプラグインは停止するだけでなく削除しておくことでサイトにできる隙を少なくすることができます。

危ないセキュリティ系のプラグインは使わない

マルウェアが仕込まれているかどうかという話ではなく、リリースされているプラグインには

  1. ログイン画面のURLを変更する
  2. 管理画面のURLを変更する
  3. 特定のIP以外からの管理画面へのアクセスを禁止する

といった機能を持つものが多数あります。一見便利そう!セキュリティは完璧かも!と思うかもしれませんが、もしもそのプラグインに不具合が起こったら・・・・即座に管理画面に入れなくなってしまう可能性が出てきます。また、IPアドレスに関しては、固定グローバルIPを持っていれば有効ですが、多くの人が利用しているインターネット接続契約は何かの拍子で(ここで詳しい解説はしません)グローバルIPアドレスが変わってしまえばこれまた管理画面への接続は不可能になります。

そしてもっとやっかいなのは、こうしたプラグインはセキュリティの観点からプラグインの削除が行われても設定情報が残るようになっており、プラグインで不具合が起こった時によくやる「プラグインフォルダの削除や改名」では復旧できないことが多いです。せっかく作ったサイトがセキュリティ対策によって管理者自身がセキュリティにひっかかる・・・なんて自体になるわけです。

テーマやプラグインを追加するときは・・・

便利なプラグインやきれいなテーマが毎日のようにリリースされていますね。「これ使ってみよう!!」と思ったプラグインやテーマは安全ですか?

プラグインやテーマは通常本家のWordPressサイトで配布されています。最近では別のサイト(Githubなど)や個人的に配布しているところもあるようですが、疑ってかかることも大事だと思います。

とはいってもWordPressは無償のツールであり、プラグインやテーマの無償提供されているものですから使用に関しては自己責任が原則です。有効化したら・・・・・とならないためにもテスト用サイトの利用をお勧めします。

当サイトはドメインを見ていただいても分かる通り、無料でWordPressのサイトが構築できる「ネットオウル」というレンタルサーバーを利用させていただいております。ネットオウルは1アカウントで5つまでサイトを作ることができます。私はそのうちの1つをテスト用として使っています。

本来は公開されているサイトを構築するために提供されている無料のツールだとは思っていますが、何が起こるか分からないものを実際のサイトに興味本位で組み込むのはあまりに危険だということでテストサイトを1つ作らせてもらっています。

通常のレンタルサーバーを使っている方でもサブドメインやサブフォルダで複数のWordPressサイトを構築することは可能ですからぜひテストサイトの導入を行ってください。

QA AnalyticsQA Analytics

さいごに

いろいろと紹介しましたがいかがでしたか?他にもいろいろ対策はあるでしょうけど、この程度のことを行っていれば、万が一「ランサムウェア(Ransomware)」の餌食になってしまったとしても「ここまでやったんだから・・・」と納得できるのではないでしょうか?

とはいえ、せっかく多くの時間を使って作ったサイトのデータがこんなマルウェアによって侵されるのは避けたいですから、復旧できるようにいろいろな方法でバックアップはとっておくようにしましょう。

紹介しただけでもたくさんのプラグインを使うことになりますね。でも大事なことですから表示や使い勝手以上にセキュリティ対策系のプラグインは優先して導入しておくことをおすすめします。

また、当サイトでたくさんのプラグインや機能についての記事を公開しています。テストサイトで稼働させてみた上で紹介記事を書いていますが、セキュリティ面のチェック等は行っていませんので使用に関しては自己責任でお願いします。