ハッキング被害に遭いました。ヘコみまくりつつやった調査&作業まとめ

スポンサーリンク

心がズタズタになった

20130829 catch

昨日(8月28日)の午前、当ブログはハッキング被害に遭い、一時的にブログが表示されない状態となっておりました。最初はサッパリ意味が分からなかったのですが、調査していくうちに背筋の凍る思いがしました。戦慄の恐怖って、ああいうのを言うんだな、と。

相当ヘコみました。セキュリティとかほとんど分かっておらず無知なため、効果的なのか、絶対やるべきなのか、あるいはさほど今回の問題と関係なくて無意味なのかは今も分からないけれど、「やらないよりはやっておくべき」と考え、いろいろ対策を講じました。

スポンサーリンク

ハッキング被害が判明した経緯と、復旧までの暫定的な対応

★管理画面が文字化けしていた

最初に異変に気付いたのは、8月28日の午前9時頃。WordPressの管理画面をいつものように開いてみると、文字化けしていました

PCブラウザ(Chrome)のエンコードを見ると「日本語(Shift-JIS)」になってる。いつもは「Unicode(UTF-8)」のはずなのに何故だ? と不思議に思いつつ、文字コードを「Unicode(UTF-8)」に設定変更。

確か最初はそれで管理画面の文字化けは解消した記憶があります。

★ブログ名の改ざんに気付く

管理画面の文字化けは解決しましたが、次の異変に気付きました。ブログ名が「りくまろぐ」になってない

Screenshot 201308 0081

▲ 管理画面の左上、いつもなら「りくまろぐ」と表示される部分が「Hacked by Krad Xin」と表示されていました。「Hacked」という単語を見た時点で血の気が引き、恐怖で震えました。比喩ではなく本当にゾッとした…。

「Hacked by Krad Xin」という文字列をGoogleで検索。午前9時過ぎの段階で、このハッキング現象について論じてるサイトやブログはたった1つ、「WordPressフォーラム」だけでした。他に検索ヒットしたのは、私と同様にハッキング被害に遭ったらしく改ざんされたサイトやブログばかり。

★文字コードをUTF-8に戻した

私が最初にフォーラムを見た時はコメントがまだ3つだけでした。「文字コードがUTF-7に変更」という記述があったので確認。

WordPress管理画面「設定」→「表示設定」を見ると、「フォロワー設定」欄の上に「文字コード」欄があり、そこがフォーラムでの記載通り「UTF-7」に。

手入力でUTF-8に変更して保存すると、管理画面の「文字コード」欄は消滅。これを書いてる現在も表示されていません。通常は表示されない欄なのだろうか…?

★しかしブログは真っ白のまま

文字コードを変更したことで「もう大丈夫かな」と思いブログを確認すると、まだダメ。ブログは真っ白なまま。

更に調べていくと、「WordPressのテーマが原因でハッキングされる場合がある」との情報を見つけました。うちのブログは自作テーマなので、作り方をミスっててそこを突かれたのだろうか…。

テストとしてWordPress標準の「Twenty Thirteen」や「Twenty Twelve」等に変更してみたのですが、またしてもおかしな現象。

テーマを変更した直後、0.5秒ほど一瞬だけブログがパッと表示され、すぐにブログ全体が真っ白に戻るという現象。どのWordPressテーマに変更しても同じ現象。

真っ白な画面でHTMLソースを表示させると、キチンとHTMLコードは出力されていました。なのに画面表示は真っ白。意味が全く分からない。完全にパニック。

★見覚えのないウィジェットを発見

何をどうすればいいのか全く分からず、管理画面のあちこちを眺めていたら、異変に気付きました。

管理画面「外観」→「ウィジェット」を見ると、サイドバーやフッターに設置していた自作のウィジェットは全て消失していて、代わりに見覚えのないウィジェットが1個だけ表示されていました

ん? と思ってソースを覗くと、全く見覚えのないスクリプトコード。

うわ! これやん! 絶対これが何か悪さしてるんやん! と勢いに任せてウィジェットを削除。パニック中だったのでスクショは撮ってません。

不審なウィジェットを削除してからブログを確認すると、PCでもiPhoneでもようやくブログが表示されました。ただし、破壊されてしまったサイドバーとフッターは何もないまま。

勢いに任せて削除した不審なウィジェットの正体ですが、WordPressフォーラムで報告されてました。

<script>document.documentElement.innerHTML = unescape(”);</script>

