世界中の共有動画を横断検索。youku.com,youtube,tudou.com,Dailymotionに対応。・・・そんなサービスの開発者ブログ。

みんなの動画サーチ

個人メニュー
最近見た動画

サービス:みんなの動画サーチ   利用できる動画共有サイト : youku.com , youtube , tudou.com , Dailymotion

Ads by Google

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
--------(--)

PHPを使った開発におけるセッションハイジャック対策について

セッションハイジャック

 WEBアプリケーション内で値をページ間で持ちまわす方法はいくつかあります。その中でもよくあるのがセッションを使うものです。

 セッションとはユーザーに一時的なパスワードを発行し、そのパスワードを確認してサーバーに保存されているユーザー固有の情報を利用させるものです。パスワードはセッションIDと呼ばれます。セッションIDはクッキーに保存することが多いですが、クッキーが使えないときはURLの中に追加してGETで回します。

 ということは、このセッションIDをクラッカーに見破られるとそのセッションの持ち主を詐称されてしまうわけです。これがセッションハイジャックです。

 セッションIDを連番など推測しやすいものにしていると、この攻撃を受ける可能性が高くなるため、セッションを利用する場合は予測困難なセッションIDをユーザーに出すことが大事です。php付属のセッション関数を使えば簡単です。
 もしセッション関数では仕様に合わない場合はmd5()などの暗号化関数を利用して自分で暗号化します。

 また、同じセッションIDを使い続けていると盗まれる可能性が高くなるため、保持する情報の重要性に応じて有効時間(ライフタイム)を設けておくことも大事です。たとえば銀行のシステムですと、盗まれては大変なことになるため30分以下の値が設定されていることが多いです。みん動の場合は個人情報、機密情報などの重大な情報は持たないためセッションIDの寿命はとても長くなっていますが、これは例外です。
 phpのセッション関数を使っているなら、session_cache_expire (30);で30分に出来ます。デフォルトは3時間です。

 さらにセキュアにしたいならsession_regenerate_idをつかえばセッションIDをワンタイムパスワードのようにできます。ただしつくりによっては画面遷移次第で誤動作を起こしてしまうので注意が必要です。

 セッションハイジャックの方法には予測の他に盗聴がありますが、これは通信の暗号化によって対抗することが出来ます。SSLの利用するわけです。漏洩がシリアスな結果を生む情報を取扱う場合は暗号化を利用するのが適切です。

 ちなみに特にセキュリティの重要性が高い銀行のWEBシステムは、SSLによる通信暗号化+短いセッション有効時間がほぼ必ずと言っていいほど使われています。さらに+αとしてワンタイムパスワードや電子証明書、専用回線の利用が行われることがあります。

tag : php セキュリティ

2008-03-25(Tue)

 みんなの動画サーチ 現在の人気動画

RSSフィード
最近の記事
月別アーカイブ
カテゴリー
逆アクセスランキング
プロフィール

Author:ナカタツ
 共有動画サーチの開発をやっているフリーランサーです。プログラム歴は趣味で使っていた頃も合わせるとちょうど今年で10年目。最近はPHPばかり使ってます。
 私に興味を持ってくださる方はお気軽にご連絡ください。Skypeでお話できる人歓迎。メールフォームはこちら

カレンダー
10 | 2009/11 | 12
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 - - - - -

みんなの動画サーチへ戻る

カテゴリ:芸能・テレビ | 音楽 | アニメ | おもしろ | 神・衝撃 | ゲーム | 動物 | スポーツ | 時事ニュース | 自然・歴史 | 車・バイク | セクシー


アクセス解析 アクセスランキング
  • seo

Powered by FC2 Blog

FC2Ad

FC2ブログ

Copyright © みんなの動画サーチ開発者ブログ All Rights Reserved.