はじめて不正アクセスをされていろいろやられました。被害は少なかったですが復旧に少々時間を使いました。
サーバーの運営会社からの連絡で気付く
このブログを含めて、僕がWebサーバー上であれこれやっているのはネットオウルのスターサーバーというサービスを使ってやっています。
ネットオウルからメールで連絡が入りました。内容を要約すると、
- サーバーの負荷が異常に高い状態だった
- 調査したら不正なプロセスが多数稼働していた
- 国外からの大量のアクセスがあったり、不正なファイルが仕掛けられていた(バックドアの危険性も)
- ソフトウェアの脆弱性をついた攻撃によりログインパスワードを窃取された可能性大
- 不正なファイルを使用不可の状態にしたので駆除の対応が必要
といった内容でした。
心当たりがあったのがWordPress。当ブログのWordPressとは別に、試験用で新規にインストールをしたところでした。
試験用ということもあり動作がわかればいいということでセキュリティ系のプラグインは入れないままでした。そこにブルートフォース攻撃を受けたのではないかと推測します。
ubhというプラグインがインストールされていた

攻撃を受けたと思われるWordPressのプラグインディレクトリを見てみると、「ubh」というプラグインが勝手にインストールされていました。
調べてみると不正アクセスで入れられてしまうプラグインとして有名らしく、インストールされると些サイトが403エラーになるそうな。

サイトにはアクセスできましたが、デザインがだいぶ変になりました。こんな緑じゃなかったんですけどね。

ログインページにいくとなぜか言語が英語に変わってました。
ログインして中を確かめようとも思いましたが、不正なファイルがうようよいる状態ですので、あまりパスワードを入力したくないのでやめました。
moon.phpとsmall.php
ネットオウルから不正なファイルがあるディレクトリのリストをもらったので見てみることに。

moon.phpとsmall.phpというファイルがあります。しかもこのディレクトリだけではなくて、サブドメインの直下や主なディレクトリの下にこの2つが入れられていました。
バックドアを生成するプログラムのようです。ダウンロードして中身を見てみようかと思いましたが、使用を停止されていてダウンロードもできませんでした。パーミッションを変えればいけるかと思いますが、再活性化すると怖いのでやめておきました。
下記リンクにその詳細が書かれていますね。
取った対応
ネットオウルからの指示の元、取った対応は下記の通り。
- 不正ファイルの削除
- パスワード変更
- ソフトウェアのクリーンインストール
- スターサーバーのPHP環境設定で下記2つをオフにする
- allow_url_fopen
- allow_url_include
まずはmoon.phpやsmall.phpを含む、リストに載っていた不正ファイルを削除します。もし使用していないソフトやサブドメインがあれば、丸ごと削除していまうのも手です。
一つ注意点があり、スターサーバーの初期設定のFTPアカウントはpublic_htmlがルートディレクトリとなっており、この不正ファイルはそれよりも上層のディレクトリにもインストールされていました。FTPアカウントを追加して、最上層までアクセスできるようにしましょう。
その後はパスワード変更です。DBのパスワードも変える方が吉ですね。すべてのファイルを盗み見られたと仮定する方がいいです。
その後、CMSなどのソフトウェアがあればクリーンインストールを行います。ソフトウェアに必要なファイルについても改ざんされている可能性もありますしね。バックアップを取って、新しくインストールした後にアップロードしたファイルなどを戻しておきます。
アップロードに時間がかかりますし、個人的には仮のディレクトリを作成し、その中でインストールができたことを確認してからディレクトリ名を変更するという方法が簡単かつ安全かもしれません。
あとはネットオウルからの助言で、PHPの環境設定で「allow_url_fopen」と「allow_url_include」を無効にしておくとセキュリティ的に安全とのこと。
WordPressのセキュリティ設定
新規にインストールしてまだ人目についていないWordPressサイトなんて誰も狙わないだろうと油断するとやられてしまいます。
すぐにセキュリティ関係のプラグインを導入するべきでした。下記記事にまとめていますが、これらの対応を取っておけば無事に済んだかもしれません。
あとお試しでいろいろいじるなら仮想環境上でやるのがベターなのかもしれません。
あと今回のネットオウルの対応はありがたかったです。何か異常はないか監視してくれているんですね。
質問をしたら丁寧にお答えいただけましたし、サポートはメールだけということで不安は多少なりともあったのですが、今回をキッカケにしてかなり頼れるなと思いました。サンキュー、ネットオウル。

コメント