山崎です.

tommy / tmtm.org wrote: 

> On Tue, 14 Dec 2004 00:16:40 +0900
> Yukihiro Matsumoto <matz / ruby-lang.org> wrote:
> 
> > |ええと、ちゃんと議論を理解できてないかもしれないんですが、問題は、「サー
> > |バ側に存在しないセッションIDがブラウザから渡されてきたときに、そのIDを
> > |そのまま使ってしまう」ということだけなんですよね。
> > |
> > |であれば、「サーバ側に存在しないセッションIDがブラウザから渡されてきて
> > |も、そのセッションIDを使わずに、セッションIDが渡されなかった時と同じよ
> > |うに振る舞う」というので良いのではないでしょうか。
> > 
> > 基本的に[ruby-list:40368]におけるTietewさんのアイディアと同
> > じですよね。
> 
> あ、既出でしたね。すいません (^^;
> 
> > |例外が勝手にあがるようになってしまうと、互換性が失われて、結構大変なこ
> > |とになると思います。あちこちで悲鳴があがりそうな…。
> > 
> > その場合、[ruby-list:40388]についてどう思いますか。
> 
> 志村さんの発言ですよね。
> 
> > 攻撃者が自分で作ったIDか、新たにその場で発行されたIDかによらず、
> > Webセッションの途中で有効なセッションIDを取得出来てしまうという点で
> > 問題があります。
> 
> これがよく理解できてないです。「新たにその場で発行されたID」でもダメだ
> というなら、「ブラウザからセッションIDが渡されない場合に新規セッション
> を開始する」というのもダメだということですよね。

志村さんの発言はページA->Bという遷移があったとして
ページBでのチェックがセッションIDが有効だったらOKと
いう単純なものだった場合,ページBでのCGI::Session.newで
無効なSessionIDに対して新規に有効なセッションIDを発行
しちゃうと今までのページ遷移を無視してることになるので
まずいのでは?

という発言だと思います.

やまざき