From: "堀川 久" Date: 2004-12-12T17:51:50+09:00 Subject: [ruby-list:40395] Re: 1.8の cgi/session.rb こんにちは。 H.Shimura wrote on the <200412090752.AA00096@dsm3602k.obun.co.jp> >攻撃者が自分で作ったIDか、新たにその場で発行されたIDかによらず、 >Webセッションの途中で有効なセッションIDを取得出来てしまうという点で >問題があります。 > >この問題を防ぐには、常に「存在しない時には新しいセッションをスタートする」 >ケースであったかどうかをチェックして、その場合には適切な行動をとる >(ID認証や入り口ページへの誘導など) ように、明示的にプログラミング >してやる必要があります。大変です。忘れ易いです。省略しがちです。 > > >もっとも、現時点では私は例外をrescueして対応した方が良いと思っ > >ているのですが。 > >こちらの方が良いと思います。 すっかり収束してしまっていますが。反応遅すぎ。 クライアントが投げてきたIDが存在しないときに、新しいセッションをスター トするかどうかは、サーバ側のアプリケーションの用途によります。 ID認証を必要とするような場合は、ID認証ページに移行する必要があるため、 セッションを作るのは適切ではありません。 公開ページでセッション管理している場合は、常にセッションを生成すべきで す。不正なIDや存在しないIDのときは、新しいIDで新しいセッションにしま す。 後者の場合、いちいちエラーにされては堪りません。 -- HORIKAWA Hisashi (in Kanji: 堀川 久) Netsphere Laboratories http://www.nslabs.jp/