From: "TAKAGI, Hiromitsu" Date: 2001-11-19T14:40:46+09:00 Subject: [ruby-list:32416] Re: fastcgi.rb and cgi.rb ごぶさたしております。高木@産総研でございます。 On Sat, 17 Nov 2001 15:48:41 +0900 Tanaka Akira wrote: > In article <1005978979.248724.16933.nullmailer@ev.netlab.jp>, > matz@ruby-lang.org (Yukihiro Matsumoto) writes: > > > 怠慢で申し訳ないんですが、どういう風にセキュリティに関係する > > のか教示していただけませんか? > > RFC2279 の Security Considerations に (略) > と書いてあります。 > > 端的にいえば、UTF-8 で .. などの危なそうな文字列が存在していないことを > 確認したとしても、後から冗長なエンコードをデコードしちゃうと危ないのが > 出てきちゃうかも、ということです。 > これを防止するのに一番簡単確実自明なのは冗長なのを禁止しちゃうことなの > で、そのような挙動がデフォルトだといいのではないか、ということなんです > が。 この問題に対応すべく、UNICODEの規格が、そのバージョン3.0.1 で訂正され ているので、そのように従っておくのが適切と思います。 "Corrigendum to Unicode 3.0.1" http://www.unicode.org/unicode/uni2errata/UTF-8_Corrigendum.html この問題が本当に脅威となり得るのかについてですが、メジャーなとあるソフ トウェアとサービスに実際に確認しまして、8月にそのベンダーに通知しまし た。一社は直してくれましたが、もう一社は直してくれないという状況です。 (すみません、まだ未対応のベンダーがあるので具体名を書けません。) プログラミング言語の処理系(およびその標準ライブラリ)においてこの問題 がある場合に、どのような脅威につながるか、それはアプリケーション次第な ので何とも言えませんが、Javaの場合はどうかというと、BugParadeに既に報 告されてはいるものの、修正はまだされていないという状況です。 "UTF-8 decoder should adhere to corrigendum to Unicode 3.0.1" http://developer.java.sun.com/developer/bugParade/bugs/4486841.html 高木 浩光@独立行政法人産業技術総合研究所 http://staff.aist.go.jp/takagi.hiromitsu/