-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
======================================================================
CGI PROGRAM SECURITY ADVISORY [Im TrBBS 1.04] 2001/05/11
======================================================================
http://www.ansi.co.jp/cgi/security/advisories/im-trbbs_2001_05_11.txt
======================================================================
■ 影響を受けるCGIプログラム
* ツリー掲示板 (imTRBBS) 1.04
(これ以前の全てのバージョンには同様の問題が存在する可能性があります。)
■ 概要
ツリー掲示板 (imTRBBS) 1.04 は CGI 倶楽部によって作成された掲示板CGIプ
ログラムです。このプログラムには外部から任意のコマンドが実行可能となる
セキュリティ上の問題点があります。
ツリー掲示板 (imTRBBS): http://www.cgi-club.com/imTRBBS/
■ 解説
ツリー掲示板 (imTRBBS) 1.04 では外部から与えられたデータの汚染チェック
を怠っているため、open 関数の第2引数の末尾に任意の文字列を与えることが
可能です。このため、悪意のある入力が行われた場合には、外部から CGI プ
ログラムの動作権限で任意のコマンドが実行可能です。
■ 影響
CGIプログラムが各ユーザ権限で実行されるシステム (Apache + SuEXEC など)
の場合、そのユーザの権限で任意の操作をすることが可能です。これによって
ユーザ環境が破壊される可能性があります。そうではない場合でも、CGI プロ
グラムの実行 UID で任意の操作が可能です。
■ 回避方法
現在のところ作者からは示されていませんが、以下の修正を行うことで回避す
ることが可能です。
- -------------------------------------------------- patch
*** im_trbbs.cgi.orig Fri May 11 16:05:35 2001
- --- im_trbbs.cgi Thu May 10 13:48:09 2001
***************
*** 25,31 ****
require $im_env{'im_trenv_pl'};
unless($form{'df'}){$form{'df'}=$im_env{'usr_dat'};}
! &err_check(!(($form{'df'} ne $im_env{'usr_dat'}) && ($form{'df'}!~m/^\d+\.log/)),"不正なデータファイル名 $form{'df'} が指定されました","HF");
$im_env{'read_dat'} ="$im_env{'root_dir'}/$form{'uid'}/$form{'df'}";
- --- 25,31 ----
require $im_env{'im_trenv_pl'};
unless($form{'df'}){$form{'df'}=$im_env{'usr_dat'};}
! &err_check(!(($form{'df'} ne $im_env{'usr_dat'}) && ($form{'df'}!~m/^\d+\.log$/)),"不正なデータファイル名 $form{'df'} が指定されました","HF");
$im_env{'read_dat'} ="$im_env{'root_dir'}/$form{'uid'}/$form{'df'}";
- --------------------------------------------------
■ 参考コード
(参考コードは、2週間程度経過した後に公表します。)
■ 状態
2001/05/08: 通知
2001/05/11: 作者による公表を確認
2001/05/11: 公開
======================================================================
(C) 2001 ASUKA NETWORK SERVICE, INC. http://www.ansi.co.jp/
HIRATA YASUYUKI http://yasu.asuka.net/
All rights reserved.
* この文書に書かれている内容は無保証です。
* この文書に書かれている内容を利用して攻撃を行った場合、刑事上・民事上
の責任を問われることがあります。
* このファイルは内容の変更 (電子署名の除去を含む) が行われない限り自由
に再配布可能です。
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (FreeBSD)
Comment: For info see http://www.gnupg.org
iD8DBQE7rqd/duP2KhBu8ikRAq+iAJ49cdzSxARN2BrNJUUk/lEUTKFfHACfcU/y
ptb2zFgqnIVqq2kn6WIPETOIPwMFATuup3/CitaZXxzdBBECr6IAoIg+B9zyTMfw
QD2vISe5Ql1fOyNWAJ92QEHTWN9zPcv8zOvNA+AneGFAWw==
=XrZy
-----END PGP SIGNATURE-----