タグ

sessionに関するhidemailのブックマーク (9)

  • #356 Dangers of Session Hijacking - RailsCasts

    一度ログインすると、その後はもう秘密情報をやり取りしないのでHTTP接続に戻すということがよく行なわれます。しかしこの場合、アプリケーションがセッションハイジャックの被害にあう可能性があります。別名sidejackingと呼ばれるこの手法は、2年ほど前にFirefoxの機能拡張のFiresheepによって知られるようになりました。これを利用すると、公共のWiFiスポットでローカルネットワークのトラフィックをモニタリングして、他のユーザのセキュアでない接続で行なわれるセッションをハイジャックすることが可能になります。 Firesheepを使わずにRailsアプリケーションからセッションがハイジャックされる様子を実際に見てみましょう。今回はtcpdumpコマンドを使用します。これはMac OS Xに含まれているコマンドですが、他のOSにも似たようなコマンドがあります。このコマンドを使ってネット

  • SSL で暗号化しても Cookie で secure 属性を指定しないと盗聴される可能性があるかもしれない

    堅牢なお問い合わせフォームを作ることになり、規定書に Cookie には secure 属性を指定してねとありました。secure 属性なんて初めて聞いたので、ちょっと調べてみたところ、secure 属性以外にも expires 属性とかいろいろありますけど、知ってるやと思ったらこれも危険に繋がるみたい。 secure 属性って何 これを指定すると HTTPS の通信時のみクッキーを送信します。逆に指定しなければ HTTPS の時に作った Cookie が HTTP の時に見ることができてしまい、盗聴されることに繋がりますね。 expires 属性って何 クッキーの有効期限を指定するものなんですが、指定しなければブラウザを閉じたときは Cookie は破棄になるんですが、有効期限を指定した場合に危険があるみたいです。 この属性が指定されていなければ,ブラウザを起動していないユーザーが被害に

  • sessionに有効期限を設定する時の試練 - ザリガニが見ていた...。

    Railsを使っていて自分で直接cookieを設定するという状況はほとんどなく、大抵はsessionをハッシュ感覚で、便利に利用してきた。Rails2.0以降はsessionの保存先はデフォルトでcookieになり、そのまま利用する限りcookieの有効期限は空欄のままなので、ブラウザを終了するまでsessionは保持されることになる。そして、次回ブラウザを起動すると、期限切れのcookie(その中にsessionが保存されている)は削除されている。 ほとんどの場合、上記デフォルト設定のまま使っていたか、またはrestful_authenticationなどに頼りきりだったので、いざ自分でsessionに有効期限を設定しようとした時、苦労してしまった。とても基的なことであるのに...。 config/environment.rbでの設定 2009-01-01 00:00:00まで有効にし

    sessionに有効期限を設定する時の試練 - ザリガニが見ていた...。
  • RailsのSessionが良くわからないのでコードを追いかけはじめました : やむにやまれず

    2007年08月03日14:57 by 山崎泰宏 RailsSessionが良くわからないのでコードを追いかけはじめました カテゴリRuby Tweet sparklegate Comment(9)Trackback(0) 最近APIのマニュアルを読んでも良くわからないことが多くなってきた。なので、ぼちぼちRailsのソースを読む機会が増えて来ました。 やっぱりオープンソースってすごいですよ。 完全に透明なプロダクトって最後は中を見てしまえるという安心感があります。 この安心感って重要で、リチャードストールマン氏がその昔プロプライエタリなプリンタドライバのバグを直せなくてイライラしたって言っていた理由がよくわかります。 今回はRailsのセッションについて調べました。追いかけていくと分かるのですが、セッション関連の処理は非常に大掛かりです。 るびまにも書かれている通りチューニングのポイン

    RailsのSessionが良くわからないのでコードを追いかけはじめました : やむにやまれず
  • RailsでTwitterのOAuth使ってみた - 言葉より大切なブログ

    参考にしたサイト RailsTwitterのOAuthを試す http://tech.lampetty.net/tech/index.php/archives/323 ありがとうございました。 ほぼこの通りですが、トークンの中身や、アクセス・トークンを取得した後にそれを使いまわすやり方に少し苦労したので備忘録メモ。 一応、キーは全て大文字のアルファベットに置き換えてあります。わかりづらいかもしれませんが。。予めご了承ください。 Callback 関数内の動作 request_token の生成 生成 request_token = OAuth::RequestToken.new( consumer, session[:request_token], session[:request_token_secret] ) session の中身 session {:session_id=>"SE

    RailsでTwitterのOAuth使ってみた - 言葉より大切なブログ
  • Rails2.3でActiveRecordのセッションを削除する

    キニナル (134) Ruby on Rails (101) Ruby (78) レシピ (49) ステーショナリー (48) python (42) オススメ (40) Google App Engine (36) WEBサービス (28) ActiveScaffold (26) 日常 (24) ファッション (22) Django (17) Raspberry Pi (17) トレたま (17) jQuery (16) 生活 (16) ActionScript (15) Android (14) PC (13) 開発環境 (13) 雑貨 (13) MySQL (12) javaスクリプト (12) 子どものおもちゃ (12) 品 (12) モバイル (11) 携帯サイト (11) (10) 電子工作 (10) SOBARCO (9) キッチン (9) iアプリ (8) クラフト

  • kinopyo blog - Learning through Writing

    I was watching The Last Dance, Michael Jordan’s Netflix documentary, last year when I returned to work from four-month-long paternity leave. It was a great show and brought back all of the joys I had when watching Chicago Bulls in the 90s. And it still got me to think till today, what if my engineering team were a sports team. Give this idea a shot. For an engineer in an IT company, you don’t play

  • PHPで安全なセッション管理を実現する方法

    _ 残り容量が数十Mバイトになっていた PCがなんかくそ遅いなーと思ってふと空きディスク容量をみたら、残り数十Mバイトまで減っていた。Folder Size for Windowsで各ディレクトリ単位のディスク使用量をながめてみたところ、 Thunderbirdでimapでアクセスしているアカウントのデータフォルダに、なぜか1GバイトオーバーのINBOXファイルがあった。なにこれ? 削除したけど別に動作には支障はなし。 puttyのlogが無限に追記されたよ……。数Gバイト。 昔ダウンロードしたCD/DVD-ROMのisoイメージファイルが、そこかしこに消されず残ってたよ。10Gバイトオーバー。 あと、細かいテンポラリディレクトリの中身とか消したら、30Gバイトくらい空いた。そこまでやって久しぶりにデフラグを起動したら、表示が真っ赤(ほとんど全部断片化されている)だったので、最適化実行中。

  • 8.1 セッションの開始

    8.1 セッションの開始 ■セッション Webサーバは、あるWebページから別のWebページへのアクセスは独立の状態として扱います。同じページへ再度アクセスしても独立の状態として扱います。ところがWebアプリケーションでは、一つのサービスを構成するWebページへのアクセスは同一の状態として扱いたい場合があります。このような状態を「セッション」といいます。PHPにはセッション管理機能がありこのような状態を管理することが可能となります。 ■セッションの開始と管理 あるページにアクセスした時点からセッションの管理を始めるには、そのページの冒頭でsession_start()関数を呼び出します。引数は不要です。session_start()関数が呼び出されると、Webサーバ内でセッションIDが生成され、Webサーバ内に保存されます。セッション名はsession_name()関数で確認できます。セ

  • 1