淡路島に移住して田舎暮らし ✕ ICTでゆるゆるスローライフ

元システム管理者の備忘録

*

サーバが落ちた原因はWordPressに対する不正ログイン。

      2014/11/07


Photo:wordpress speed By:Sean MacEntee

 

ブログのアクセス数が急に減った。その原因は・・・サーバーが落ちてたという話。の続きのお話。

原因がなんとなーく発覚しました。

おそらく「WordPressのログイン画面に向けたブルートフォースアタック」です。

単なるメモリエラーとかだと思ってたのに、まさかの攻撃によるダウン。
幸い、乗っ取られるところまではいかなかったようです。

起こった症状、サーバダウン時にたてた仮説と、ログ確認や対処法などを残しておきます。
同じような症状が起こった人の道標になりますようにっと。

Photo:wordpress speed By Sean MacEntee

サーバーダウン時の症状確認から、検証、再起動まで

サーバが止まってるぞひゃっほいと、困ったときの再起動という魔法を使う前に原因切り分けのために少し検証をしてみます。

Pingで応答確認
とりあえず、ターミナルを立ち上げPingを飛ばしてみる。
返ってきているのでネットワークの疎通はOK。

サイトにアクセス(ブラウザから)
表示はデータベース接続確率エラー。
このエラーは主にwp-config.phpの記述がおかしい時にでるようですが、今まで普通に動いていたので今回はmysqlが動いていないだろうと。

ただ、何かしら表示されるということはapacheは生きている(はず)

SSHで接続
なんと、弾かれるという結果に。
SSHが繋がらなかったらどうにも動けん・・・・

と、いうことでブラウザから借りているサーバのコントロールパネルにログインしてそこからサーバを再起動することに。

再起動後は表示をはじめ、すべての通信が回復しました。

仮説

データベース接続確率エラーはmysqlが何かしらの原因で仕事放棄したため、apacheとのバディを解散したものだと仮説を立てました、

なので、調べる焦点はmysqlとapacheをメインに進めることに。

ログ確認

apacheとmysqlのログ確認やー!と意気込んでは見たものの、mysqlのログを設定していなかったことに気付くダメっぷり。

なのでapacheのログをメインに確認しました。
使用しているサーバはCentOS。
ログの場所はデフォルトのまま。

とりあえず
/var/log/httpd/access_log
/var/log/httpd/error_log
の2種類を確認します。

サーバが落ちた日時の1日前くらいからログを確認していきます。
lessなり、viなり、ダウンロードしてテキストエディタで開くなりお好きな方法でどうぞ。

wp-login.phpに不正アクセス

ログを確認していると、サーバがダウンした日にwp-login.phpに対してかなりのアクセスがあるのを確認しました。

ジャブの如く数回のアクセスがあったあと、ご丁寧に別のIPアドレスからまとめてアクセスしてくれるというスタイル。
しばらく時間をおいてまた攻撃・・・アウトボクサータイプか・・・!

で、ログを眺めていると見慣れない記述を発見しました。

[% tools.ua.random() %]

怪しいニオイ、ぷんぷん。

とりあえずググってみるとこのUAからログイン画面へのアクセスもかなりあるとのこと。

ツールとかボットネットみたいなもんですかね?

とりあえず、迷惑な話です。

サーバが落ちた原因

さて、肝心の原因ですが「データベース接続確立エラー」を調べていた際に気になることを見つけました。

どうも、アクセスが集中した時にでることがある、と。

ということは

アタックによる大量アクセス  からの  WordPressがテンパッてフリーズ

って考えるのがしっくりくるかなーというところに落ち着きました。

サーバが落ちて以降、アクセスログを見るとアタックは止まっているようです。

ブルートフォースアタックは乗っ取りが成功するか、サーバが落ちるまで続くとは聞いていたもののまさかねー。

とりあえず、急ぎで管理者名とパスワードの変更は済ませました。

ちょっと今後は、ログインした動きを記録できるように設定やらプラグインを導入しようかなと。

あと、買ってなんとなくしか読んでなかったサーバーやセキュリティに関しての本、読みなおそう。


 - WordPress, 小ネタ

ad1

スポンサーリンク

ad1

スポンサーリンク

  関連記事

DSC_0253.jpg
auWALLETが急に使えなくなった原因は磁気不良だった!

auユーザーである僕はグッバイおサイフ!なau WALLETが登場してからという …

Androidの開発者向けオプションをさくっと表示する方法

さーて、Xperia ZL2(Android4.4)を開発者向けオプション使って …

E07Kのアドレス帳をGalaxy S2 Wimaxに移行する!

私事ながら、先日ようやくスマートフォンを入手いたしました。 悩んだ挙句、Gala …

スマホ歴8年の僕がiPhoneを使わないたった1つの理由

本日、2年間相棒だったGalaxy S2 WiMAX(ISW11SC)がついに起 …

ウェブ解析士を取ろうと思ったきっかけはWebマーケッター瞳、モチベーション維持は沈黙のWebマーケティング

過去、Web制作をメインにしていたときに「ホームページは作るだけじゃダメだ!継続 …

timeismoney.jpg
サラリーマンがブログを1日3記事書くためのタイムスケジュール(案)

あくまで案です、案。 1日1記事じゃ甘ぇ!ということで、ブログの更新頻度をあげよ …

au-uq.jpg
通信費節約のため格安simにしたら月に4000円もダウン!

【月額】約8,000円 機種代と基本料、通信費などが込みでこの値段です。通話はし …

MacBook Airでマルチディスプレイをしてたら、急に表示されなくなった件。

  普段は持ち運びしているMacBook Airですが自宅ではマルチデ …

MarsEditでDescriotionを設定しようとしたらハマった話

  絶賛大活躍中のMarsEditにてDescriptionも一緒に投 …

【作】MacからWindowsのファイルサーバに接続するためのAppleScript

作ったってほどでもないんですが・・・。 Windowsのファイルサーバーに接続し …