こんにちは...
この前(2020年2月初め)に不正ファイル(ウイルス、マルウェアなどの可能性)が発見された男です。
ちなみに言っておくと、このサイトでは無いです。
ご安心を(全く関係ないですが 笑)
と、前置きはこれぐらいにして...
普段はXserverでWordPressを使ってサイト運営をしているのですが...
しっかりとやられました 笑
そして、Xserver側からWebサイトのアクセス制限をくらいました 笑
その時、アクセス制限解除であったり、対処した内容(バックアップや反映)をまとめておこうと思いました。
備忘録とはありますが、もう二度とこの記事を自分で読まないようにしたいですね 笑
ちなみに、二回目からはアクセス制限解除に時間が掛かるらしいです。
気をつけよう...
軽く流れも含めて記録していきましょう!
経緯と状況
まず、簡単に経緯と状況を話していきましょう。
経緯としては、2020年2月初め頃にXserver側からメールが届きました。
メールの内容をざっくり言いますと...
- 改ざんされた不正ファイル名と設置場所
- Webアクセスを制限したという報告
- アクセス制限解除の方法
この三点です。
そして、アクセス制限解除の方法が三工程ほどあります。
それが...
- PCのセキュリティチェック
- データ削除(ドメイン、ファイル)
- メールで連絡(1、2が終わったら...)
私は正直、二番を見て思いました...
え?データ消えるの?まさか?
実を言うと、改ざんされた不正ファイルがあるのは、このサイトではありません。
私のXsever上には、ほとんど稼働していないサイトが後3つほどあり...
そのうちの一つが攻撃にあったわけです。
まさか、一記事も挙げていない、あの筋トレブログが攻撃されるとは...笑
おそらくですが、WordPress側根本の脆弱性と、そもそも普段から手を付けていなかったので、WordPressの更新を全くしていなかったことが原因でしょう。
我ながら、筋トレもブログも更新も忘れてた 笑
ちなみに言うと、ファイルを削除しても記事はなくなりません。
Xserver上のデータベースを削除しない限り...
実際にファイルに書かれている内容は、サイトの外観とか、ホームページとか、ルートとかだと思います。(ルートは書かれているか微妙)
なので、書いた内容は消えません。
対処した内容・方法
対処した内容・方法とありますが、大まかな流れとしては『バックアップ→Webサイトのアクセス制限解除→復旧』となります。
なお、WindowsではなくMacです。
バックアップ
まず、バックアップについてですが、今回はファイルに関するバックアップのみでした。
というのも、xserverから来たメール内に...
「※この作業による、データベースの初期化・削除はございません。」
という一文があったためです。
なので、単純なサーバ以降とは別で、データベースのバックアップは必要ありませんでした。
(データベースのバックアップをしたい方はこのサイトが良いかも)
ということで、さっそくファイルのバックアップに移った!わけですが、正直初めての経験なので、謎 笑
少しバックアップについて調べてみると、どうやらxserverには『手動バックアップ』と『自動バックアップ』があるらしいのですが...
せっかく(良い勉強の機会でもある)なので、手動バックアップを選択!
(ちなみに自動バックアップはお金が掛かるっぽいが、過去何日か前までのデータを取得出来るらしい)
手動バックアップは、その時点のデータしか得られないのですが、やり方は非常に簡単です。
(その時点しか得られないとは、すなわち、改ざんされたファイルも含まれているということ)
まずは、xserverにログイン!!
そして、サーバーの『サーバー管理』と『ファイル管理』の二つのうち、サーバー管理をクリックし、バックアップを選択!
すると、こんな画面が出てくるはず。

