こんにちは。
タイトルの通りですが、サイトの復旧までたどり着いたので、もし困っている方がいらっしゃれば、どうぞご参考に。
*ただし、ファイルの修正等は自己責任でお願いします。
まずは使用環境。ロリポップサーバーで、Welcartを導入など
使用環境ですが、以下の通りです。
【サーバー】
ロリポップ スタンダードプラン
【CMS】
Wordpress4.8.1
【テーマ】
Welcart公式のテーマを親テーマと子テーマ(canariaというやつ)。不要なテーマはリジェクト済み
【プラグイン】
Welcart e-commerce、TinyMCE Advanced、smart sliderなど5つほど
詳しいバージョンなどは割愛させていただきます。
とにかく、ロリポップにてワードプレスでwelcartを使ってショップサイトを運営していました。
そのECサイトの運営は2017年6月くらいだったのですが、2017年9月10日ごろに異変に気付いたのです。
マルウェアが入っちゃった?
注文時のメールが入らなかったのが最初の異変でした。
この時、サイトは見れています。
サイトガードのプラグインも入れていたし、もちろんロリポップの管理画面からWAFも有効になっていたのでセキュリティなどはあまり不安に感じていませんでしたが、いくら注文テストをしても自動配信されるはずの受注メールが届きません。
しばらくして、試しに受信されるメール(これもそのサイトのサーバーのメール、つまりロリポップです)で普通にテスト送信してみると送信も受信もできました。
あれ?と思いながら、また注文テストをすると、今度は受注メールが届きました。
メールサーバーに原因があることがわかり、ロリポップ側のメンテナンスの情報などを漁りましたが、何も情報は載っていませんでした。
そして、ロリポップに登録しているメアドのフォルダを開くと・・・
「メール送信件数の上限を超過しております」
というメールが連日入っていたのです。
しかも1時間程度の間隔で常にその警告メールが届いているではありませんか!
そこでマルウェアに侵入されたことに気づきます。
勝手に大量配信されるメール
これだけ聞くと、便利な機能!と勘違いするかもしれませんが、全然違います。
意図しないところでメールを乗っ取られて勝手に配信されているので、これは困った・・・
まずはメールアドレスのパスワードの変更を行いました。
もちろん、そんなことでは収まる気配はありません。
そこで、まずはメールのSSL認証という設定を変更。
これまでSSL認証が無効の状態になっていたので、こちらを有効にしました。
やり方については、「ロリポップ メール SSL 有効」などで検索してください。
そしてその次に、ロリポップの管理画面にあるお問い合わせから状況を報告。
「メールを大量配信しているので制限かけましたってメール届いたんですが、おかしくないですか?困ります」
という様な内容を送りました。ちなみにお問い合わせ内容の種類は「セキュリティについて」を選択しています。
すると、ロリポップ側から数時間で以下のような返事が入りました。
様
大変お待たせいたしました。
カスタマーサービス○○ よりご案内いたします。ご利用のアカウント【○○○○.com】について、
サーバーに不審な記述を含んだファイルがないか調査しましたところ、
以下のファイルが検出されましたので、パーミッションを「000」に変更しました。■ファイル名
/wp-includes/Text/Diff/Renderer/fcfxpdeo.php
/wp-content/themes/welcart_basic-carina/wc_templates/wc_sku_select.php
/wp-content/plugins/tinymce-advanced/css/tslbfyzq.php
/wp-content/plugins/wp-multibyte-patch/ext/ouxpnmfh.php
/wp-content/uploads/slider2/favicon_cc5f2d.ico
/wp-content/uploads/2017/07/mymlzpck.php
/wp-signup.php
/wp-includes/class-wp-comment.php
/wp-includes/nav-menu-template.php
/wp-includes/Text/Diff/bugoarcz.php
/wp-includes/template.php
/wp-admin/js/widgets/ptaunkto.phpまた、お客様のアカウントでは「FTPアクセス制限」が
設定されていなかったため、弊社にて設定を行っております。お客様にて上記ファイルや不審な記述にお心当たりがない場合、
利用のパソコンがウイルスに感染してFTP接続情報が漏洩している、
または、WordPress等CMSツールの脆弱性を悪用され第三者の
不正なアクセスによりサイトが改ざんされている可能性がございます。改ざんを放置した場合、お客様のサイトが表示されなくなるだけでなく
サイト閲覧者のウイルス感染や、サイバー攻撃の踏み台にされ
犯罪を引き起こす等の可能性が非常に高いため、必ず下記の対応を行ってください。1.パソコンのウイルスチェック
2.FTP・WebDAVパスワードの変更
3.FTPアクセス制限の設定
4.CMSツールのパスワードの変更
5.CMSツールのバージョンアップ
6.WAFの有効化
7.ディレクトリのパーミッションを「705」に設定
8.不審な記述を含んだファイルのクリーンアップ———————————————————-
1.パソコンのウイルスチェック
———————————————————-
お客様のパソコンがウイルスに感染している場合は、
お客様のパソコンからFTPのパスワードなどが盗まれる可能性もございます。
セキュリティソフト等でパソコンがウイルスに感染していないかをチェックしてください。
感染している場合、最新のウイルス対策ソフトで感染したウイルスを駆除してください。———————————————————-
2.FTP・WebDAVパスワードの変更
———————————————————-
改ざんはお客様の「FTP・WebDAVパスワード」が特定されることにより
発生することもございます。ユーザー専用ページの〔アカウント情報〕で
「FTP・WebDAVパスワード」を推測されにくいものへ変更してください。▽ユーザー専用ページ
https://user.lolipop.jp/———————————————————-
3.FTPアクセス制限の設定
———————————————————-
お客様のFTPサーバーに複数IPから接続されており、
サイトを改ざんされているケースも多くみられます。
ユーザー専用ページの〔WEBツール〕>〔FTPアクセス制限〕で
お客様の環境からのみサーバーにアクセスできるよう制限してください。▽FTPアクセス制限の設定
https://lolipop.jp/manual/user/ftpaccess/———————————————————-
4.CMSツールのパスワードの変更
———————————————————-
改ざんはお客様のWordPressなどCMSツールの管理画面の
パスワードが特定されることにより発生することもございます。
管理画面のパスワードを推測されにくいものへ変更してください。———————————————————-
5.CMSツールのバージョンアップ
———————————————————-
WordPressなどのCMSツールや、そのプラグインなどに脆弱性がある場合、
悪意を持った攻撃者によってファイルが改ざんされ、スパムメールを大量に送信したり
悪意のあるページへ自動的に遷移させられてしまうケースがございます。本体・プラグイン・テーマなどを全て最新版へアップデートしていただき、
使用していないものや脆弱性が報告されたものは削除することを推奨します。———————————————————-
6.WAFの有効化
———————————————————-
WAF(ウェブアプリケーションファイアウォール)は、これまでの
ファイアウォールなどでは防御できなかった攻撃を検知しブロックする機能です。
WAFを有効化して不正アクセスへご対策ください。▽WAFの解除・設定 – マニュアル
https://lolipop.jp/manual/user/waf-set/———————————————————-
7.ディレクトリのパーミッションを「705」に設定
———————————————————-
ディレクトリのパーミッションの設定を「777」などに設定されている場合は、
誰でも書き込める設定となっているため、改ざんが行われる可能性がございます。
すべてのディレクトリのパーミッションは「705」と設定してください。———————————————————-
8.不審な記述を含んだファイルのクリーンアップ
———————————————————-
先述したファイルにお心当たりがない場合はサーバーから削除してください。
また、必要なファイルである場合は、不審な記述を削除していただくか、
正常な状態のバックアップをサーバーへアップロードして置き換えてください。※削除したファイルの復旧はできかねますので、予めご了承ください。
———————————————————-
また、サイトの改ざんにつきまして、
よろしければ以下のページも併せてご参照ください。▽サイト改ざんへの対策をお願いいたします
https://lolipop.jp/security/ご対応、何卒よろしくお願い申し上げます。
なんか、いろいろやってくれて有り難いのですが、要はメールが来なくなりゃいいのだけど・・・
と思っていると、あれ、、、、
メールボックスを見ると、数時間前まで「大量メールで制限かけたぜ」というメールが毎時届いていたのに、来なくなっている!!
おお、、、ロリポップ側の対応が良かったのか、メールのSSL設定を行ったのが良かったのか、治ったぜ・・・!とホッとしました。
Welcartを導入しているECサイトを見て、注文もテストで5回ほど繰り返し、全て問題なく、これで一件落着。
と思っていましたが。。。。
大量メール事件をクリアした翌日、サイトが見れなくなった
さすがに焦りました。
毎日売り上げを出している大事なECサイトが全く開きません。
それどころか、ショップ名で検索すると、検索エンジンにヒットはするんだけど、
「このサイトは第三者によってハッキングされている可能性があります。」
という文言がdescriptionの部分に明記されているではありませんか。
すぐさまロリポップのFTPに入り、中身を確認すると、変なファイルがめっちゃありました。
・入れてもいない.zipファイルがドメイン直下に3つほど。
・他にもドメイン直下には.phpファイルではない名前の長い変なファイルが3つほど。
変なフォルダもありましたが、上記の入れてもいない変な.zipファイルが勝手に解凍されているような印象を受けました。
とりあえず思い切って削除。
ドメイン直下の変なファイルとフォルダは全部消してみましたが、サイトはまだ見れません。
とりあえず、index.htmlという新規ファイルを作成し、「ただいまメンテナンス中です」の文言を追加しました。
index.htmlは index.phpよりも優先してくれるので、その時サイトを開いたらメンテナンス中ですが表示されているのですが、放置していても治るはずはありません。
それどころか、このままだと非常に危険だそうです。
何をすればいいのかわからず、いろいろググってみましたが、どれも参考になりません。
分かったことは
・サイトが改ざんされている
・データベースは影響ない
・パーミッションは手動で変更できるので、705にする
ということくらいで、打つ手がない・・・と考えながらその日は帰宅しいろいろ考えながら寝ました。
寝ながら、完璧にできる対応策を思いついたんです。
サーバーの中身が改ざんされているのならもとに戻せばいい
元に戻すと言っても、バックアップとっている人ってほとんどいないと思います。
バックアップとってても、それっていつの状態?って感じなので、なんだか不安なはず。
そして、私が思いついたのは、
同じサイトを作って中身をコピーする
という大技でした。
入っていたプラグインさえ覚えていれば、サーバーにインストールされたフォルダやファイルは同じものになるはずです。
(アップロードした画像などは新しく作るサイトには入りませんが)
そして、ロリポップの使用期間10日無料を活用することにしました。
あたらしくアカウントをロリポップで作って、10日間は無料で使えるはずなのでそこにまずはWordpressをインストールします。
やり方は、もともとショップサイトを持っていたので、簡単にできるはずです。
で、Wordpressをインストールしたら、改ざんされたサイトと全く同じ物の最新バージョンのテーマとプラグインをぶち込んでください。
で、プラグインは同じように有効化にしてくださいね。
よし、そこまで行ったら準備完成。たぶん、慣れた人なら10分程度でそこまでできるはずです。
(改ざんされたサイトにインストールしていたテーマとプラグインを完全に覚えていれば・・・)
プラグインは全部入ってなくてもいいかもしれません。いれていたかどうか忘れたプラグインがあれば、それも入れといてください。
そしたら、ロリポップでもともと契約していた(改ざんされたサイトの)FTPを開きましょう。
もう一つ、先ほど新規でアカウントを取得して新しく作ったサイトのFTPを開いてください。
(重要)ブラウザが二つあれば、別々にログインした状態でFTPを開けます。
それか、FFFTPなどのソフトをお持ちの方は、ブラウザで片方を開いて、もう片方をFFFTPで開いてください。
それでは、改ざんされたサイトのFTPと新しく作ったサイトのFTPを比べてみてください。
ドメイン直下に、改ざんされたサイトに余計なファイルやフォルダがあるのが確認できるはずです。
そいつら、思い切って消してください。(自己責任ですが、もともとドメイン直下に何も保存してなければ問題ないはず)
ちなみに、そいつら、如何にも怪しい名前になってますからわかりやすいと思います。
それが完成したら、ロリポップ側から届いたメールを確認してください。
私の場合だとこの部分に注目。
ご利用のアカウント【○○○○.com】について、
サーバーに不審な記述を含んだファイルがないか調査しましたところ、
以下のファイルが検出されましたので、パーミッションを「000」に変更しました。■ファイル名
/wp-includes/Text/Diff/Renderer/fcfxpdeo.php
/wp-content/themes/welcart_basic-carina/wc_templates/wc_sku_select.php
/wp-content/plugins/tinymce-advanced/css/tslbfyzq.php
/wp-content/plugins/wp-multibyte-patch/ext/ouxpnmfh.php
/wp-content/uploads/slider2/favicon_cc5f2d.ico
/wp-content/uploads/2017/07/mymlzpck.php
/wp-signup.php
/wp-includes/class-wp-comment.php
/wp-includes/nav-menu-template.php
/wp-includes/Text/Diff/bugoarcz.php
/wp-includes/template.php
/wp-admin/js/widgets/ptaunkto.php
このファイルの部分は改ざんされているはずです。それか、不要なもので、勝手に入れられているファイルやフォルダなんです。
一つ一つ、新しく作ったサイトのFTPと比べながら消していってください。
いくつかは、改ざんされたサイトのFTPにも実在するファイルです。
それらに関しては、新しく作ったサイトのFTPから同じファイルなので中身をコピーして移し替えればOKです。
あと、パーミッションはロリポップ側が「000」に変更していると思うので、644か705にしてくださいね。
わたしは644にしましたが、705の方が安全かと。
以上、ここまでできたら、「サイトはメンテナンス中です」で用意したindex.htmlを削除すれば・・・
サイトが見れてまーす!!
良かった良かった。
改ざんされたサイトを修正できたら
復活したら要らないテーマやプラグインの削除と、新しいバージョンが出ているならプラグインのアップデートは怠らないようにしてください。
あと、ロリポップの管理パスワードだけでなく、メールのパスワード、FTPのパスワード、Wordpressのログインパスワードは全て変更してください。
これでしばらく安全だと思います。
参考になったという方がいらっしゃったら、嬉しいです!!