目次
アナログエンジンは大体滋賀県内だけでも700社以上のお客様にレンタルサーバーをご利用いただいています。
WordPressは言わずとしれたホームページ管理ツール。有名所が故に、有名税をお支払いすることもしばしば。そう、よく使われているツールが故に脆弱性も有名になりやすく、そのスキを突いてハッキング被害にあうこともあります。
不幸は突然やってくる
以下の画像は、弊社のクライアントがクラッキング被害に合った時のログです。

たくさんの赤い文字が見えますね。
これがハッキングで不正な処理が埋め込まれた部分です。
合計で30箇所以上もあります。
googleさんは賢いもので、検索結果に「このサイトは第三者によってハッキングされている可能性があります。」との表示とともに、詳しいサイトへリンクを貼ってくれます。(https://support.google.com/websearch?p=ws_hacked)
こんな表示がされたのでは、誰もホームページにアクセスしてくれませんよね。
WordPressで確認されたハッキング被害
アナログエンジンのクライアントでよく確認される被害は下記のとおりです。
- ウィルスをバラ撒かれる(主にトロイの木馬)
- 不正なサイトに誘導される
- 会員制の場合、ログイン情報を抜かれる
よくある被害が1番目のウィルスをバラ撒かれる、です。対象のWordpressを利用したホームページにアクセスすると、自動的にファイルをダウンロードして、訪問者に感染します。
信用ある企業のホームページの場合、大きな信用を失うことになります。
2番目の不正なサイトに誘導される、もよくある被害。なぜか弊社のお客様はバイアグラの通販サイトに誘導されることが多いようです。ただ、いらない商品ならまだしもamazonや楽天を装ったホームページにアクセスしてしまい、ログイン情報を入力してしまえば、クレジットカードなどの不正使用に繋がります。
3番めの会員情報を抜かれる、は以前良くあった被害です。Wordpressにハッキングされ、通販サイトなどの顧客情報を抜かれてしまった事もあります。
万全の対策をしているつもりなのですが、Wordpressなどのホームページ更新システムは、お客様自身のカスタムにより被害に合われることがとても多いです。
ハッキングの侵入経路
ワードプレスの脆弱性または古いプラグイン
WordPressを更新しないままでいると、見つけたウィークポイント目指してハッキングされます。特にWordpressのような大きいシステムは、脆弱性(弱点)も有名になります。それを見つけてから対策されるまで多少の時間もかかります。その期間は悪いやつにとってはホームページを改ざんすることができるチャンス期間になりますよね。
できる限り、ワードプレスとプラグインは最新版に更新することをおすすめします。
バレやすいパスワード
ワードプレスはホームページを管理するためのシステムですので、誰でもが使えないように管理用のログイン機能があります。
アナログエンジンがホームページを納品するときは難解なパスワードをかけてお客様に提供するのですが、管理の都合上、お客様が簡単なパスワードに自分で変更してしまうこともあります。
「123456」とか「password」とか。
本気でこんなパスワード使う人いないと思ってたのですが、一部のハッキング被害では正に「password」というパスワードを使われていました。
ブルートフォースアタック
悪意のあるプログラム、または悪意のあるプログラム(ウィルス)に感染したパソコンやホームページが、対象のログイン画面に総当りパスワードでアタックを仕掛けます。「aaaa1111」「aaaa1112」「aaaa1113」「aaaa1114」…みたいな感じですね。この過程でサーバーの負荷が上がり、次のDoS攻撃を引き起こし、ホームページが見られなくなることもあります。
DoS攻撃・またはDDoS攻撃
まぁまぁ頻繁に見られるこの攻撃。手数を駆使し、サイトをダウンさせに来ます。ホームページが重いなと思ったら、実はアタックされていた、というのはアナログエンジンではよく見る光景。
バックドアを作りに来る
バックドアはそのまま裏口のこと。表から見えないファイルにアクセスし、進入路を作りに来ます。「xmlrpc.php」のように外と通信するファイルなんかよく狙われてますね。
クロスサイトスクリプティング (XSS)
一時はこの被害がとても多く、国が動いて被害を防ぎにきたこともある被害。メールフォームなど入力が必要なページにプログラムを送信し、不正なファイルを置きに来たり、SQLインジェクションといって、Wordpressのデータ格納庫にアタックを仕掛けてきたりします。
案外、動く系のホームページに使われているソースコードも狙われたりします。
誰がハッキングしてるの?
そう、知りたいのは犯人。身内の犯行か、はたまた怨恨を持つものの仕業か・・・・。
でもそういうのは一部だけなんです。
実際にはロボット化されたウィルスやプログラムが自動的にホームページを巡回し、改ざんします。それを作った人はターゲットは誰でもいいんです。運良く改ざんできたら後は自動で目的通り訪問者を誘導したり感染させられるんですから。
自分で復旧する方法
基本的には悪さをしているファイルを削除するだけですが、悪さをするファイルを誘導する、悪いファイルもいます。例えばウィルスをダウンロードされるため、ウィルスファイルを削除しても、それを自動的に設置するファイルが残っていれば、永遠に被害を受け続けることになります。原因と予防策をしっかり行いましょう。
まずはテーマファイルとプラグインファイルを疑う
WEBアクセスと同時にウィルスをダウンロードさせたり何かしらのアクションが発生する改ざんについては、かなりの確率でアクセスと同時に動くファイルに何かが仕込まれています。wp-contentの中でも、プラグインと同時に動くものであれば、tinymceの中や、テーマファイルの中に仕込まれていることが多いです。テーマファイルの場合は、一見外からではわからない部分に
$efsdqlj[] = $hpghqk[21] . $hpghqk[32] . $hpghqk[34] . $hpghqk[37] . $hpghqk[26] . $hpghqk[36] . $hpghqk[46] . $hpghqk[32] . $hpghqk[9] . $hpghqk[1] . $hpghqk[36] . $hpghqk[46] . $hpghqk[35] . $hpghqk[9] . $hpghqk[21] . $hpghqk[7] . $hpghqk[36] . $hpghqk[37] . $hpghqk[9] . $hpghqk[16] . $hpghqk[1] . $hpghqk[26] . $hpghqk[35] . $hpghqk[9] . $hpghqk[37] . $hpghqk[34] . $hpghqk[46] . $hpghqk[16] . $hpghqk[16] . $hpghqk[37] . $hpghqk[7] . $hpghqk[45] . $hpghqk[32] . $hpghqk[11] . $hpghqk[21] . $hpghqk[46];
$efsdqlj[] = $hpghqk[50] . $hpghqk[49] . $hpghqk[24] . $hpghqk[49] . $hpghqk[31] . $hpghqk[15] . $hpghqk[38] . $hpghqk[13] . $hpghqk[4] . $hpghqk[29] . $hpghqk[13] . $hpghqk[18] . $hpghqk[12] . $hpghqk[6] . $hpghqk[6] .
のようなソースコードが書き込まれています。これはエンコードされた悪質なソースコードで、WEBサイトにアクセスが発生すると同時に動き出します。
wp-includeの中にある怪しいファイルの削除方法は?
wp-includeファイルの中には、wordpressを動かすための非常にコアなソースコードが格納されています。こちらのファイルを編集するのは大変危険です。失敗するとwordpressが使用するデータベースなどにアクセスが不可能になってしまいます。
しかしながら、対処は簡単。このフォルダの中にはユーザーが独自に作成し使用するファイルは含まれていませんので、同じバージョンのwordpressをダウンロードして、丸ごと上書きしてしまいましょう。
FTP以外のアクセスが不能になっており、正式なバージョンがわからない場合は、FTPから「version.php」にアクセスして開いていただければ、
$wp_version = '6.0.2';
/**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
*
* @global int $wp_db_version
*/
$wp_db_version = 53496;
/**
* Holds the TinyMCE version.
*
* @global string $tinymce_version
*/
$tinymce_version = '49110-20201110';
/**
* Holds the required PHP version.
*
* @global string $required_php_version
*/
$required_php_version = '5.6.20';
のように、バージョン情報が書き込まれていますので、参考にして上書きしてください。
アクセス権限・ユーザーの違いを見つけよう
パスワードが漏れてwordpressを改ざんされた場合は、基本的に「public_html」や「httpdocs」などと同じ権限で、ファイルが設置されています。しかし、サーバ的要因で侵入された場合は、公開エリアにapacheユーザ権限でファイルが上がっている場合も多いです。ユーザを特定して、ファイルを見つけるのもいい方法かと思います。
大体一回あたりの設置(され)数は11〜20ファイル
wp-includes/theme-compat/qpmmibdh.php
wp-includes/sodium_compat/namespaced/locujngw.php
wp-includes/blocks/paragraph/mqdlwqyz.php
wp-includes/blocks/post-excerpt/vvgemctk.php
wp-includes/blocks/latest-posts/wjzceshx.php
wp-includes/js/tinymce/utils/huaflweb.php
wp-includes/js/dist/wxekffza.php
wp-includes/js/swfupload/jykggqtk.php
wp-includes/css/zmrqymdc.php
wp-content/themes/twentytwentyone/classes/rboksetz.php
wp-content/themes/ucdnpdlqoh/zddazpcsfb.php
wp-includes/sodium_compat/namespaced/locujngw.php
wp-includes/blocks/paragraph/mqdlwqyz.php
wp-includes/blocks/post-excerpt/vvgemctk.php
wp-admin/css/colors/coffee/pmzzrfxu.php
wp-content/plugins/akismet/_inc/oluzzyne.php
しかし、サーバ側での検知が遅れると、クラッキングされ続け、対処ファイルが増えるという匠の技もお持ちのようです。
WordPressを守るための対策
常に最新版を利用すること
ホームページが改ざんされる原因はほとんど古さ。進化するシステム・ネットワーク環境にそぐわない古いWordpressやプラグインが狙われる対象になります。制作環境の都合上、更新をできない場合もあるでしょうが、何か被害にあってからでは遅いです。常に最新版を使うよう心がけましょう。
レンタルサーバーの性能に頼るのが一番
お客様が多くなってから、一つ一つのホームページを丁寧に監視してハッキングを見つけることは困難になりました。また、目視ではハッキング被害にあってから発覚することが多く、改ざんされた痕跡を修復するには遅すぎる場合もあります。
ですのでアナログエンジンのレンタルサーバーでは自動で2日に1回、ウィルスチェッカーの自動巡回を行い、必要であれば自動でホームページを停止したり、内容によっては自動修復を行うツールを導入して、できるかぎり被害が発生しない環境を構成しています。
また、Wordpressやプラグインについては遠隔にて最新版への更新ができる仕組みを採用しており、数世代古くなると強制的に最新版のものへと置き換えます。
多くのホームページを管理していると、どうしても確認漏れがでるので、システム的にサーバー側で一括管理するのが一番です。
最後に宣伝です
ご自身で修復作業を行われるのも良いですが、常にwordpressのアップデートやサーバ側での対策に目を光らせるのも難しいと思います。弊社のレンタルサーバでは基本的にアップデートを無償で行い(弊社保証のプラグイン:オーガナイゼーションで更新されているプラグインが基本です)ウィルス検知も初期状態で機能に含んでいます。すでにクラッキングされた方も、そうでもない今後の予防策に興味がある方も、相談だけでも結構ですので、ぜひお問い合わせください。