1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ApacheのアクセスログをApacheLogViewerで統計的に分析する

Posted at

やりたいこと

AWSのCloudWatchやZabbix等の監視系ツールで、CPUやメモリ使用率が一時的にスパイクすることがある。
原因は一時的な、アクセス数が増えた場合もあるが、今日において、攻撃を受けている場合も多い。
その際の私なりの、Apacheアクセスログの分析方法を記載したいと思います。
8.png

前提条件

  • WebサーバがApacheであること。
  • Webサーバ内の/var/log/httpd/access.logのファイルを自分の取得しておく。
    ※ファイルが肥大化していると、ダウンロードが大変になるので、適切なログローテートが行われていること。
  • ApacheLogViewerをダウンロードしておくこと(https://www.vector.co.jp/soft/dl/win95/net/se252609.html)。
    エクセル等で、フィルタして分析することもできるが、こちらであれば自動的にグラフ等を作ってくれるため、分析がしやすい。

アクセスログをApacheLogViewerで分析する

  • ApacheLogViewer(以下exe)を開き画面左上の「…」ボタンをクリックし、分析したいアクセスログファイルを選択する。
    1.png
    2.png

  • アクセスログが表示されるので、この時点でざっと確認し、赤字が連続している箇所がないか探す。
    ※監視ツールで折れ線グラフが一番跳ね上がっていた時間帯で確認する。
    ※基本的に404エラーでCPU使用率が跳ね上がることが多い。
    3.png

  • 赤字(エラーログ)内で以下がないか確認する

    • Request欄のURLが実際には存在しないURL
    • Agent欄のユーザーエージェント(どのブラウザ・OSでアクセスしているか)に共通しているのがあるか。
      ※Mozilla等から始まるものは普通のブラウザであることが多い。
      ※以下URLに、ユーザーエージェントを貼り付けることで、ブラウザ・OSの確認が可能。
      http://mobile.shinsv.mydns.jp/useragent_check/
    • 同じユーザーエージェントが大量に連続していないか。

詳細に分析する場合

アクセスログが大きい場合、赤い行の共通性等が分からない場合は、統計分析を行う。

  • 画面左下Statisticsボタンをクリックする。
    4.png
  • 上のタブ内でErrorを選択し、下のタブ内で日時・ユーザーエージェント、での集計結果を確認する。
    ※個人的にはRequest、Userの順で確認すると良い。
    ※以下画像は例として、脆弱性診断ツールのOpenVASによる攻撃のパターンです。
    ※画像内のログは手動で作成したもののため、実際に見るログは違うものになります。
    5.png

##備考
AWSでロードバランサ経由でアクセスがされている場合は、Host欄のIPがロードバランサのIPになってしまうためアクセス元の分析ができません。ユーザーエージェントも偽造ができるらしいので、例えばアンドロイドかつクローム経由だった場合は、スマホで攻撃するとは考えられないので、偽造されていると考えられます。
もし、ApacheLogViewerがダウンロードできない現場の場合は、テキストエディタ等で、404がある行を色付けし、ざっと見るだけでも原因がわかる場合があります。
他の便利な分析方法等をご存じの方は是非教えて下さい。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?