そして、この中で自分のサイトに必要な物をダウンロード!!(どれか必要か分からない場合は、全部ダウンロードしてOK!←ちなみに、私はこれ 笑)
macの場合は、各「対象ディレクトリ.tar.gz」がダウンロード出来るはずです。
ということで、これにて
ーーーバックアップ完ーーーー
です。
(なお、改ざんされたファイルは消しておきましょう。メール内に記載されているので)
Webサイトのアクセス制限解除
お次はWebサイトのアクセス制限解除です。
xserverからのメール内には、以下のような手順と書かれていました。
- PCのセキュリティチェック
- データ削除(ドメイン、ファイル)
- メールで連絡(1、2が終わったら...)
ということで、さっそくこの手順通りにやっていきましょう!
まず、1つ目は...
まぁ、OSであったりをアップデートしましょう 笑
そして、2つ目!
ここが一番怖い 笑
しかし!!
私たちは、既にバックアップを取っている!!
なので、安心して消しちゃいましょう。
まずは、ファイルの削除からしました。
手順としては、サーバーの『サーバー管理』と『ファイル管理』の二つのうち、ファイル管理をクリックし、以下のような画面が開く。

そして、各チェックボックスを選択肢、右側の『ファイルの削除』から、消しましょう!
すると、ここのモザイク部分が綺麗サッパリになります。
これにて、ファイルの削除は完了...
ドメインの削除に移ります。
ドメインの削除も、簡単です。(必要なのは度胸だけ)
そして、サーバーの『サーバー管理』と『ファイル管理』の二つのうち、サーバー管理をクリックし、ドメイン設定を選択!
すると、以下のような画面が開きます。

そして、ドメイン横の『削除』をクリックしていきます。(度胸で)
ここで、一番上のドメイン(初期ドメイン)は削除ボタンが存在しません。
こちらに関しては、『初期化』でOKです。
実際には、初期化をクリックし、『ウェブ領域・設定の初期化』を行います。
これにて、ドメインの削除完了です。
という感じで、結構簡単に作業を終えましたら、3番のメールで連絡です!(返信で大丈夫でした)
私は平日の昼間に送ったので、一時間ほどでアクセス制限解除の通知が来ました。
とりあえず一安心。
ただ、この段階ではドメインもファイルもないので、サイトを開いても存在しません。
お次の復旧で、サイトを復活させます!
復旧
後は、復旧だけ...
そう考えていた時期も私にはありました...
けどご安心を!
私の経験も含めれば、こちらも簡単です!
まずは、この時点の状況を確認しましょう。
- データバックアップ済み
- webサイトのアクセス解除済み
ここまで出来ていましたら、復旧作業に移ります。
復旧作業に関しては、xserverでサイト運営をしている方なら余裕でしょう 笑
主な流れは以下です。
- ドメインの追加
- バックアップファイルのアップロード
- index.htmlの対処(私の場合は必要だった)
3つ目に何かありますが、これに関しては全員が必須かが現状分かりません。
ただ、私の場合は必要だったので、同じような状況になっていた方は参考にして下さい。
ドメインの追加
これに関しては、サイト運営をしたことがある方ならば一度は通った道。
なので、ここでは簡単に手順だけ言いますと、先程の...

この画面(このときは、初期ドメインだけだと思います)上部の、ドメイン設定追加を選択。
そして、自分のサイトのドメインを入力して追加するだけ...(記憶の片隅にありましたか?)
これだけです。
なお、以降の処理はドメインの反映が完了してから行いましょう(反映前に行うと、上手くいかないことがありました)
バックアップファイルのアップロード
次にバックアップファイルのアップロードです。
サーバのファイル管理から一個ずつファイルのアップロードも可能ですが、その量はあまりに膨大...
なので、ファイル転送ソフトでディレクトリごとアップロードするのが吉でしょう。
ファイル転送ソフトにも色々ありますが...
macの私は、『Cyberduck』を使いました。(windows用もあるので、どっちでもいけるはず)
理由は...特にありません 笑
App storeだと、2900円ぐらいするので、こちらを参考にして、無料で取得すると良いでしょう。
(使いやすいと思ったら開発元に寄付する形で。)
ということで、取得できましたら、さっそくCyberduck起動!!
ウィンドウ左上の新規接続をクリックし、FTPを選択しましょう。
すると、こんな感じになるはず。

