徳丸浩のtumblr
PHPのセッションアダプションは今でもある

今年もアドベントカレンダーの季節となりました。既に楽しい記事が多数紹介されています。僕も、今年は初めてアドベントカレンダーに参加しようと思い、PHP Advent Calendar 2012にエントリしています。

去年のPHP Advent Calendar jp 2011にはどんなネタが上がっていたかと思いタイトル一覧を見ておりましたら、見覚えのあるエントリがありました。

 PHPのセッションアダプション脆弱性克服への道のり

セッションアダプション対策はまだリリースされているPHPには取り込まれていませんが、もうすぐsubversionレポジトリにコミットする事ができます。

・・・

2011年秋

  • PHP 5.4.0のリリースに合わせ厳格なセッション管理を行わない事はセキュリティ問題だとPHP開発者のMLに送信する。
  • 遂にセッションアダプションの致命性が理解されたのか、今までと違い必要ない、無用である、現状の機能で十分、ユーザが悪い、とする反論は一切なし。
  • 現在、パッチは議論中のステータスで反論もない状態で年内中にはtrunkにコミット、PHP 5.4.1とPHP 5.3.10(何時になるかな)には取り込まれる見込み。

PHP5.4.1では、セッションアダプションの対策がとられる見込みということでしたが、その後「組み込まれた」という案内を聞かないと思ったので、手元のPHP5.4.9(本稿執筆時点の最新版)で試してみました。

セッションアダプションという言葉の定義は若干ゆれがあるようですが、ここでは、「勝手に作成したセッションIDをPHPが受け入れてしまう」問題のことを指します。このため、PHPSESSID=ABC12345 など、適当にきめたセッションIDのクッキーをブラウザにセットして、PHPがそのセッションIDをそのまま受け入れるかどうかを観察することで、セッションアダプションの有無を確認できます。

結果は、「依然としてセッションアダプションはある」でした。

前記ブログエントリの著者である大垣さん(@yohgaki)には、twitterでお伝えしておきました。

私は、このエントリで書いたように、セッションアダプションは「ない方がいいけど重大な問題ではない」と思っています(世界中のPHP関係者の大半がそう思っている…らしい…のでいまだにPHPにはセッションアダプションがある)ので、この問題は大垣さんにお伝えしたことで終わりです。

  1. longroofockeghemからリブログしました
  2. chamy112ockeghemからリブログしました
  3. altarfockeghemからリブログしました
  4. atm09tdact2012blからリブログして、コメントを追加しました:
    今年もアドベントカレンダーの季節となりました。既に楽しい記事が多数紹介されています。僕も、今年は初めてアドベントカレンダーに参加しようと思い、PHP Advent Calendar 2012にエントリしています。 去年のPHP Advent...
  5. act2012blockeghemからリブログしました
  6. ohshitaockeghemからリブログしました
  7. samaiockeghemからリブログしました
  8. ockeghemの投稿です
Google