私はレンタルサーバーはロリポップとカラフルボックスを契約して、ロリポップではwordpressで4つのWebサイトを公開していました。
2021年3月8日、ロリポップで公開しているWebサイトを更新するため、wordpressの管理画面にアクセスしたら、403 Forbiddenと表示され、管理画面にログイン出来ませんでした。
サイト自体の見た目は通常と変わらず、怪しいサイトにリダイレクトされることもなく一見何も被害がないように見えます。
これがハッキング被害(サーバー乗っ取り被害)のはじまりでした。
どれか一つのwordpressサイトが被害を受けたのではなく、ロリポップレンタルサーバーで公開している全てのサイトが壊滅
その復旧にかかった時間は3週間!
私が試みたハッキング被害からの復旧の様子と、ロリポップレンタルサーバーで出来る作業をお伝えします。
サーバーにある全てのファイルとデータベースの「不具合発生前の」バックアップデータがある前提で最低限必要な知識は次の通り
- FTPソフトでサーバーに接続し、ファイル検索、ファイル削除、ファイルダウンロードとアプロードができる。
- サーバーDBを削除して同じ名前のDBを作成、中身をインポートできる。
- .htaccessファイルの記述が確認できる。
- tar形式の圧縮ファイルを解凍できる。
サイト全体のバックアップデータがない場合、この記事は役に立ちません。
ロリポップでの復旧までの流れ
ロリポップレンタルサーバーでハッキング被害を受けた場合の対応の流れは次の通り。
- .htaccessファイルの中身が改ざんされていることを確認
- サーバー全てのファイルとデータベースのバックアップを準備
- ロリポップサポートへ不正な通信の遮断を依頼
- 不正な通信が遮断されたのち、サーバーの全ファイルとデータベースを削除後バックアップデータを復元
2.のバックアップの有無が重要で、ロリポップのバックアップサービスを申し込んでいる人は、絶対に異常がなかったと言い切れる期間のデータをすぐにダウンロードしてください。
申し込んでいなかった人は、すぐに問い合わせフォームから「異常が判明した日よりも一番過去」のバックアップデータの提供を申し込んでください。(1万円かかります)。
3.の不正な通信の遮断にはロリポップの場合2週間以上かかるので、一刻も早く問い合わせフォームから依頼してください(無料です)。
つまりロリポップレンタルサーバーでハッキングされ不正な通信によってサーバーを乗っ取られると、復旧まで最短で2週間もかかることを覚悟してください。
ここからは、それぞれの流れを詳しくご説明していきます。
.htaccessファイルの中身が改ざんされている
更新しようとしたサイト以外は大丈夫か?確認したところ、ロリポップで公開している4つのサイト全ての管理画面が403エラーでアクセス不能でした。
全てのサイトでwordpressの管理画面に403エラーでアクセス出来ない、となると「原因はロリポップの不具合で、そのうち復旧するだろ」と様子見に。
ロリポップはWAFを無効にしてセキュリティ的に危険な状態にしないと403 エラーでwordpressの設定変更が出来ないため、403エラーはおなじみの不具合だと感じたのです。
しかし、数時間経過しても一向に403 Forbiddenは消えず、ロリポップのユーザーページでも不具合報告はされていませんでした。
「これは何かがおかしい」と思い始め、原因の調査を開始
403エラーは、アクセスが禁止されていることを表しています。
アクセス制限は通常だと.htaccessファイルで行うため、ロリポップに設置してる.htaccessファイルを確認すると、以下の全く身に覚えのない内容に書き変わっていました。
<FilesMatch “.(py|exe|php)$”>
Order allow,deny
Deny from all
</FilesMatch>
<FilesMatch “^(about.php|radio.php|index.php|content.php|lock360.php|admin.php|wp-login.php)$”>
Order allow,deny
Allow from all
</FilesMatch>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
「なんじゃこりゃ!?…」
私は専門知識がなく、書かれている意味は不明でしたが、今まで自分で編集してきた.htaccessファイルとはまるで中身が違ってます。
さらに確認するとwordpressのフォルダ全てに同じ.htaccessファイルが作られています。
403エラーの原因はこの.htaccessファイルだろうと思った私は、ロリポップのサポートに.htaccessファイルの記述を書いて、「このような記述に書き変わっていること」そして「全てのフォルダに同じ.htaccessファイルが作られていること」の原因を対策をフォームから問い合わせました。
が、24時間経過してもサポートから返事はなく、自分でなんとかするしかないと思い、radio.phpとかlock360.phpという特徴的な記述をWeb検索して愕然としました。
radio.phpとかlock360.phpという記述が.htaccessファイルに勝手に書き込まれていると、サーバがまるごとPHPマルウェアに感染したことを意味します。
さらにweb検索すると、最近だけでもかなり多くの被害報告がある。
被害を受けた人も.htaccessファイルが全く同様に改ざんされたと述べている。
「やられた!」
「なぜ?」
「どうすれば修復できるの?」
「4つのサイトの広告収益全て失ったら生きる望みがなくなる!」
頭が真っ白になりました。
まさか自分のようなアクセス数の少ないWebサイトがハッキングされ、マルウェアを仕込まれるなんて思ってもいませんでした。
いや、もっと愕然としたのはロリポップのサポートからの返事です。
問い合わせてから2日後にようやく返ってきたメールには、
「お客様はwordpressでSiteGuard WP Pluginを使っておられます。SiteGuard WP Pluginは.htaccessファイルを編集したり作ったりすることがあるので、それが原因だと思われます。」
って、はぁ?なにいってんのコイツ、サポートのくせして記述も理解せずにSiteGuard WP Pluginのせいって、ポンコツすぎるだろ!
私はロリポップのポンコツサポートの返事を見て、自分のおかれた状況がようやく分かりました。
ロリポップのサポートレベルでは、ハッキングされてマルウェアを仕込まれてしまったことを解決してくれない。
ネットには同じ被害を受けて自身で復旧した記事がいくつもあるので、それを参考にして自分で復旧するしかないと覚悟しました。
つらく苦しい日々のはじまりでした。
ファイル修復とマルウェア除去を試みる(無駄)
自分で復旧するしかないと覚悟を決め、まずは、他にも改ざんされているファイルがないか?勝手に追加されたファイルがないか、FTPソフトから調べました。
無知な私でも分かる範囲だけでもwordpressのindex.phpも改ざんされていました。
そしてFTPソフトで調べると、wordpressには通常は存在しないとされる、about.php、radio.php、lock360.php、content.php、wp-info.phpというファイルが見つかりました。
とりあえずの方法として、これらファイルを見つけ出して削除、そして4つのwordpressの全てのフォルダに蔓延る.htaccessファイルを全て削除してみました。
ところが!!!!
一旦削除した.htaccessがすぐに作られているではありませんか!
何度削除しても再び同じ.htaccessファイルが作られます。
「.htaccessファイルを作るマルウェアが混ざりこんでいるせいだ」(←間違った推測だった)
そう考えたものの、about.php、radio.php、lock360.phpは削除したし、私には他に何が原因で.htaccessが勝手に作られるのか分かりませんでした。
原因が分からないならサーバーのファイル丸ごと完全バックアップと総入れ替えするしかない。
我ながら明解な答えです。
全てのファイルとデータベースのバックアップを準備
私はロリポップのバックアップサービス(月額300円)を利用しておらず、サーバーファイルの完全バックアップがありません。
でも!
「1万円でDBとサーバーの全ファイルのバックアップを提供するから詳しくは問い合わせて」というロリポップの案内を見つけ、仕事の合間に抜け出してサポートに電話で問い合わせました。
電話に出た担当者に
「3月7日以前で一番過去のバックアップを提供してほしい」
と伝えたところ…
「何日前のバックアップファイルがあるか、の問い合わせはフォームからお願いします」。
って、おい!俺はハイスピードプラン契約者で、ハイスピードプランは電話サポートが受けられることが特典だろ!
電話サポートなんて意味ないやん。
渋々フォームから問い合せましたが、また48時間も返事がないだろうし、その間にマルウェアに感染する前のバックアップがなくなるかもしれないと焦りました。
結果、またきっちり2日待った後に、「マルウェア感染判明した前日の3月7日のバックアップなら提供可能、ただしファイルの確認はしないのでマルウェアに感染していないことを保証出来ない」という返事がきました。
1万円も払ってもマルウェアに汚染されたバックアップかもしれないリスクはありますが、他に私には方法がないので、ダメもとでバックアップファイルを購入したのです。
バックアップとの総入れ替えが出来ない
バックアップファイルが手に入り、.htaccessを見ると、私が以前に編集していた内容のままで、各フォルダをざっと見ても不審なファイルはなく、サーバーが丸ごとハッキングされる前のバックアップと思われ一安心
ここからの作業の流れは次の通り。
- ロリポップのサーバーのファイルを全て削除する。
- ロリポップのサーバーのデータベースを全て削除する。
- バックアップファイルを全てアップロードする。
- 削除したデータベースと同じ名前、パスワードのデータベースを作りバックアップからインポートする。
だけなのですが、サーバーのファイルを全て削除するということは、公開サイト全てが消えるということで、「もし復元できなかったらどうしよう」という一抹の不安が頭をよぎります。
でもやらなければ復旧もできない。
さっそくサーバーから全てのファイルを削除!
さらばマルウェア!
全ファイルが消えて、あーすっきり、と思った次の瞬間!
ぎゃーーー!!
またあの忌まわしき.htaccessが勝手に作られている!!
ホラーすぎて恐怖しかありません。
でも全ファイルをサーバーから削除してやっと分かりました。
仕込まれたマルウェアのせいで.htaccessが勝手に作られるのではなく、私以外の誰かが、ずーっとサーバーにアクセスしてて、改ざんされた.htaccessファイルを送り続けていたのです。
このままバックアップデータをサーバーにアップロードしても再びマルウエアに汚染されてしまいます。
私以外の誰かが、ずーっとサーバーにアクセスしているのを遮断しないかぎり復旧できないのです。
不安は的中し、この時点で公開していた4サイト全てが消えており、このままではgoogle検索結果からも排除されるという危険な状態に。
ロリポップは不正な通信をユーザーが遮断できない
ネット上から自分のサイトが消失している状況を一日も早く解消すべく対策を探しました。
ネットを調べると、他のレンタルサーバーで同様にマルウェアに感染した人が、SSHで不正な通信を探し出して遮断するコマンドを紹介されていました。
ロリポップでもSSHは使えるので、さっそく立ち上げて紹介されてるコマンドをコピペしたんだけど何も反応しません。
あれ?と思ってロリポップのSSHで使えるコマンドを調べたところ、紹介されてた不正な通信を探し出すコマンドも不正な通信を遮断するコマンドも使えないことが判明
なんでやねん!
仕方なく再びサポートへ「勝手に.htaccessファイルが作られる」「私以外の誰かが不正に通信していると思われる」ことをフォームで問い合わせました。
どうせまた2日かかるんでしょ。
そう思って2日後にきたメールには、またまた驚くことが書かれていました。
「不正な通信を確認しましたが、現在お客様と同様の問い合わせが殺到しており、対応には2週間程度かかる見込みです」。
って、はあ??に、にしゅうかん!?
これまで20年近くロリポップレンタルサーバーを使ってきたけど、ロリポップはもうダメだ。
この時点で4サイトが2週間もアクセスを失うことが確定しました。
それでもしかたなく、何もできないまま2週間待って「不正な通信を遮断しました」。という返事がきました。
復旧まで実に3週間かかった
ロリポップレンタルサーバーのサポートから不正通信遮断済みの返事がきたので、.htaccessファイルを削除
不正な通信が遮断されたので、勝手に.htaccessファイルが作られることはなくなりました。
そして、1万円で買ったサーバー全体のバックアップファイルをアップロード、さらには汚染されている恐れのあるDBを削除してバックアップのDBをインポートすれば完了のはずが、アップロードでまたまたつまづきました。
アップロードに使うFTPソフトはnextFTPやFFFtpなど有名どころを使ったのですが、私の環境では頻繁に接続が切れてアップロード出来ませんでした。
いろいろ試したところようやくFileZillaというFTPソフトでスムーズにアップローできました。
こうしてようやく3週間ぶりに4つのWebサイトが復旧しました。
長く苦しい3週間でした。しばらくはアクセスが激減しますが、何年もかかって作り上げてきたWebサイトを失わずに済んで助かりました。
でも、SSHでユーザーが不正な通信を遮断できるレンタルサーバーなら数日(最短1日)で復旧できます。
私と同じくロリポップレンタルサーバーを使っている人は終わっていますが、ほかのレンタルサーバーを使っているなら「ユーザーが不正な通信を遮断できるか?」を確認しておきましょう。
最近のwebサイトのハッキングは、不正な通信でサーバーを乗っ取る手口が多いので、不正な通信をユーザーで調べて、不正な通信が見つかればユーザーで遮断できることが早期復旧のために求められます。
また、レンタルサーバー契約すると自動的にバックアップサービスもついてくるレンタルサーバー会社を選ぶことも早期復旧には重要です。
ロリポップは別途月額300円でバックアップサービスが利用できます。
でも、初めてwebサイトを公開するようなレベルの人は、契約当初からバックアップサービスを申し込むことは少なく、以降、ハッキング被害を受けるまで申し込むことはないと思います。
ほかのレンタルサーバー会社ではレンタルサーバーの月額利用料のなかにバックアップサービスも含まれていて、ユーザーが特に意識しなくても定期的にバックアップ、保存、ユーザーが自由に復元、できるようになっている場合もあります。
ハッキング被害を100%防ぐことは誰にも出来ません。
重要なことはハッキング被害を受けたあと、どれだけ早く復旧できるかです。
ハッキング被害を受けることを当然とし、自分が契約しているレンタルサーバーのバックアップサービスと、ユーザーが不正な通信を遮断できるか、を見直しておきましょう。
自分では無理!お手上げ!なら専門家に依頼する
ここまでの流れを読んで「自分では無理!お手上げ!」だったり、マルウエアに汚染されていないバックアップデータがない場合、専門家に復旧を依頼するか、サイトを捨てるか、の2択です。
専門家に復旧を依頼するにも依頼方法が分からない人は、ココナラで専門家を探すことが出来ます。
ココナラで「サーバー復旧」などで検索すると、復旧作業の相談に乗ってくれそうな人を見つけることが出来ます。
google検索結果と収益への影響
冒頭に述べたとおり、サイト自体は一見問題なく公開されていました。
ウイルス検出、ブラックリスト登録、迷惑サイト登録もされませんでした。
しかし、ハッキングが判明して数日後Googleのサーチコンソールから「パンくずリストの不具合」「読めないフォントサイズで記述がある」という指摘が届きました。
これは検索結果の順位に影響し収益の低下を招きます。
そして私は2週間以上サイトが消失していたので、その間の収益はO円
復旧後もGoogleのサーチコンソールで404(ページが存在しない)判定されたページを再調査してもらうまではアクセスが激減
復旧してから1か月くらいでようやく以前の状態に戻りました。
私の場合はサーバーのバックアップの日付が「ハッキングされる前日」という、紙一重のタイミングで生き残ることができました。
このバックアップがハッキングを受けた日以降の日付なら、今私はこうして記事を書くこともなく、もちろんこのサイトも存在していませんでした。
何も準備も対策もしていないままにハッキングされると、google検索結果と収益への影響は大きいです。
それどころか一発退場に追い込まれる恐れも十分にあります。
そうならないために、SSHでユーザーが不正な通信を遮断できて、バックアップサービスが標準でついてくるレンタルサーバーを使うことを強く強くおすすめいたします。↓↓