CJ Club TOP/簡単修正法
検索・過去ログ表示CGIのセキュリティ上の影響について
CGIプログラムが各ユーザ権限で実行されるシステム (Apache + SuEXEC など)の場合、そのユーザの権限で任意の操作をすることが可能です。これによってユーザ環境が破壊される可能性があります。そうではない場合でも、CGI プログラムの実行 UID で任意の操作が可能です。(ご報告くださったhttp://www.japu.org/より引用)
■現在ダウンロードできるものはすべて対策済みです!
■不具合の内容:知識のある第3者が任意の操作をする事が可能
対策)
1)
2)
検索・過去ログ表示CGIをテキストエディタなどで開きエディタの検索機能などで「デコード」を検索して下さい。
次のサブルーチン開始間際に以下のような文字列があります。
$word= $FORM{'word'};
$andor=$FORM{'andor'};
$mode= $FORM{'mode'};
$logs =$FORM{'logs'};
}
これを以下のように修正して下さい。
$word= $FORM{'word'};
$andor=$FORM{'andor'};
$mode= $FORM{'mode'};
$logs =$FORM{'logs'};
if($logs){
unless(($logs eq "$log" || $logs=~ /^[\d]+\.txt$/)){&er_("そのファイルは閲覧できません!");}
}
}
以上で修正は完了です。上書き転送して下さい(ファイル名をチェックし任意のコマンドを実行できないように修正)。
■ BACK
設定ファイル(set.pl等)のパスワードが覗かれることについてとその対策
■設定ファイルの拡張子が .pl でパーミッションが755だとファイル内を閲覧される可能性があります。
対策)
設定ファイルの拡張子を .cgi にする。同時にメインのCGIの方のファイル設定も設定ファイル名を変更する。
■ BACK