上記コードの書かれたウィジェットがハッキングで追加されていたようです。JavaScriptでBODYタグの中身を動的に消してしまう悪さをするんだとか。だから他のWordPressテーマに変更した際、一瞬だけ表示されてから消えてたんだというツジツマが合いました。謎が1つ解決。

★一部ウィジェットの復旧作業

全て消失してしまったウィジェットですが、サイドバーの一部とフッターの全てに関してはローカル環境に同じ内容のものを作っていたので、それをWeb環境にコピーすることで復旧。

★ブログ名とキャッチフレーズを復旧

Screenshot 201308 0071

▲ 管理画面「設定」→「一般」を見ると、サイトのタイトルとキャッチフレーズが改ざんされていました。後で教えてもらいましたが、WordPressのデータベース(MySQL)にある、ここの情報を管理しているデータ(テーブル)を直接改ざんされた可能性があるそうです。あくまで推測です。

この内容が改ざんされていたせいで、サイトのDescriptionやTitleなどのSEOデータもおかしくなり、FacebookやGoogle+に送信するOGP情報も改ざんされてました。

ここを本来の内容に修正して保存することでSEOデータもOGP情報も元に戻りました。

Skitched 20130829 104410

▲ しかし、まだ復旧されてない時間帯にGoogleのロボットが拾ってしまったらしく、現在もGoogleで検索するとハッキングの傷跡が検索結果に残ってます。上の画像にある当該エントリーのソースをチェックしましたが、現在ハッキングされた際のコードは存在しません。

ブログ表示が復旧するまでの経緯は以上ですが、その後も不安な点が幾つか残ってたので対策を講じました

WordPressの管理者情報を変更

まず、何といってもパスワードとアカウント情報

以前、アカウントが「admin」のままだと危険ですよ、という記事を拝見しましたが、私は当初から「admin」は使用していませんでした。しかし、ドメイン名から容易に想像のつくアカウント名だった…。猛省。

パスワードは、他のツールなどと使い回しなのでもなかったし、そんな簡単にバレるような内容でもなかったはずなんだけど…。いずれにしても気持ちが悪いのでパスワードを変更

「まず新しい管理者アカウントを作成」→「従来の管理者アカウントを削除」という手順で対策完了。間違って操作すると記事データが完全消失しちゃいますので、作業される方は十分ご注意を。

Exploit Scanner でコアファイルが改ざんされていないかチェック

WordPressフォーラムに「コアファイルが改ざんされていないか確認を」との記載があったので、念のためチェック。

まずWordPress管理画面で新規プラグイン「Exploit Scanner」を追加し、有効化。私がやったのは「WordPress3.6用のハッシュファイルをダウンロード」→「プラグインのフォルダにアップロード」→「管理画面でバージョンを確認後、スキャン開始」。

WordPressのバージョンが3.6じゃない場合は3.6のハッシュファイルだと無意味ですのでご注意を。

コアファイルに改変があった場合はDescriptionに「Modified core file」と書かれた項目が表示されるようですが、私は大丈夫でした(昨日と今日の2回確認済み)。

プラグイン「Crazy Bone」の導入

自分以外に不正なアカウントからのログイン(侵入や攻撃)がないか記録を取ってくれるとのことなので、プラグイン「Crazy Bone」をインストールし、有効化。

ハッキング被害の後に導入したので、ログイン履歴を確認しても当然ながら私のログイン記録しか表示されていません。しかし他の方々から話を聞いた限りでは、このログイン記録にいろんな国からの不正なアクセスが記録されているとのことです。

防いでくれるというよりは「監視する」意味合いのプラグインになるようですが、事前に異変を察知することが出来るかもしれないし、入れておくべきプラグインではないかと。

ロリポップの各種パスワードを変更

今回被害に遭ってる大半のサイトはロリポップのようです。私もロリポップ。

WordPressのパスワードは作成時に自分で考えたものを設定しましたが、そういえばロリポップのは契約時に指定されたデフォルトのものをそのまんま使ってた…。これではイカン。

ということで「ロリポップにログインするパスワード」と「ロリポップサーバのFTPパスポート」を念のため変更しました。変更はロリポップの管理画面で出来ます。

WordPressデータのバックアップ

WordPressデータのバックアップは「BackWPup」というプラグインを使用しています。当ブログでも幾つかエントリーを書いてます。

