にしし ふぁくとりー(西村文宏 個人サイト)

Presented by Nishishi via Movable Type. Last Updated: 2015/09/22. 13:23:39.

セッションIDの生成って

セッションIDを生成する場合、予測が困難な文字列で、毎回異なるような文字列にしておく必要があるわけですけど、それって単に、rand関数とかで得られる乱数を使っただけでいいのかな…?(^^;)

もちろん、シードが固定だとrand関数が返す値は同じになっちゃうので、毎回変わるようなシードを与えないといけませんけど。Perl5の場合、現在時刻とプロセスIDを組み合わせたシードを勝手に作って使ってくれるらしいですから、シードはこれで十分ですよね? プロセスIDって外からは分からんだろうし。

そうやって得られた乱数をそのまんまセッションIDにすると、なんか問題あるかなあ?
その乱数のハッシュを求めて、ハッシュをセッションIDにすれば、もう何が何やら分からなさそうだけど。

脆弱性の要因になるのは、セッションIDの予測の難易度だけじゃなくて、セッションIDの管理方法もだから、セッションIDの生成方法としては、「乱数を使う」というのだけで十分だと考えていいのかな…?

…と思ってちょっと調べたら、こんな記事を発見。

気を付けたい貧弱なセッション管理(@@IT)

コメント

コメント数: 0件

コメント投稿欄 この日記に対するコメント投稿を歓迎します。

保存しますか?



※本文中にURLは書けません。(書くと投稿が拒否されますのでご注意下さい。)

※投稿内容は、実際にページ上に掲載される前に、管理者によって確認される設定にしている場合があります。その場合は、投稿後にその旨が表示されます。たいてい1~2日以内には表示されるはずですので、気長にお待ち願います。m(_ _)m

トラックバック

このエントリーへのトラックバックURLを表示するにはここをクリック
※スパム防止のため、トラックバックURLは別ウインドウで表示します。(JavaScriptが有効でないと表示されません。)

--- 当サイト内を検索 ---