Sessionアダプション脆弱性の修正
やっとPHPのセッションアダプション脆弱性を修正するパッチとプルリクエストを作りました。議論は済んでいるのでパッチを検証、調整してマージするだけです。 PHPに限らず、未初期化のセッションIDを正規のセッションIDとして受け入れてしまうセッション管理機構があります。(Javaとか) サイトで稼働している全てのアプリが正しいセッション管理(ログイン後にセッショ…
PHP 5.5.0 リリース
PHP 5.5.0がリリースされました。PHP 5.5のリリースにともないPHP 5.3の開発は終了し、今後一年間セキュリティフィックスのみが提供されます。 PHP 5.5.0 ChangeLog PHP 5.5へのマイグレーション PHP 5.3/5.4で動作するPHPアプリケーションのほとんどはそのまま動作しますが、非互換な変更を含むリリースです。Ch…
Webノウハウシェア2013のスライド
5月24日(金)に開催されたWeb担当者向けのセミナーの「Webノウハウシェア2013」にBOSS-CON JAPANのPHP Security AlianceのCTOとして講演してきました。その講演のスライドです。 http://www.slideshare.net/yohgaki/boss-conphp Javascriptを利用した内部ネットワークのス…
MacBookのOSX、BootcampのWindowsアップグレード
最近の使い方だとMacBookはプレゼン、メモ、メール、それから時々コンパイルの確認とデバッグくらいに使っていす。 Macbook: Mountain Lionは入れられない型番 OS: Snow Loepard (OSX 10.6) + Windows Vista Ultimate(32bit) bootcamp 仮想化: Parallels 4.0 UN…
セッションID管理は結局どうすれば良いのか?
脆弱性やセキュリティ対策について技術的な話ばかりしていたので「それで結局PHPのセッション管理どうすれば良いの?」と思われた方も多いと思います。簡単にまとめます。漏れや追記した方が良い事などがあったらご指摘ください。 (さらに…)
セッションフィクセイションはアダプション脆弱性修正で防御可能
古いエントリを編集すると議論の流れが分かりづらくなるので、前のエントリをベースに新しいエントリを作って議論します。このエントリではアダプション脆弱性を修正すると、どのようなフィクセイション(ハイジャック)から防御されるのか解説します。安全なセッション管理には適切なユーザスクリプトが欠かせないので、全て防御できるわけではありませんが、有用性は理解頂けると思いま…
セッションアダプションとセッションフィクセイションとセッションハイジャックの違いとは
徳丸さんがセッションアダプションをなくしても、セッションハイジャックが出来るのでsession_regenerate_id(true) (trueを付けると古いセッションデータは削除される)をしなければならないという記事を書かれています。 セッションアダプションがなくてもセッションフィクセイション攻撃は可能 http://tumblr.tokumaru.or…
セッションアダプション脆弱性がないセッション管理が必要な理由
徳丸さんから「ブログ読みました。サンプルも動かしました。問題は分かるのですが、セッションアダプションがないPHPだと、何が改善されるのかが分かりません。教えて下さい 」とあったのでツイッターで返信するには少し長いのでこちらに書きます。まだ直していない脆弱性を詳しく解説するのはあまりよくないのですが、今なら影響を受けるアプリはほぼないと思うので構わないでしょう…
PHPのセッションアダプション脆弱性は修正して当然の脆弱性
PHPのセッションアダプション脆弱性がどのように影響するのか、広く誤解されているようです。セキュリティ専門家でも正しく理解していないので、一部のPHP開発者が正しく理解しなかったのは仕方ないのかも知れません。 Webセキュリティの第一人者の一人である徳丸氏は「PHPのセッションアダプション脆弱性は脅威ではない」と書いていますが、いろいろ間違いです。私は200…
知っているようで知らないプリペアードクエリ
PostgreSQL Advent Calender 2012用のエントリです。 PostgreSQLや他のDBMSを利用していてプリペアードクエリを知らない方は居ないと思いますが、プリペアードクエリを使いこなす為のTIPSです。役に立つかどうか、は多少疑問ですが、内部がどうなっているか知っているとなにかの役に立つかも知れません。時間的制約で多少端折っている…