一時期、これまたロリポップの設定が原因でBackWPupが正常動作しないという現象がありました。その後、動くようになったので安心して自動保存させてたのですが…。

今回、バックアップデータから復元できないかなと考え、BackWPupのデータをダウンロードしてみたら、肝心のMySQLデータがどこにもない!

簡単に言えば、BackWPupは再び失敗を繰り返していて、それに私が気付いてなかった、ということ。もう情けなくて絶望。だからと言ってボーッとしてるわけにもいかないので、手動でバックアップ作業をしました。

まずWordPressのテーマなどファイル関連は、FTPソフトを使ってローカル環境に全てコピー。画像データも全てダウンロードで保存しました。

肝心のMySQLデータは、

http://rensaba-karuma.net/paperboy/lolipop/1973/

まず上記記事の通り、ロリポップのphpMyAdminから全データをエクスポート。

http://pc-karuma.net/mamp-phpmyadmin-db-import/

続いてローカル環境に構築しているWordPressのMySQLに上記記事の通りインポート。記事では「MAMP」で解説されてますが、「XAMPP」でも基本的にやることは同じです。

バックアップ自体はこれでOKなのですが、Web環境にあったデータがそのまんまローカル環境に入るため、ローカル環境のブログ表示がおかしなことになってしまいます。ローカル環境用にデータを修正してあげないといけません。(単にバックアップしておきたいだけなら何もしなくていいです)

http://rensaba-karuma.net/wordpress/how2use/5162/

修正方法は上記記事「MySQLデータベースのドメイン名書き換え」に詳しく解説されています。私もこの通り作業して成功しました。

ログイン時のアカウントやパスワードもWeb環境のものに変わってしまってるので、ローカル環境独自のものにしたい場合は適宜変更が必要になります。

それにしても、BackWPupには困った…。バックアップが成功してくれないなら意味がない…。

パーミッションの変更

WordPressフォーラムにて「再発やハッキングを防ぐため」パーミッションの見直しが推奨されてました。私もチェックしたところ、推奨されるパーミッションになってなかった…。ダメダメです。

フォーラムの記載に従い、

◆「wp-config.php」 → パーミッション「404」に変更
→【追記】ロリポップから注意喚起があったので本日「400」に再設定しました
◆「.htaccess」 → パーミッション「604」に変更
→【追記】「404」に再設定しました

なお、フォーラムに

「.htaccess」ファイルが書き換えられる事例が多発いたしております。

との記載があったので確認してみたところ、私のブログも「.htaccess」が改ざんされてました。現在は復旧済みです。

その他、参考にさせて頂いたサイト

とにかく少しでも多くの情報が欲しかったので、Googleで検索しまくって、いろんなサイトやブログの記事にお世話になりました。

http://www.landerblue.co.jp/blog/?p=8402

▲ 私の知る限り、フォーラム以外で最も速く今回の件を記事にされてました。

http://d.hatena.ne.jp/ozuma/touch/20120503/1335975957

▲ 今回見た中で最も気になった記事。

私がこのあたり無知なので詳しいことは分からないのですが、素人なりに思うのは、パスワードやアカウント名などを分かりづらいものに変更したとしても、アッサリとロリポップのMySQLをハッカーに覗かれちゃう、ということなのでしょうか…。メッチャ不安になるのだけど。

http://webshufu.com/wordpress-krad-xin-hacked-many-japanese-sites/

▲ 随時速報が更新されてます。フォーラム同様に私も都度チェックさせて頂いてます。

記事内にもある通り、ハッカーによる犯行声明の中に

R.I.P lolipop

という表記があります。「R.I.P」は「Rest In Peace」の略で、和訳すると「安らかに眠れ」。挑発的な意思表明がロリポップに対して成されてます。

りくま的まとめ

私がハッキングに遭った昨日(8月28日)は、犯行声明によれば576ものサイトがハッキング被害に遭ったようです。更に今朝(8月29日)、攻撃の第2弾として新たに約3,000ものサイトがハッキング被害に遭ってしまったようです

ロリポップの公式発表によれば、本日の段階で約4,800のサイトが被害に遭ったとされています。以下一部を引用します。

[2013/08/29 10:57 掲載]
現在、当社が提供しているサービス「ロリポップ!レンタルサーバー」において、第三者からの大規模攻撃によりWordPressをご利用中のお客様のサイトが改ざんされる被害が発生いたしました。「ロリポップ!レンタルサーバー」をご利用のお客様には、多大なるご迷惑をおかけしており大変申し訳ございません。

