こんにちは。本職インフラエンジニアなのに不正アクセスを許してしまったインフラエンジニアの遠島です。
夏の怪談には少し早いですが、今回はブロガー・サイト運用者にとっての怖い話。貴方のブログ・サイトが突然見れなくなるという怖い話をしましょう。決して他人事じゃありませんよ!
恐怖の始まり
事の発端はxserverからこんなメールがきていました。(調べた結果sixcoreも同様の内容の文章が来るようなので参考になると思います。)読み飛ばしても問題ありません笑
件名:Xserver お客様のサーバーアカウントにおける不正なアクセスの検知および制限の実施
平素は当サービスをご利用いただき誠にありがとうございます。
Xserver カスタマーサポートでございます。
お客様の上記サーバーアカウントにおいて、サーバー用メール送信ソフトウェア(Sendmail)を用いた日本国外のメールアドレスに対する大量のメール送信処理を確認いたしました。当サポートにてセキュリティ調査を行いましたところ、お客様がご利用のプログラムにセキュリティ上致命的なバグ(脆弱性)が存在し、当該脆弱性を第三者に悪用されてしまった可能性が非常に高い状況でございました。
そのため、事後のご案内となり大変恐縮でございますが、緊急措置として下記制限を実施しております。▼サポートにて実施した制限内容
——————————————————-
・当該サーバーアカウントに対する緊急的なWebアクセス制限を実施※上記処理に伴い、Webアクセスを行うと403エラーとなる状況です。
——————————————————-
さらなるスパムメールの大量送信やフィッシングサイトの開設などの
『不正アクセス』による被害の拡大を防ぐため、上記対応を実施しましたことを
何卒ご了承くださいますようお願いいたします。不正アクセスの対策と制限の解除手順につきましては、
下記をご参照くださいますようお願いいたします。
(中略)
なお、今後、同様の状況が再度確認された場合、
さらなる制限を実施する可能性がございます。不正アクセスによる被害の発生・再発を防ぐための措置でございます。
何卒ご理解くださいますようお願いいたします。以上、何卒よろしくお願い申し上げます。
ご不明な点などございましたら、お気軽にお問い合わせください。
まぁつまりあなたのブログが
こういうことになるということ。
しかも根本解決しないで再発した場合はもっと長く閉鎖させるからな!って言われている状態。
って状態になりましたが、現在はとりあえず復旧させることが出来ました。
ただほとんどの人はxserverからこんなメールきても中身がほとんどわかんないんじゃないかなと思っております。
ということで、今回は本件の原因と対応をまとめます!仮にもエンジニアの端くれなので非常に恥ずかしいですが、逆にこういう情報は貴重だと思うので笑
とりあえず現在そういう状況に陥っていないから、対策だけ知りたい方は以下の記事をご覧ください。
ブログがアクセス制限を受けた理由
今回の私の状態は、いわゆる海外の不正アクセスを受けて、勝手にサーバー上のメール送信のソフト使われてスパムメールを色々な人に送りまくって迷惑かけているから一旦止めるねみたいな状態です。
xserverから来ているメールの一連の調査結果や対応策を抜粋しながら、どういうことを言っていて、具体的にはどうしたらよいのかというのを説明します。
引用箇所は、IT関係でエンジニアと自称できる人くらいしか理解できないので読み飛ばしてください笑
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【1】サポートにて実施したセキュリティ調査について
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━お客様の上記サーバーアカウントにおいて
以下の不正なファイル(ウイルス、マルウェアなど)が検出されるとともに、
日本国外からの不審なアクセスを確認いたしました。[検出された不正なファイル]
(中略)
[不審なアクセスログの一部]
(中略)
検出された不正なファイルやアクセス先のファイルは不正に設置または改ざんされている可能性が高くございます。なお、不正アクセスの根本原因は下記2つのパターンに大別されます。
▼不正アクセスの根本原因
————————————————————
(1)お客様が運用中のプログラムにおいてセキュリティ上問題のある致命的なバグ(脆弱性)が存在し、第三者に脆弱性を利用された。→該当プログラムが「どんなコマンドでも実行可能」である場合、該当プログラムを経由して不正なコマンドの実行や、不正なファイルの設置が行えてしまいます。
(2)お客様のサーバーアカウントに関するFTP情報が流出し、第三者に不正にFTP接続をされた。
→FTP操作自体によるファイル改ざんはもとより、任意のプログラムを設置することでどんなコマンドでも実行できてしまいます。
————————————————————お客様のサーバーアカウントにおいては不審なFTPアクセスが見られないことから、消去法的なご案内となりますが、お客様が運用中のプログラムに脆弱性が存在し、該当脆弱性を悪用されてしまった可能性が高いものと思われます。
また、今回の調査では不審なアクセスは見受けられませんでしたがWordpressなどのCMSの管理画面に対する、パスワード総当りなどによる、国外からの攻撃が多発しております。CMSをご利用の場合、パスワードをより強固な物へ変更するなど、
念のための対策を併せてご検討くださいますようお願い申し上げます。
つまりこの部分は、大体貴方のサーバーがどういう経路でウィルス感染したのか、不正アクセスをされたのかなどの原因が書かれております。
で、最近はパスワード総当りも流行っているから気をつけてねって言ってくれてるわけですね。私の知り合いも中国からのアクセスを受けたって行っていたので間違いないでしょう。
今回の私の場合は、
お客様のサーバーアカウントにおいては不審なFTPアクセスが見られないことから、消去法的なご案内となりますが、お客様が運用中のプログラムに脆弱性が存在し、該当脆弱性を悪用されてしまった可能性が高いものと思われます。
ここがポイントになりそうです。
要約すると、xserver上で利用されているwordpress含めたプログラムの弱い点をつかれて不正アクセスされてしまったよという話。
運用中のプログラムって、wordpressプラグイン含めて、かなりあるんですがそれは・・・。
アクセス制限の解除方法について
さて重要なのはどうやってアクセス制限から復帰させることができるのかというところ!
xserverさんはしっかり書いてくれています!
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【2】Webアクセス制限の解除方法について
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━次項【3】の [2] に記載しております「サーバーアカウント上に設置された
ファイルの削除」を行っていただき、サポートまでお知らせください。************************************************************
この度のような不正アクセスの被害に遭われた場合、検出された不正なファイル以外にも、他の不正なファイルやバックドア(不正アクセスを容易とする仕組み)などが設置されている可能性が考えられます。また、プログラムはその仕組み上、上位フォルダに対するファイル操作(ファイルの設置や編集)も行えてしまいます。
そのため、凍結の解除にあたっては、検出された不正なファイルだけではなく、サーバーアカウント全体のすべてのファイルを削除していただくようお願いしております。
************************************************************
これはあかん・・・
うだうだ書いてあるけど、
凍結の解除にあたっては、検出された不正なファイルだけではなく、サーバーアカウント全体のすべてのファイルを削除していただくようお願いしております。
つまりxserverに載っている全てのファイルを削除しろと言うことですね。\(^o^)/おわた
(もちろんブログがゼロからやり直す必要はありませんので引き続き読み続けてください)
アクセス制限解除のための対応内容について
しかしやらねばブログを復活させることもできません。ので早速やることに。ただ全てのファイルを削除するって言ってもどうやってやるじゃろ。
cmd /c rd /s /qc:\(ラピュタのバルス!みたいな意味合いのコマンド)みたいなのがあるのかな?
ということで親切にも、その指示まで書かれています。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【3】お客様に行っていただきたい対応内容について
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━───────────────────────────────────
[1] ご利用のPCにてセキュリティチェックを行ってください。
———————————————————————-お客様のご利用PC端末にてセキュリティソフトを最新版に更新していただき、
ウイルスチェックと駆除をおこなってください。また、Windows UpdateやAdobe Reader、Flash Playerなどの
ご利用PC端末にインストールされているソフトウェアにつきましても、
最新版へ更新してください。※本件はプログラムの脆弱性に起因する不正アクセスの可能性が高い状況では
ございますが、念のため上記ご確認をお願いいたします。
───────────────────────────────────
[2] サーバーアカウント上に設置されたファイルを全て削除してください。
———————————————————————-お手数ですが、下記の手順にて「独自ドメイン」「初期ドメイン」、および
「その他のフォルダ」に設置されたファイルの削除をお願いいたします。※この作業による、データベースの初期化・削除はございません。
【!】ご注意ください下記の作業により、お客様のサーバーアカウント上に設置されている
ホームページデータやメールデータおよび各種設定がすべて削除されます。画像、プログラム、設定ファイルやメールデータ、メールアドレス一覧などの
必要なデータは事前にバックアップを取った上でご対応ください。————————————————————
◆「独自ドメイン」のデータ削除について「サーバーパネル」→「ドメイン設定」より、設定中のドメイン名を
すべて削除してください。※オプション独自SSL証明書が設定されているドメインに関しては
「ドメイン設定」より対象ドメインの「初期化」より
「ウェブ領域・設定の初期化」をご利用ください。
◆「初期ドメイン」のデータ削除について「サーバーパネル」→「ドメイン設定」へアクセスしていただき、
削除が不可能な初期ドメイン名を「初期化」してください。※「ウェブ領域・設定の初期化」をご利用ください。
◆「その他のフォルダ」のデータ削除についてFTPソフトや「ファイルマネージャ」でサーバーアカウントを参照し、
アクセスした際に表示されるフォルダが以下のみになることを
ご確認ください。・「初期ドメイン名」のフォルダ
・(オプション独自SSLを利用している)「ドメイン名」のフォルダ
・「ssl」フォルダ上記以外のフォルダやファイルが存在する場合、
FTPソフトやファイルマネージャーにて個別に削除してください。
————————————————————
要約すると以下のようなことになります。
ご利用のPCにてセキュリティチェックを行ってください。
これやっていない人は、もう少しパソコンとネットの恐ろしさを学んでからブログをはじめてください。
とりあえずこの辺がパソコンにインストールされていればOKです。
サーバーアカウント上に設置されたファイルを全て削除しろ
おそらくほとんどの人が恐怖するであろうポイントはこちらになると思います。
えぇ・・・全部削除して大丈夫なの・・・?
そのまま削除してしまったら全然大丈夫じゃないので、バックアップをとっておきましょう!
BackWPUp等で、毎日バックアップとっているよ!というかたは全く問題ありません。ただとっていない人も多そうなので・・・笑
基本的にバックアップは以下の2点だけ取ればOKです!データ関連の復旧は出来ます。(プラグインやテーマは、再度インストールする必要があります。というか再インストールして最新版を入れることを推奨します。)
それぞれドメインの、
/ドメイン名/public_html/ から wp-config.php ファイル
/ドメイン名/public_html/wp-content/uploads フォルダ
をすべてダウンロードします
バックアップの取得の仕方
で、どうやってそのバックアップとるかというと・・・FTPソフトというのを利用します。
FTPに参考になる記事はこちらになります。
Windowsユーザーであれば、まずはこのFFFTPと言うのものインストールします。
Macユーザーであれば、FileZilla というものをインストールする必要があります。ただ本家のサイトからソフトウェアをダウンロードをしようとおもっても、セキュリティソフトにウィルス扱いされてファイル削除されてしまうので、windowsのFFFTPで作業を実施しました。
バックアップをする事前準備をする
FFFTPでサーバーに接続するまでの手順は以下になります。その前に必要な情報をあつめましょう。
まずはxserverにログインしてください。FTPアカウント設定をクリックします。
アクセスしたいドメインを選択するをクリックします。
FTPアカウント設定内で、FTPソフト設定内の以下の設定項目をメモします。
- FTPサーバー(ホスト)名
- ユーザー名(アカウント名)
- パスワード
実際にバックアップをしよう!
これらをメモった後にFFFTPを起動します。以下のような画面が出てくるので新規ホストをクリックします。
先程メモった情報を以下に入力します。
ログインしたら以下のような画面になります。sslの上下のフォルダをご自身が登録しているドメイン名が表示されていると思います。バックアップをとりたいドメインのフォルダを選択してください。
/ドメイン名/public_html 以下の wp-config.php をコピーして左側のffftpフォルダにペーストします。その際はドメイン名バックアップみたいな名前をつけておくと良いでしょう。
/ドメイン名/public_html/wp-content 以下のuploadsフォルダをffftpフォルダの先程作成したバックアップフォルダ以下にコピーする。
ドメインを削除・初期化する影響範囲
このドメインを削除・初期化するっていうのは、幾つかの影響範囲があります。
これらをドメイン初期化するときにしっかり確認しておかないと復旧させるときに、あるドメインのサービスが使えないという状況に陥ります。
ただこのドメインを初期化するというのはバックアップさえとっておけばそこまで深刻になるものではありません。ドメインをまるごと消すという意味合いではなく、xserver上でそのドメインに関連するデータのみ一旦消去するということです。
一つのサーバーで幾つかのドメイン・サイトを運用している場合
この場合は、それら全てのブログやサイトのデータが削除しなければなりません。何かしらのサービスを提供している場合は、特にお気をつけください。全てアクセス出来なくなっているので、全てのサイト、ブログのデータをバックアップする必要があります。
独自ドメインメールが使えなくなる
また独自ドメインのメールが一時的に使うことができなくなります。エックスサーバーで独自ドメインのメールアドレスを設定している方も多いと思います。ご自身の利用しているメールアドレスなど、頻繁には使わないメールアドレスなどを控えておきましょう。
メルマガスタンドなどが使えなくなる
見落としがちなのがこれ。サイト自体があるわけではなくドメインのみで利用している場合って結構見落としてしまいます。特に普段意識しないのでこれは注意しましょう。
プラグイン・テーマ等を再度インストールする必要がある
これらは削除する前にメモ帳かなにかに控えておきましょう。再度最新版をインストールする必要があります。プログラムの脆弱性を防ぐという意味合いもあるので、抜け漏れないようにしておきましょう。
ここまで確認出来たら、ドメインの削除の手順の説明をしましょう。
ドメインの削除手順
バックアップ、ドメイン削除の影響範囲はご理解いただけましたでしょうか?これからは基本的に自己責任でお願い致します。
各ドメインの選択します。
ドメイン設定画面で、各ドメインの削除ボタンを押下することで、ドメインの削除をします。
これでドメインの削除をしましょう。
一通り削除し終えたら、削除できない(一番上)ドメインが残ります。初期化するボタンを押下すると、ドメイン設定の初期化を選択し、確認ボタンを押すと、本当に削除しても良いですか?という画面が出るので初期化しましょう。
この状態になったらxserverに連絡をしましょう。連絡先は、メールに窓口が書いてありますのでそちらからどうぞ!
xserver様よりWEBアクセス凍結を解除される!
そうすると問題なければ当日、もしくは翌日中には復活できるようにしてくれます。解除されたらこんな感じのメールが来ます。
先ほどサーバーアカウントにおけるWEBアクセス凍結を解除いたしました。
再度ドメイン設定やデータのアップロード等行っていただければと存じますが、WEB凍結時点でのデータを再度アップロードすることはお避けください。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~不正アクセスが確認された時点のデータを再度アップロードされますと
また同じ問題が発生する可能性が【極めて高い】ものでございます。改めて【クリーンなデータ】を用いてWEBサイトの再構築を行ってくださいますようお願いいたします。
※ 再アップロードの際はWEBサイト作成時などの、改ざんの疑いのないクリーンなデータを用いていただくか、各ファイルを1つ1つ地道に不審な部分がないかをご確認いただいた上で、アップロードを行ってくださいますようお願いいたします。
万一、また同じ問題が再発した場合などはより長期のWebアクセスの制限などを実施することとなりますので、十分ご注意くださいますようお願い申し上げます。
なお、ドメイン設定の追加後にアクセスが可能となるまで、最大1時間程度、反映にお時間がかかりますのでご注意ください。
どういうことかというとどこにウィルスが仕込まれているかわからんからフルバックアップした物を再度アップロードするなよということです。同じ過ちを繰り返すことになるぞということですね。
だから今回は基本的に最低限のバックアップしかとっておりません。
ブログを復活させる
xserver様からの指令がまだあります。
───────────────────────────────────
[4] FTPソフトによるデータアップロードなど、
ホームページ再開のための作業を行ってください。
———————————————————————-サーバーパネルの「ドメイン設定」より独自ドメインの運用設定を改めて追加していただき、FTPソフトによるファイルのアップロードやメールアドレスの設定など、ホームページ再開のための作業を行ってください。
凍結時点のデータは不正に改ざんされているデータを含む可能性やセキュリティ上問題がある可能性がございます。再発防止のため、セキュリティ上問題のない、改ざんされていないクリーンなデータをアップロードなさいますようお願いいたいます。
※CGIプログラムをご利用の場合はパーミッションの変更にご注意ください。
要約すると削除したドメインの数分、以下の3点をやれということですね。
- ドメインの再設定・wordpressの再インストール
- データのアップロード
- テーマやプラグインの追加と再設定
ドメインの再設定・wordpressの再インストール
再度ヨッセンスのヨスさんの記事から参考にさせてもらいましょう!
上記記事の「サーバーパネル」にログインからお読みください。
データのアップロード
先程以下の2つのファイルとフォルダをご自身のパソコンにダウンロードしたものかと思います。
それを同様のところにアップロードしてあげましょう。
つまり
/ドメイン名/public_html/
/ドメイン名/public_html/wp-content/uploads(おそらく初期状態ではないのでは、新しいフォルダを作成してください)
これらのフォルダに先程バックアップしたフォルダのデータをコピーする。そうするとブログが復活しているはずです!
テーマやプラグインの追加と再設定
これらは別途ご自身で対応してください。先程メモっておいたプラグインテーマをインストールしましょう。
今後の対策
このような事態に陥らないための設定項目などを見直しておく必要があります。
こちらの記事からどうぞ
遠島の独り言
今回はある程度知識のあるぼくだからこそ復帰できたと思います。流石にやべぇ・・・やべぇよ・・・と思いはしましたが、復旧できなくはないな。時間かかるけど程度でした。
しかし大体の人にとっては結構ハードル高い点があると思いますので、こういう事例があって困っているなどがあればツイッターの方に連絡いただければ少しお手伝いできるかもしれません。
そうしたらこちらの記事にもその対応結果を載せることもできますし笑
ちなみに不正アクセスをされないための対策については長くなってしまったので別記事を用意させていただきました。