分析ツールを利用したアクセスログの分析
アクセスログに記録されるURLとは
Webサーバーは基本的に全てのリクエストをアクセスログ等に記録することが可能です。また、Webブラウザ等からは対象のWebサーバーにコンテンツの有無に関係なく、どのようなリクエストを送ることが可能です。結果的に、Webサーバーは日々様々なリクエストを処理することになります。
アクセスログ分析
アクセスログの分析、解析といえばまずページ毎のページビュー数(PV)などの解析を思い浮かべることが多いかと思います。また、アクセスログ解析については様々なツールや仕組みが普及していますので、改めてログを分析するという機会は多くありません。
前述の通り、Webサーバーに対してどのようなリクエストを送ることも可能です。そこで、今回は記事作成用に用意したアクセスログの中から、あえて「ちょっと怪しいアクセス」のみを対象とし簡単な分析を行ってみます。
分析例
今回はアクセスログを分析する上で基本的な切り口での分析となります。より高度な分析については別の機会にご紹介出来ればと思います。
分析には便利なツールが欠かせません。今回はMetabaseという製品を利用してみました。
Metabaseにおけるダッシュボード
GET / POST / その他
まずはHTTPリクエストにおけるメソッド毎の比率です。怪しいリクエストにおいてはPOSTが多く利用されます。
ユーザーエージェント (User agent)
ブラウザの種類などを表すユーザーエージェントによる分析も基本的な切り口となります。ただし、ユーザーエージェントは自由に変更可能ですので、今回の分析においてはさほど重要視される指標とはなりません。
クエリーパラメーター
クエリーパラメータとは、URLに含まれている ?lang=ja&uid=1& のような値です。
最初のグラフは全体におけるクエリーパラメータの有無を表しています。リクエスト全体の内、98.47%にはクエリーパラメータが付与されていません。
次のグラフはクエリーパラメータの内訳です。全体の1.53%の内、上位25件の内訳です。実際に何かの目的を持って分析を進める場合は、クエリーパラメータだけでは無くその直前のパスなどを合わせて分析する必要がありますが、今回はクエリーパラメータのみを分析してみました。一見意味が無いような切り口でも意外な知見が得られる場合もあるのでこういう分析を試してみることも良いと思います。
Webサイト内のパス
厳密には正確な表現では無いのですが今回は「サイト内パス」と表現します。いわゆるURLに含まれるドメイン名などを除くコンテンツの場所を表す値です。
このグラフはリクエスト全体の内訳です。いくつかのサイト内パスに対して大量のリクエストが記録されていることが分かります。
実施の分析作業では、さらに深く分析を進めることになりますが今回はここまでのご紹介とさせて頂きます。
まとめ
今回は分析手法、結果ともに簡潔な内容のご紹介となりましたが、分析ツールの導入、利活用検討へのきっかけなど、何らかのお役に立てば幸いです。