わざわざセキュリティリスクを上げるプログラムを書くとかどうかしてると思うけど。。
セッションハイジャックのために
session_regenerate_id(true)を書くと
リンクをダブルクリックしたときに高確率でセッションが切れるようになります。
たぶんセッションを保存するI/Oのあたりなんじゃないかなぁと思いますが、
さしあたってこれでは色々と支障をきたすので、
こちら側で session_regenerate_idのタイミングをコントロールしなければなりません。
でこんなかんじ。
//ログインするときexpireにtimeをいれてく $_SESSION['expires'] = time(); //セッションのページを開くたびにこんなかんじ。 if ($_SESSION['expires'] < time() - 7) { session_regenerate_id(true); $_SESSION['expires'] = time(); }
わざわざこんなこと書かないといけないなんて・・
なので、セッション使うなら、
ハイジャック対策は別の方法でやるほうがいいのかもしれないですね。
やり方わかりませんが。
Pingback: クロスサイト・リクエストフォージェリ(CSRF)対策 | Unity&Blender開発ブログ