ロリポップ改ざん事件で話題のwp-config.phpって、何が書いてあるの?
つい先日、WordPressユーザーを震撼させるこんな大事件がネット上で話題となりました。
「ロリポップ」でWeb改ざん、WordPressプラグインの脆弱性が原因 * http://www.atmarkit.co.jp/ait/articles/1308/29/news102.html
ロリポップは、利用料が月額数百円のプランが用意されている個人向けのレンタルサーバーですが、アクセス負荷の少ない中小企業が採用するケースも多いようです。
▼レンタルサーバー「lolipop」(http://lolipop.jp/)
WordPressの「簡単インストール」機能も提供されているので、高度なWeb知識を有する社員がいない会社でも、独自ドメインでオリジナルのブログを容易に設置できます。 http://lolipop.jp/manual/user/applications-wp/
簡単インストール機能の罠
WordPress簡単インストール機能があるので、データベース(MySQL)やファイルの設定方法を意識することなく、文字通り簡単にブログをインストールできてしまいます。
したがって、今回の騒動で運営会社から「.htaccessにIPアドレスを設定してください」とか、「wp-config.phpファイルのパーミッションを”400″に変更する作業が完了いたしました」と言われても、なんのことかさっぱりわからないというユーザーもいるでしょう。
Twitterのタイムラインを眺めていても、自分のサイトをちらっと見て「どうやら、うちは改ざんされていなかったようだ」と安易に結論づけ、楽観視しているツイートもたくさん見受けられました。
wp-config.phpの設定項目
それでは、レンタルサーバー会社が提供する簡単インストール機能ではなく、手動でWordPressをセットアップする場合に設定するwp-config.phpを見てみましょう。
ロリポップ・ユーザーは、管理画面にある「ロリポップFTP」から該当ファイルを開いてみてください。インストールされたディレクトリの直下にwp-config.phpがあるはずです。
▼ロリポップFTP上のwp-config.php
上図でわかるように現在は運営会社の手により、このファイルが「オーナーのみ呼び出し可で、内容の変更が不可」となっています。
画面をスクロールすると、ファイルの中身を閲覧することができます。ポイントとなる項目を以下に解説しておきます。
テキストエディタで編集しよう
// 注意:
// Windows の "メモ帳" でこのファイルを編集しないでください !
// 問題なく使えるテキストエディタ
// (http://wpdocs.sourceforge.jp/Codex:%E8%AB%87%E8%A9%B1%E5%AE%A4 参照)
// を使用し必ず UTF-8 の BOM なし (UTF-8N) で保存してください。
意外と知られていないのが「テキストエディタ」に分類されるアプリケーションの存在です。本来であれば、FTPクライアントを使って、編集後のwp-config.phpをサーバーにアップロードするのですが、その際にWindows付属のメモ帳で編集すると、文字コードの違いから不具合が発生することがあります。
テキストエディタは、このようなソースコードを扱うのに適したアプリケーションで、フリーソフトも沢山あり、初心者向けにはTeraPadなどがお勧めです。 http://www5f.biglobe.ne.jp/~t-susumu/library/tpad.html
MySQLのデータベース名
// ** MySQL 設定 - こちらの情報はホスティング先から入手してください。 ** //
/** WordPress のデータベース名 */
define('DB_NAME', 'OA0000_hoge');
WordPressでは、MySQLという名前のデータベース(オープンソース)を採用しています。レンタルサーバーを使っている場合は、その管理画面で自分が利用できるデータベース名がわかりますので、「OA0000_hoge」(例)の部分に記述します。
MySQLのユーザー名とパスワード
/** MySQL のユーザー名 */
define('DB_USER', 'OA0000123');
/** MySQL のパスワード */
define('DB_PASSWORD', 'hogehoge');
今回の事件で、悪意のある第三者ユーザーに乗っ取られたのは、これらの項目です。ユーザー名とパスワードの組み合わせが漏洩することにより、Webサイトのコンテンツが保存されているMySQLデータベースに勝手にアクセスされて、サイトが改ざんされてしまったというわけです。
文字コードの改ざん例も
/** データベーステーブルのキャラクターセット
(ほとんどの場合変更する必要はありません。) */
define('DB_CHARSET', 'utf8');
今回の騒動では、このキャラクターセット欄をutf7に改ざんされて、WordPressの管理画面にログインできないという事例もあったようです。通常は、utf8で運用します。
今回の改ざん事件でわかったこと
ロリポップを運営している株式会社paperboy&co.では、今回の改ざん事件でサーバーへのハッキングの事実はなく、あくまでもWordPressの脆弱性によるものと発表していましたが、レンタルサーバーという大勢のユーザーで一つのサーバーを共有する形態では、一人のユーザーのサイトへの侵入を足がかりにして、同じサーバー内の他のユーザーのサイトを書き換えられるというリスクも、各方面で指摘されています。
レンタルサーバーのWordPress簡単インストールという機能が便利で、ブログ開設のハードルが下がったのは嬉しいことですが、wp-config.php等の設定を意識せず、インストールできてしまったがゆえに大勢のユーザーがこの災難に遭遇したのも事実です。
これを機にAWSなどのクラウド・サービスにサイトの引っ越しを検討するユーザーも多いようです。いずれにしても、何の知識も無く、Webサイトを運営するのはこうしたリスクがあるということが明るみに出た事件でした。
弊社でも、Cloud24などのソリューションでWebサイト運営をサポートしておりますので、社内にセキュリティに明るい社員がいない等の企業様はぜひご相談ください。