水無月ばけらのえび日記

bakera.jp > 水無月ばけらのえび日記 > 2005年のえび日記 > 2005年4月 > 2005年4月26日(火曜日)

2005年4月26日(火曜日)

セッション固定攻撃の謎

セッション固定攻撃なるものはそれなりにマイナーなセッションハイジャック手法だと思いますが、疑問が二つありました。

そもそも私は PHP についてほとんど知らないので、PHP 特有の事情があるのだろうなと想像してはいたものの、それがどんなものなのかよく分かっていなかったのです。

それがようやく何となく理解できました。アシアル株式会社 ニュース (www.asial.co.jp)で公開されている PHPカンファレンス2004 のプレゼンテーション資料を見たのですが、

外部から来たクエリ変数でもPHPのセッション変数として使用されてしまう!

(~中略~)

ログインした時点などの重要なタイミングで session_regenerate_id()関数を呼び出し、セッションIDを変更することが肝要。

以上、セキュアなPHP言語環境を整えよう PHPセキュリティ機能 より

ということで、外部から与えられたパラメータをセッション ID として使ってしまうのは PHP のデフォルトの動作のようですね。正直驚きですが、session_regenerate_id() というものを使えば回避できる模様。

関連する話題: セキュリティ

最近の日記

関わった本など