現在までに当社で把握できた被害状況についてご報告いたします。

[対象のお客さま]
「ロリポップ!レンタルサーバー」のユーザーサーバーにおいて
WordPressをインストールされている一部のお客さま(4,802件)

[現在までに判明している被害状況]
大規模な攻撃によりWordPressをご利用中のお客様の管理画面から
不正アクセスにより、データの改竄や不正ファイルの設置がされた。

[対策について]
1)セキュリティ面の強化の為、上記のお客様のサーバー領域に設置されているWordPressにおいて、wp-config.php のパーミッションを「400」に変更いたしました。

本対策の対象となったお客様におかれましては、ご登録メールアドレス宛に別途、メールでも本件をご報告しておりますので、ご一読くださいますようお願い申し上げます。

引用中の「対策について」で、「wp-config.phpのパーミッションを400に変更した」「対象となった人にメール送信した」という旨の発表がありますが、確認したところメールも届いてないし、パーミッションも変わっていなかったので、自分で400に変更しました。

http://www.landerblue.co.jp/blog/?p=8416

私自身、今回の件で「セキュリティに対する考えが甘かった」と猛省しましたが、上記記事を読んで感じたのは、特にロリポップ利用者やWordPress利用者は、他人事ではないかもしれません

公式発表にしても、他の記事やフォーラムにしても(今回の私の記事も含み)、内容が理解できず「うわ、怖い。何かしなきゃ。でも何をどうすればいいんだよ…」と不安ばかりが増長されてしまい、肝心の対処方法を明示されているところが皆無に等しかった。

昨日の時点でハッキングの概要がもう少し公式に表面化していれば、もしかしたら今朝の第2弾攻撃で約3,000もの被害は発生しなかったかもしれない。

「おお、自分とこはセーフだった…」と昨日は安心したのに、今日になって被害に遭われた方がきっと存在します。私の友人のブロガーもこのパターンで第2次攻撃の被害に遭いました。

昨日の段階では分かってる情報が本当に乏しく、WordPressフォーラムしか頼れる場所がない状態でした。第1弾の被害に遭い、調べても調べても解決策が分からず途方に暮れたりパニックになってたブロガーさんは多かったはずで、少なくとも私は大パニックでした

知識がないから、何をどうすればいいのか全然分からない。自分の無知に絶望したし、今まで楽しく積み重ねてきた記事の数々がこんなことで全て消滅してしまうのか、と泣きそうでした。

このブログも再び攻撃されるのかもしれません。現在は復旧できていますが、全く安心などしていません。ただ、やれることは全部やろうと思ってます。関係あろうがなかろうが、不備は今のうちに直しておかないと。

特にロリポップ利用者で、まだ何も対応されてない方々は、今のうちにファイルのパーミッションやパスワードを変更しておいた方がいいです。ハッキングを喰らってからでは遅いです。

私も引き続きフォーラムやロリポップ公式発表を注視し、何かあれば追加対策を講じていきます。

http://blog.hash-c.co.jp/2012/12/how-to-protect-your-wordpress-on-lolipop.html

こちらの対策も併せてやっておいた方がいいですね。

最後に、名前を挙げることでご迷惑をおかけするといけないので伏せますが、昨日の午前に被害が判明して以降、TwitterやFacebookで的確なアドバイスを頂いたり、落ち込みまくってた私をたくさんのお友達に励まして頂きました。

本当に助かりました。この場をお借りして感謝の言葉を述べさせて頂きます。ありがとうございました。

【追記1】
今回のハッキング騒動を機に作成されたWordPress Codexのページにて、「.htaccess のパーミッションを 404 に変更する」との記載がありましたので、パーミッションを再変更しました。
【追記2】
ロリポップからの「wp-config.phpのパーミッションを400に変更した」旨の連絡メールは17時過ぎに受信しました。遅いよ!
【追記3】
今回の一件で脆弱性の元凶かもしれないと話題に上がってた「timthumb」がWordPress内に残っていないかをチェックできるプラグインが紹介されていたのでエントリーを書きました。よろしければ併せてお読みください。
[Я]ハッキング被害を受けた方、心配な方はTimthumbをチェックしましょう
スポンサーリンク
この記事がお気に召したら
「いいね!」をお願いします!
「りくまろぐ」の最新情報を
Facebookにお届けします
コメントComments Off
CATEGORY :