「msearch におけるディレクトリトラバーサルの脆弱性」へのコメント
「水無月ばけらのえび日記 : msearch におけるディレクトリトラバーサルの脆弱性」について、12件のコメントが書かれています。
[2656] Re: 「msearch におけるディレクトリトラバーサルの脆弱性」
えむけい (2005年3月11日 23時17分)
脆弱性とは関係ありませんが、Unicode版msearchのページのUTF-16に関する説明が凄いですね。あまりに凄すぎるので思わず掲示板で突っ込んでしまいました【謎】。
あと本家msearchのほうでも、「SGMLの注釈宣言」が物凄い参照のされ方をしていました。
http://www.kiteya.net/cgi-bin/msbbs/padd-bbs.cgi?p=1066
こういう誤解を増やさないように、「SGMLの注釈宣言」のページでHTML4のscript要素やstyle要素に関して触れておいた方がいいのではないでしょうか。
[2657] Re: 「msearch におけるディレクトリトラバーサルの脆弱性」
ばけら (2005年3月12日 11時19分)
>http://www.kiteya.net/cgi-bin/msbbs/padd-bbs.cgi?p=1066
>こういう誤解を増やさないように、「SGMLの注釈宣言」のページでHTML4のscript要素やstyle要素に関して触れておいた方がいいのではないでしょうか。
はあ、なるほど。HTML4 の script 要素の中に <!-- なんてのがあったとしてもそれはコメントではありませんので、そういう注釈を入れた方が良いですかね。
そもそも、レガシーブラウザのために script要素の中身をコメント (ではないのですけれど、レガシーブラウザにはコメントのように見えるもの) 化するという習慣は、もう必要ないのではないかと思うのですよね。多くの人は何も考えずにただ惰性でコメント (に見えるもの) にしているのではないかと思いますが……。
[2679] Re: 「msearch におけるディレクトリトラバーサルの脆弱性」
えむけい (2005年3月21日 4時34分)
>脆弱性とは関係ありませんが、Unicode版msearchのページのUTF-16に関する説明が凄いですね。あまりに凄すぎるので思わず掲示板で突っ込んでしまいました【謎】。
なんか無言で削除された上にご利用をご遠慮されてしまったので(名前がNGワードになっていた)、削除された内容をこっちに貼り付けておきます。といっても(まさかこんな物凄い対応をされるとは夢にも思いませんでしたし)書き込んだ内容は保存していなかったので、正確に前回投稿した内容と同じではありませんけど。
------------------------------------------------------------
UTF-16BE, 16LE, 32BE, 32LEはBOMを付けることが禁止されている文字エンコーディングです。BOMがある場合にはUTF-16, UTF-32というcharset名にしなくてはなりません。
http://www.ietf.org/rfc/rfc2781.txt
|Systems labelling UTF-16BE text MUST NOT prepend a BOM to the text.
|Systems labelling UTF-16LE text MUST NOT prepend a BOM to the text.
|MUST label the text as "UTF-16", and SHOULD make sure the text starts with 0xFEFF.
Unicode版msearchはUTF-16, UTF-32の場合BOMがあることを前提にしているようですから、UTF-16BE, 16LE, 32BE, 32LEには「対応していない」というのが正解です。
ページ中のUTF-16LE, 16BEと書かれている箇所はUTF-16に、UTF-32BE, 32LEと書かれている場所はUTF-32に、すべて置き換える必要があります。
トップページ「2. 文字コードの指定」を鵜呑みにしてmetaタグのcharset指定にUTF-16BE, 16LE, 32BE, 32LEを入れてしまった人がいるかもしれませんから、何らかの手段で告知した方がいいかもしれません。
どうしてもbig endian、little endianを区別する必要がある場合(たとえばテストページの
http://www.marbacka.net/msearch/test/innehall.html
> 日本語のサンプル文章(XHTML, UTF-16LE)
> 日本語のサンプル文章(XHTML, UTF-16BE)
> 日本語のサンプル文章(XHTML, UTF-32LE)
> 日本語のサンプル文章(XHTML, UTF-32BE)
という部分)は、
> 日本語のサンプル文章(XHTML, UTF-16, litle-endian)
> 日本語のサンプル文章(XHTML, UTF-16, big-endian)
> 日本語のサンプル文章(XHTML, UTF-32, litle-endian)
> 日本語のサンプル文章(XHTML, UTF-32, big-endian)
のように書くしかありません。UTF-16LE, 16BE, 32LE, 32BEと書くとBOMなしという意味になるため、本当にBOMが無い場合以外書いてはいけません。
(続く)
[2680] Re: 「msearch におけるディレクトリトラバーサルの脆弱性」
えむけい (2005年3月21日 4時35分)
なんか文字数が多すぎると怒られたので分割します。
------------------------------------------------------------
それ以外に、FAQなどを読んでいて気づいた点をいくつか。
http://www.marbacka.net/msearch/faq.html#faq0101
> unicode Unicode
> ※UTF-16LEもしくはUTF-32LE。BOM有であること。
「unicode」がUTF-32と解釈されることはありません。IEはUTF-32に対応していませんが、U+0000を無視するので、1文字おきにU+0000が入ったUTF-16のファイルとして、偶然読めているだけです。BMP超の文字を含むファイルを読ませてみれば分かります。
http://www.marbacka.net/msearch/faq.html#faq1103
> <a href="#faq1106">ActivePerlを使って作成する方法</a>
リンク先の質問がなくなっています。
http://www.marbacka.net/msearch/faq.html#faq1301
> IE6でUTF-16BE、UTF-32BEで開こうとすると文字化けすることが多いです。特にUT-32BEがひどいです。
http://www.marbacka.net/msearch/faq.html#faq1302
> UTF-16BE, 32BEのページが文字化けして表示されることがある。特にUTF-32BEがひどい。
すでに述べたとおりIEはUTF-32に対応していませんから当然ですね。むしろ中途半端に読めてしまうのが問題かもしれません。
http://www.marbacka.net/msearch/faq.html#faq2109
> UCS-4全文字(0x00000000から0x7FFFFFFFまで)を表現できるのは、UTF-8, 32LE, 32BEのみです。
UTF-32の定義域はU+10FFFFまでで、それ以上の値を含むUTF-32は不正です。
UTF-8も、UnicodeやRFCの定義ではU+10FFFFまでしか表せません。
http://www.marbacka.net/msearch/faq.html#faq2111
> 12.UCS-2とUTF-16とは何が違うの?
> まず規定している規格そのものが違います。UCS-2はISOがISO-10646仕様書で規定している文字コード体系です。 (UCSはUniversal Multiple-Octet Coded Character Setの略です。) UTF-16はUnicodeコンソーシアムが規定している文字コード体系です。
UTF-16はISO/IEC 10646の附属書でも規定されています。
http://www.marbacka.net/msearch/faq.html#faq2207
> <a href="/marbacka/msearch/test/innehall.html">テストページの一覧</a>に
リンクが切れています。
(続く)
[2681] Re: 「msearch におけるディレクトリトラバーサルの脆弱性」
えむけい (2005年3月21日 4時37分)
続き。
------------------------------------------------------------
http://www.marbacka.net/msearch/faq.html#faq2305
> ただしUnicode外の文字(ISO10646のUCS-4では規定されているもののUnicode領域を超えている文字)は扱えません。
JIS X 0213にそんな文字はありませんが…。なぜこの文がここに書かれているのか分かりませんが、削除するか「ISO/IEC 10646の文字は使えますか?」という項目を別に立てた方がいいと思います。
http://www.marbacka.net/msearch/faq.html#faq2314
> <a href="/marbacka/msearch/test/innehall.html">テストページの一覧</a>に
リンクが切れています。それにテストページへのリンクがなぜかコメントアウトされているようですが…。
http://www.marbacka.net/msearch/faq2.html#faq2002
> ※2:JIS2000で規定されている漢字はほとんどが(Version 4.0以降の)Unicodeに収録されています。ただし100%すべて収録されているかどうかはわかりません。
すべて収録されています。また2004年に改訂されたので現在はJIS2000という名称は用いない方がいいでしょう。
------------------------------------------------------------
> 管理人が著しく不利益もしくは不愉快と判断する記事、社会性のない文章・記事、他人を誹謗中傷する記事、公序良俗に反する記事などは予告なく削除します。
とか書かれてたので削除すること自体は全く問題なさげですが、いったいどのへんが問題だったのかマジでさっぱり分かりません。
[2684] Re: 「msearch におけるディレクトリトラバーサルの脆弱性」
ばけら (2005年3月21日 16時26分)
>削除すること自体は全く問題なさげですが、いったいどのへんが問題だったのかマジでさっぱり分かりません。
何故か懐かしさを感じますね。
名前が NG ワード指定されていたということから素直に考えると、名前が問題だったのでしょうか。どのあたりが問題なのかはやはり全く分かりませんが。
[3742] 未承認メッセージ (投稿元:211.211.184.230)
vgeq qfltnsem (2006年7月10日 18時26分)
(この記事は承認されていないため、管理者が許可するまで公開されません。)
[3743] 未承認メッセージ (投稿元:201.147.158.52)
lvonci xveflq (2006年7月10日 18時41分)
(この記事は承認されていないため、管理者が許可するまで公開されません。)
[3779] 未承認メッセージ (投稿元:218.236.150.93)
walmihtns wjzgbs (2006年8月6日 8時11分)
(この記事は承認されていないため、管理者が許可するまで公開されません。)
[3780] 未承認メッセージ (投稿元:200.88.223.98)
fgzd dxnwis (2006年8月6日 8時11分)
(この記事は承認されていないため、管理者が許可するまで公開されません。)
[3783] 未承認メッセージ (投稿元:218.241.67.35)
cgqtbo hwjd (2006年8月10日 1時53分)
(この記事は承認されていないため、管理者が許可するまで公開されません。)
[3784] 未承認メッセージ (投稿元:211.179.82.206)
dqkc mxvgkds (2006年8月10日 1時53分)
(この記事は承認されていないため、管理者が許可するまで公開されません。)
「水無月ばけらのえび日記 : msearch におけるディレクトリトラバーサルの脆弱性」についてコメントを書く場合は、以下のフォームに記入してください。