Namazu-devel-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: クロスサイトスクリプティング脆弱性 (ver2.0.10)
- From: knok@xxxxxxxxxxxxx (NOKUBI Takatsugu)
- Date: Tue, 26 Mar 2002 13:58:44 JST
- X-ml-name: namazu-devel-ja
- X-mail-count: 02453
<20020326125843.10385773.-1841068586@xxxxxxxxxxxxxxxxxxxxxxx>の記事において
hanai-a@xxxxxxxxxxxxxxxxxxxxxxxさんは書きました。
>> cgiの呼び出しにて、存在しないインデックスを
>> http://〜/cgi-bin/namazu.cgi.exe?idxname=hoge
>> と指定すると、下記のようなエラーが返ってきます。
>>
>> namazu: D:\namazu\var\namazu\index/hoge/NMZ.head: No such file or directory
>> namazu: D:\namazu\var\namazu\index/hoge/NMZ.body: No such file or directory
>> namazu: D:\namazu\var\namazu\index/hoge/NMZ.foot: No such file or directory
おそらく read_headfoot() 等から nmz_warn_printf() を呼び出して出力さ
れたものだと思います。これは stderr に出力する関数なのですが、Unix で
apache 等で利用している分には、stderr の出力は HTTP の出力には反映され
ない(error.log 等に出力される)ので問題にならないようです。
IIS は違うようですが、apache 以外でも同様の挙動をする実装がないとは
いいきれません... ということで確かに問題ですね。
さしあたっての workaround としては... Unix なら例えば以下のような
wrapper を作成すれば回避できると思います。
--
#!/bin/sh
exec /usr/local/www/cgi-bin/namazu.cgi 2>/dev/null
--
IIS はあまり使ったことがないのでよくわかりませんが、どなたか有効そう
な workaround をご存知ないでしょうか?
それからどのように修正すべきかも問題ですが、
1. nmz_warn_printf の出力を抑制可能に
2. nmz_warn_printf の出力を escape
どちらが良いでしょうか? 前者は完全な対応とはいいがたいですが、escape
を期待しない環境では後者だと困ることもありそうです。
--
野首 貴嗣
E-mail: knok@xxxxxxxxxxxxx
knok@xxxxxxxxxx / knok@xxxxxxxxxx