先日、私の所属するクラブで複数人運用していたワードプレスサイトが乗っ取られてしまいました。
おそらくハッキングにあったのだと思われます。
サイトにアクセスすると、画面いっぱいにHacked by Sid GiFari の文字と雨のエフェクトが……
なんだこれは!?一応、サイトを見る事は出来ますが、明らかにおかしい状態でした。
ワードプレスの管理画面URLを入力するとこんな表記が出て、ログイン画面にいくことができませんでした。
今回の場合、管理画面に入ることが出来ないほど重症だったのです。
このサイトを作ったのは私で、完全に会員が内輪で使うコミュニケーション用のサイトでした。なので検索エンジンにインデックスされないようにしていたのでグーグルで調べても出てこないようにしてあります。
今まで複数のワードプレスサイトを運用してきましたが、こんなことは初めてでとても焦りました。
今回は、このハッキングから何とか復旧したのでその過程と方法、対処法を書いておこうと思います。あくまでもプログラムは一切分からない素人が行った力業の方法なので、本当に困ったときだけ参考にしていただければと思います。
解決策はバックアップを取って、 データベースを新規で立ち上げて全コピー
解決策と言っていいのかは分かりませんが以下の方法で解決しました。
①レンタルサーバー上でデータベースとサイトのバックアップを取る。
②新しいデータベースを作る。
③新しいワードプレスをインストール。
④そこに既存のサイトをコピー&ペーストで全コピーする。
⑤既存のデータベースおよび、サイトデータを全削除する。
かなりアナログな力業ですよね。
もちろん、こうなってから一晩中色々ネットで復旧方法を調べたりしましたよ。そして今の私に出来る限りの対策は講じました。それも途中途中で紹介していきます。
しかしながら、私の知識ではこれしか打てる手はありませんでした。
順を追って説明していきます。
①レンタルサーバー上でデータベースとサイトのバックアップを取る。
まず、レンタルサーバー上で、データベースとサイトのバックアップを取りました。私の契約している さくらインターネットのレンタルサーバーでは、自動でバックアップを取ってくれる設定があるのですが、今回はそれをONにしていなかったため、バックアップが無い状態でした。
ファイルマネージャーから
ハッキングされた状態(なにやらよくない物がファイル内に紛れ込んでいる状態)ではありますが、レンタルサーバー上に上がっているすべてのデータをパソコン内にダウンロード、同じようにデータベースのファイルも全てダウンロードしました。その後ダウンロードしたファイルのウイルスチェックを行いましたが問題はありませんでした。
データベースのダウンロードはこちらから
phpMyAdminにログインして、エクスポートからダウンロードします。
色々しらべたら、Zip形式でダウンロードするのが良いようです。
ワードプレスの管理画面に入れるようであれば、ワードプレス上でバックアップが取れるのですが、今回は管理画面にすら入れない状態だったのでひとまずサーバー上でデータベースとサイトのバックアップをとりました。
②新しいデータベースを作る。
新しく、別にデータベースを作りました。
新しいワードプレスを作ってもログイン画面に行けなかった
既存のデータベース上に新たにワードプレスをインストールしても、403エラー(権限がない)によってワードプレスのログイン画面に到達する事ができませんでした。
まっさらなインストールしたてのワードプレスですら、ログイン画面に行けないのことから「データベースに問題がある」と仮定したのです。
③新しいワードプレスをインストール。
新しく作ったデータベースに、新たにワードプレスをインストールしたら無事に管理画面へのログイン画面に行くことができました。
④既存のサイトをコピー&ペーストで全コピーする。
③で作ったワードプレス上に、既存のサイトを全てコピー&ペーストで移動させました。
本文を全て選択して、右クリック→コピー→新サイトの記事にペースト
これをひたすら繰り返します。
幸いにも、記事数は50ほどしか無かった為、半日ほどで終了しました。
写真は、①でとったバックアップデータのwp-contentフォルダ内にあるuploadsフォルダの中に全て入っていたため、特に苦労する事はありませんでした。
まさに力技です。
既存のサイトもまともに見られない状態だった
コピー&ペーストをするにしても、元サイトは雨のようなエフェクトがかかり、まともに見られませんでした。
そこで、入れない管理画面をマウスで反転させてみると怪しい文字がみえました。
Warning:Cannot modify header inFormation – headers already sent by [output started at/home/ドメイン/www/ドメイン/wp-content/plugins/eqwykcsyoy/index.php:14]in/home/ドメイン/www/ドメイン/wp-includes/pluggale.php on line 1251
と
Warning:Cannot modify header inFormation – headers already sent by [output started at/home/ドメイン/www/ドメイン/wp-content/plugins/eqwykcsyoy/index.php:14]in/home/ドメイン/www/ドメイン/wp-includes/pluggale.php on line 1254
の文字がみえます。
試しに、ここにあるプラグインeqwykcsyoyをフォルダごと消去したら、雨のエフェクトや怪しい文字は消え、サイトは普通にみられる状態になりました。(ログイン画面は403でForbidden You don’t have permission to access this resource.入れず)
既存のサイトの復旧をあきらめた理由
既存サイトの復旧をあきらめた理由は、「問題解決の難しさ」にありました。
色々調べていく中で、
・管理画面に入れれば不正ファイルを除去するプラグインでなんとかできそう
・管理画面に入れない場合は.htaccessファイルから権限を操作すれば入れるようになる
ということがわかりました。
管理画面に入るために.htaccessファイルの変更もネットで調べ、テキストエディタで変更FTPソフトでアップロードするのを何種類も試しました。でも、何を試しても403エラーではじかれる。しまいには新しくインストールしたワードプレスですらログイン画面にいかないという始末…
さくらインターネットのサポートに確認をとったところ
「ワードプレスのファイル内に見覚えのないファイルがあった場合、挙動がおかしくなる場合があるためそれを退避して実行して欲しい」
とアドバイスを頂きました。
/wwwフォルダ直下にabout.phpのファイルが存在しております。 こちらは通常のWordPressのインストールでは設置されないファイルとなります。 このため、ご認識のとおりWEB改ざんされている可能性がございます。
と。しかしながら、私には何に見覚えがあって、何に見覚えが無いのかすらもわからない状態でした。
たとえ復旧できたとしても改ざんされた形跡のあるサイトをそのまま使い続けるのは素人には危険だと判断し、新たにまっさらな状態からスタートする事にしました。
⑤既存のデータベースおよび、サイトデータを全削除する。
改ざんされたWEBサイトを放置し、後々何かあっても嫌なので、アクセスできなくなったデータベースとワードプレスのサイトデータを全削除しました。
これにて一件落着としました。
新しくワードプレスサイトを作る際に やっておきたいセキュリティ対策
ひとまず解決したとはいえ、今後同じような事が起こらないとも限らないので原因と対策を合わせて書いておきます。
今後、新たにワードプレスサイトを作られるようであれば是非参考にしていただきたいです。
今回、ハッキングが起きた原因は以下があげられます。
・慢心
・セキュリティ対策を何もしていなかった。
・アドレスの短さ
・ユーザー名、パスワードの短さ
以上です。ひとつづつ説明していきますね。
①慢心
今までたくさんのワードプレスサイトを運用してきましたが、こんなことはありませんでした。
検索エンジンにインデックスされないようにしてあるし、自分だけは絶対に大丈夫、なぜなら今までそんなことが無かったからまさか、こんなことがあるとは思いだにしなかったのです。
この慢心が1つ目です。SSL化していれば完全に安心だと思い込んでいました。
②何のセキュリティ対策もしていなかった事
慢心もあったため、ハッカーに対する対策を何もしていなかったですね。
防げるプラグインは調べれば沢山出てきました。
3つ目はアドレスの短さ
使っていたドメインは覚えやすくアクセスに便利な一方で、文字数が短い為ハッキングツールによって狙われやすいURLです。
ワードプレスの弱点の一つにドメイン/wp-adomin/でログイン画面に到達できる点があります。
そう、ドメインが分かれば誰でもログイン画面に到達できるのです。
4つ目はユーザー名、パスワードの短さです。
ユーザー名、パスワード共におなじもので、なおかつどちらも英語半角6文字…
今考えれば、これが一番いけなかったですね。
こんなのパスワード解析ツールを使えばすぐに解析されて侵入されてしまいます。
以上4つの原因により、ハッキングされたと思われるのですが詳細が不明な為断定はできません。
さくらインターネットの人は、データが改ざんされた形跡があると言っていたため調べて分かった事は、ワードプレス内のファイルとデータベース上に不要なプログラムファイルを埋め込まれた事だけです。
講じた対策
今後も変わらず運用していく為に以下4点の対策を講じました。
① SiteGuard WP Pluginを入れた
セキュリティに特化したプラグインを入れました。
SiteGuard WP Pluginというやつです。
管理画面へのログインURLの変更、管理画面ログイン画面に画像認証を導入しました。
管理画面へのログインURLはkoregaroguingamendesuyo等、好きな文字に変える事ができるのがよいですね。ローマ字で打つことで海外から把握し辛い文字列にすることができます。
さらに管理画面のログイン画面に ひらがなの画像認証を導入しました。
ログインはちょっと面倒くさくなりましたが、すごく安心できます。
② 自動バックアップ設定をしました。
さくらインターネットサーバーに定期的に自動でバックアップを取る無料サービスの設定をしました。
これで定期的にwww/以下のバックアップを取ってくれるようになりました。異変に気付いた時にすぐに戻せる安心感があります。
③ ドメインを長い物に変更
ドメインを長くしました。
さくらインターネットから無料で得られる長い物を使用。それに伴って、会員用サイトのURLも変更となりました。
短い、覚えやすいドメインも使わないのはもったいないため、既存のドメインはセキュリティを強化し、本当に限られた人しか管理画面にログインできない静的な外部向けのウェブサイトに使用することにしました。
④ ユーザー名とパスワードを長く複雑にした
管理画面へログインするためのユーザー名とパスワードを長く複雑な物に変更しました。
今までのように会員みんなこれを使うのではなく、それぞれ個人個人で別々のIDを割り当て、編集者権限にします。記事を書いた人が特定できるようにしていきます。
これが一番のセキュリティ対策なのかもしれません。
セキュリティ対策に終わりはない
今回は、私の慢心からワードプレスがハッキングにあい、管理画面にアクセスすらできない状態となってしまいました。
結果的に、半日を使ってコピー&ペーストというかなりアナログな方法で復旧させました。結構大変な作業だったので、記事数がもっとあったらと思うとぞッとします。
二度とこんな目に合わないよう、既存のサイトにも、新しくつくるワードプレスサイトにもこれらのセキュリティ対策はやっていきます。
しらばらくはこれでおそらく大丈夫かとは思いますが、交通事故のようにいつ何があるか分かりません。これでもまだ侵入されてしまうようであれば、外部業者に委託するしかないかもしれませんね。
しばらく様子を見てみようと思います。
コメント