書籍「いちばんやさしいGoogleビジネスプロフィールの教本」

WordPress や Joomla でファイルの改ざん・・CMSのシェアもあり

Webサイト制作

ここ2週間、WordPress や Joomla などで、CMSの構成ファイルの改ざんが行われています。

PHPファイルが改ざんされると、閲覧者のブラウザに不正なコードが挿入されてマルウェアに感染してしまいます。

かなり被害は拡大しているので、CMSをお使いの方は一刻も早くファイルの確認をお願いします。

改ざんの標的となるCMS内のPHPファイル

改ざんされたファイル

CMSの種類によって改ざんされるファイルは異なるので、どんなファイルが改ざんされるのか見ていきましょう。

WordPress

  • /wp-includes/nav-menu.php
  • /wp-admin/includes/nav-menu.php

Joomla

  • /includes/defines.php
  • /administrator/includes/defines.php

Dual

  • /includes/bootstrap.inc

MODX

  • /manager/includes/protect.inc.php

不正なPHPコードを取り除く

上記のファイルに、

「//istart」から「//iend」に挟まれた不正なPHPコードが挿入されていたらすぐに取り除いてください。全部削除します。

JPCERTコーディネートセンターの画像が分かりやすいので拝借すると、↓

不正なPHPコード

改ざんの影響

ファイルを取り除かないと、サイトを閲覧したユーザーのPCがマルウェアに感染リスクが高くなります。

Webサイトに閲覧者がアクセスすると、改ざんされたPHPファイル中の不正なPHPコードは、divタグおよびJavaScriptからなる不正なコードを外部から取得し、Webサイトが閲覧者に返すレスポンス内に挿入します。コードが挿入される位置はCMSによって異なり、WordPressではbodyタグの直後、Joomla!、Drupal、MODXでは、HTMLの冒頭部です。

挿入される不正なコードの例

不正なコードには難読化されたJavaScriptが含まれており、これが閲覧者のブラウザ上で実行されると、閲覧者を攻撃サイトに誘導するiframe等のタグが生成されます。閲覧者のWebブラウザやプラグイン等に脆弱性が存在した場合には、閲覧者のPCがランサムウエア等のマルウエアに感染してしまう可能性があります。

改ざんを防ぐには

CMSやプラグインは常に最新のものにアップデートします。

幸いわたくしのクライアントは、きちんとアップデートしていたこともあって、サイトが被害にあうことはありませんでした。

でも、テスト環境のレンタルサーバーにインストールしている Joomla にこのコードが入っていました。この環境の Joomla は、完全にテスト用ということもあってプラグインの更新がされていなかったのが原因。

最近 Joomla は脆弱性を突かれた攻撃が多すぎますね。

2015.12月 Joomla.4.7が軒並みやられました。

Joomlaに深刻な脆弱性!アップデートは必須です
ここ数日間で、Joomlaの脆弱性をついた攻撃がめちゃくちゃ増えています。 Joomla 3.4.6以前のバージョンを使っている方は、軒並みやられています。 Joomla!の「ゼロデイコード実行脆弱性」はPHPの既知の脆弱性が原因 レンタル...

これを受けて12月30日に警察から発表がありましたが、完全に他人事って感じ・・

PHPの脆弱性を標的とした不正なアクセスの観測について

「Joomla!」を使用したウェブサイトに対するPHPの脆弱性を標的とした不正なアクセスを観測しました。PHP を利用している全てのサイト管理者は速やかな対策を実施することを推奨します。

CMS のシェア

IT先進国を見てみると、どの国もWordPressに比率が高いです。日本は87.5%とぶっちぎりです。

シェアが高いCMSは脆弱性を狙った攻撃が多いけど、対策も早く取られます。

シェアの低いCMSだと対応が遅かったりします。

3年前まではJoomlaのシェアは10%くらいあったのに、今は見る影もない・・10%以上あるのはイスラエルだけですから。

Alexa top 1M

CMSシェア Alexa

  • WorePress 71.4%(59.1% + 12.3%)
  • Dual 6.1%
  • Joomla 5.4%
  • Blogger 3.4%
  • vBulletin 2%

アメリカ

WorePressの比率が低く、Bloggerがそこそこ使われている。

CMSシェア アメリカ

  • WorePress 58.5%(48.6% + 9.9%)
  • Blogger 8.6%
  • WebSite Tonight 5.1%
  • Joomla 4.7%
  • Weebly 3.7%

日本

WorePressがダントツです。というか異常に高すぎる。

CMSシェア 日本

  • WorePress 87.5%(79.8% + 7.7%)
  • Jimdo 4.2%
  • Microsoft Frontpage 2.1%
  • Blogger 1.1%
  • Joomla 0.9%

インド

Bloggerの比率が高い。

CMSシェア インド

  • WorePress 66.5%(59.5% + 7%)
  • Blogger 12.5%
  • Joomla 7.9%
  • Dual 3.9%
  • WebSite Tonight 1.8%

イスラエル

Joomlaが10%と健闘しています。

CMSシェア イスラエル

  • WorePress 63.3%(58.7% + 4.6%)
  • Joomla 10.5%
  • Wix 10.1%
  • Dual 4.3%
  • Blogger 2.9%

CMSの管理はどうする?

OSのアップデートと同様に、CMSは随時アップデートしないと脆弱性を狙われて攻撃されてしまいます。

自動アップデートというのもあるんだけど、いきなり動かなくなるというリスクと隣り合わせです。理由は、アップデート後のCMSにプラグインが対応していなかったりするためです。

アップデート後の不具合

アップデート後にCMSが動かなくなるというのは良くあります。

実際にどんな不具合があるのかというと、

レイアウトが崩れる

テーマが対応してなかったりすると、レイアウトが崩れたり、エラー内容がサイトに表示されたりします。

アクセス不能になる

画面がホワイトアウトして、全くアクセスできなくなります。この場合、FTPで元に戻すしかないです。

データベースが破損

色々と原因はあるのですが、ブラウザが強制終了したりすると、データベースが破損するリスクが上がります。

アップデートしないと脆弱性をついた攻撃のリスクがあるし、アップデートしても不具合が起きるリスクがあります。

じゃあどうすんのって話になりますが、集客するサイトが欲しい人は、プロに管理を頼むか、自分でPHPについて勉強するかどちらかです。サイトが止まってしまうのは致命的なので。

商売でサイトを運営するなら、プロに管理を委託することをオススメします。