ここで入力する内容は、『サーバ』『ユーザ名』『パスワード』になります。
ですが、「何入力したら分からない!」という私のような方も多いはず!
そこで、入力する内容なのですが...
xserverのサーバパネルから確認が出来ます。
まずは、サーバーの『サーバー管理』と『ファイル管理』の二つのうち、サーバー管理をクリックし、サブFTPアカウント設定を選択!
そして、ドメインを選択後、FTPソフト設定をクリックすると、こんな画面が出てくるはず。

こちらを...
『サーバ』:FTPサーバ(ホスト)名
『ユーザ名』:ユーザ名(アカウント名)
『パスワード』:FTPパスワード(サーバーパスワードと同じ値)
で、Cyberduckの方に入力&接続!(ちなみに、私はFTPパスワードが分からず再発行した)
こんな画面になっていれば、サーバへのアクセス成功!

(おそらくこの時点では、ドメインと同じ名前のディレクトリと後何個かしか入っていないはず。)
接続に成功したので、このディレクトリ内にバックアップしたディレクトリを追加していきましょう!(一応重複しているものも上書きして)
macの場合はFinderから、windowsの場合は...なんだっけ?ファイルのやつです 笑
それから、ドラッグ&ドロップでアップロード出来ます(めっちゃ便利)
このとき、バックアップしたディレクトリは解凍済みのもの&改ざんされたファイルは除去したものです。
転送には若干の時間がかかりますが、気長に待ちましょう。
転送が全て管理したら、サーバーの『ファイル管理』を確認すると、ディレクトリが増えています。
これにて、アップロード完了!
index.htmlの対処(私の場合は必要だった)
この時点で、自身のサイトが復活している人もいる...かも?
私の場合は、自分のサイト(ホームページ)にアクセスするとこんな画面となっていました。

誰だ...こいつ...
しかし、ホームページ以外のページ(https://ドメイン/〜/)だと、うまくアクセス出来る...
なぜ?
そこで、調べてみると、どうやらアップロードそたディレクトリのあるファイルが悪さをしているらしい。
それが...
『index.html』
貴様だ!!
存在する場所はファイル管理で見ると『ドメイン名/public_html/index.html』
ついでにこのファイルをウェブプラウザで確認すると、先程同じものが表示される。
お前だったのか...ゴン。(関係ない。ごん狐参照)
改めて調べてみると、xserverでは『index.php』より『index.html』を優先して表示するらしい。(理由はわからないが、ルートファイルで優先順位を設定している?)
そして、『index.php』こそ、みなさんが汗水垂らして作ったホームページそのもの!
なので、私が行った対象方法は...
『index.html』というファイル名を書き換えるだけ。(ファイル管理のファイル名の変更から可能)
適当に、冒頭に『_』でも付けときましょう。
ちなみに、削除でもOK(のはず)
そして、変更をすると...

サイト復活!!(ラノベの評論サイトです)
めでたしめでたし。
(ちなみに、バックアップ前もindex.htmlは入っていたが、なんでうまく動いていたのだろうか...迷宮入り)
まとめ(攻撃される前にすること)
ということで、みなさん復旧は完了しましたか?
私も初めてこのような経験をしましたが、改めてちゃんと管理しなきゃいけないなと思いました。
今回のことが発生した理由を簡単に言うのであれば...
セキュリティ対策の怠慢でしょう。
一年近く使っていなかったサイトであったこともあり、wordpressの設定と更新が激甘でした。
そして、その周辺も...
ちゃんと『定期的な更新』or『使わないなら削除』ぐらいの覚悟で良いかもしれません。
私の筋トレサイトはもう...ドメインを買っただけです 笑
そうなると制御設定が...になるわけですが 笑
ということで、今回は備忘録...
そして、私が二度と同じ過ちを繰り返さないための記録を行いました。
「one for others others for one」
「一つのサイトは他のサイトのために、他のサイトは一つのサイトのために」というところでしょうか。(othersのsは合っているか謎)
良いサイト運営のために、頑張っていきましょう!!
それでは、もう二度とこのサイトに訪れないことを祈って。