アクセスログ解析(jcode.pl版)ページ

フリーウェア


●アクセスログ解析(jcode.pl版及びJcode.pm版)の脆弱性について

アクセス解析画面(analysis.cgi Ver.1.44 以前)の脆弱性について

アクセス解析の解析画面用perlスクリプトanalysis.cgiのVer.1.44以前についてXSS(クロスサイト・スクリプティング)を行う事ができる脆弱性が見つか りました。この脆弱性により悪意のあるスプリクトを実行される恐れがあります。
アクセスログ解析(jcode.pl版またはJcode.pm版)に付属のanalysis.cgiのバージ ョンが1.44以前のものをご利用の方はお手数をおかけ致しますが至急最新のバー ジョンにバージョンアップをお願い致します。

また、脆弱性発見者のセキュアコーディング勉強会のAzureStones様並びにご協力頂いたJPCERT/CCの方々に感謝致します。


●概要

 ホームページを訪れた人々の情報を蓄積し分析を行うCGIです。アクセス向上の為の分析や
セキュリティー強化の為に御利用下さい。

●特徴

●設置方法

  1. ダウンロードしたファイルを解凍すると下記のファイルができます。

    ファイル名

    説明

    access.cgi

    アクセスログ収集CGI

    access.log

    アクセスログファイル

    analysis.cgi アクセスログ解析CGI
    jcode.pl 日本語変換ライブラリ
    Changes.txt 更新履歴


  2. 上記のファイルをCGIが実行できるディレクトリにFTP転送して下さい通常は以下の用になります。


    ●CGI設置時のディレクトリ構成は以下の様になります。 注)それぞれのWebサーバーの設定により若干違いがあります。
    注)CGIの設置が分らない場合は、プロバイダーまたは、WEBサーバー管理者にお問い合わせ下さい。
    
    (home)/                ・・・ (あなたのホームディレクトリ)
          |
          +-cgi-bin           ・・・ (通常CGIの実行できるディレクトリ)
              |
             +-accesslog         ・・・ (カウンタ用のディレクトリ(各自作成)) 
                |
                +-jcode.pl      … 日本語変換ライブラリ
          |
                +-access.cgi  … アクセスログ収集CGI
                |
                +-ayalysis.cgi … アクセスログ解析CGI
                |
                +-analysis.log … カウンターログファイル


  3. 下記のようにパーミッション(属性)を設定して下さい。

    CGI名

    タイプ

    属性

    cgi-bin

    ディレクトリ

    755

    accesslog

    ディレクトリ

    777

    jcode.pl

    ファイル

    644

    access.cgi
    ファイル
    755
    analysis.cgi
    ファイル
    755

    access.log

    ファイル

    666


  4. アクセスログ収集の為のJavaScript

    貴方のホームページのトップに以下のJavaScriptを貼り付けてください。

    ■ ページがフレームを利用していない場合。

    <script language="javascript">
    <!--
    document.write("<img src=(貴方がCGIを設置したURL)/access.cgi?" + document.referrer + " width=1 height=1>");
    //-->
    </script>
    <noscript>
    <img src="(貴方がCGIを設置したURL)/access.cgi" width="1" height="1">
    </noscript>

    ■ ページがフレーム利用の場合。

    <script language="javascript">
    <!--
    document.write("<img src=(貴方がCGIを設置したURL)/access.cgi?" + parent.document.referrer + " width=1 height=1>");
    //-->
    </script>
    <noscript>
    <img src="(貴方がCGIを設置したURL)/access.cgi" width="1" height="1">
    </noscript>

●設定の変更

プログラムの上部にある下記の部分を編集することにより設定を変更することができます。

□access.cgiの設定

行番号 各行の内容 説明
29
$log = "access.log";
ログファイル名です。
30
$max = 1000; データ保存件数です。
31
$lock = 1; ロック方式の指定
0:[ロックなし] 1:[flock] 2:[mkdir]
33
@exclude = (
'abc.com',
'bcd.net'
);
解析除外サイト指定(初期値は例)
37
@excludehost = (
'abc.efg.ne.jp'
);
解析除外ホスト指定(カンマで区切って複数指定できます。)
(初期値は例)
40
@excludeip = (
'61.122.75.17'
);
解析除外IP指定(カンマで区切って複数指定できます。)
(初期値は例)

□analysis.cgiの設定

行番号 各行の内容 説明
27
$cyokukin_max = 10; 直近表示件数
28
$link_max = 10;
逆リンク順位最大表示数
29
$ua_max = 10;
USER_AGENT別順位最大表示数
30
$bs_max = 10;
ブラウザ別順位最大表示数
31
$bv_max = 10; ブラウザ+Version別順位最大表示数
32
$os_max = 10;
OS別順位最大表示数
33
$dm_max = 10;
ドメイン別順位最大表示数
34
$rh_max = 10;
リモートホスト別順位最大表示数
35
$dmt_max = 10; ドメイン属性別順位最大表示数
37
$auth = 1; アクセス解析画面を一般に公開したくない場合:1 公開するとき:0
39

$pass = 'hogehoge';

管理者パスワード
40

$log = './access.log';

ログファイル名
41

$cginame = './analysis.cgi';

CGIファイル名
44
$ENV{TZ}="JST-9"; タイムゾーン設定(日本)

●更新履歴

Changes.txt

★★規約★★

  1. 本CGIを利用した場合、本規約に同意したものとします。
  2. 本規約に同意できる場合のみ、本CGIを利用することができます。
  3. 本CGIを改良・改造して利用することは作者に許可なく行うことができます。
  4. 本CGIを商用サイトに利用する場合も作者に許可なく行うことができます。
  5. 本CGIを再配布することを禁止します。
  6. 本CGIの著作権表示を削除またはこれに順ずる行為を禁止します。
  7. 本規約への違反を発見した場合、警告を行い、又それに速やかに従わない場合や悪質な違反の場合は損害賠償等の法的処置を取る場合があります。
  8. 本規約は予告なく変更されることがあります。

★★免責★★

  1. 本CGIを利用した場合に発生したいかなる損害に対してもこれを保証しないものとします。

上記を了承の場合のみダウンロードにお進みください。


●ダウンロード

ダウンロード