【PHPセキュリティ】セッション固定攻撃

セッション固定攻撃とは

任意のセッションIDを強制的に利用させる攻撃。
セッションハイジャックを成立させるための手段などで使われる。

対策

ログイン前からセッションが有効になっていて、ログイン後も同じセッションIDを利用している
場合にと言うケースで session_regenerate_id() でログイン後には新しいセッションIDを割り振る。
この関数使ってたけど、具体的になにへの対策の為かが分かってスッキリ。

ただし、PHPのバージョンが5.1以前の場合は古いセッション情報がサーバーから削除されないので

$session_data = session_encode();
$_SESSION = array();
session_regenerate_id();
session_decode($session_data);

の様に書き直す必要がある。