タグ

sessionに関するwakuworksのブックマーク (8)

  • キャッシュ制御不備の脆弱性にご用心

    古い書籍に掲載されたPHP記述の掲示板ソフトを動かしていると、ログアウト処理がうまく動作していないことに気がつきました。チェックの方法ですが、ログアウト処理の脆弱性検査の簡単なものは、「安全なウェブサイトの作り方」別冊の「ウェブ健康診断仕様」に記載されています。 (J)認証 ログアウト機能はあるか、適切に実装されているか ログアウト機能がない、あるいはログアウト後「戻る」ボタンでセッションを再開できる場合 この仕様書にある通り、『ログアウト後「戻る」ボタンでセッションを再開できる』状態でした。 おそらくセッション破棄がきちんと書かれていないのだろうと思いログアウト部分のソースを見ると、以下の様な処理内容でした(オリジナルからはリライトしています)。 <?php // logout.php require_once('common.php'); // 共通の設定・処理 session_sta

  • 高木浩光@自宅の日記 - CSRF対策に「ワンタイムトークン」方式を推奨しない理由

    水色の四角は画面を表し、白抜き実線枠の四角はボタンを表す。 これを、Webアプリという実装手法を選択する場合に特化すると、図2のような遷移図が描ける。 実線矢印はブラウザが送信するHTTPのrequest(ヘッダおよび、POSTの場合はボディを含む)を表し、黄色の丸がサーバ側での1アクセスの処理を表し、点線がその処理結果を返すHTTPのresponse(ヘッダおよび、HTML)を表す。responseの上の文はHTMLの内容を説明するものである。黄色の丸の中の文は処理内容の説明であり、ここから複数のresponse矢印が出ている場合、処理の結果によって遷移先の画面が異なる場合であることを表し、破線の白抜き四角がその分岐の条件を概説している。 この図で例に用いているのは、ECサイトやblogサービスなどに見られる典型的な「登録個人情報変更」の機能である。「メインメニュー」画面の「登録情報変更

  • CSRF対策のトークンの生成方法について

    HARUYAMA Seigo @haruyama @php_recipe 2009年に md5(uniqid(mt_rand(), TRUE)) なんて書いてる書籍は問題外だと思います.

    CSRF対策のトークンの生成方法について
  • 携帯でのセッション管理 - PHP

    ■ 携帯でのセッション管理【php.ini 設定】 セッション管理と言うとCookieを利用するのがPCでは一般的ではあるが、携帯ではCookieが利用できないキャリアが存在するため、URLに付与するセッション管理となってしまいます。 各キャリアのCookie対応は DoCoMo:Cookie対応なし au:Cookie対応している SoftBank:一部Cookie対応している さすがにDoCoMo端末を対象外とする携帯サイトは作れないですよね。。。 さて、セッションを利用するために php.ini を設定していきましょう。 (PHPはデフォルトCookieセッション管理するがデフォルトとなっています) 1.php.ini [Session] セクションの設定(Windows環境) ・session.save_path = "C:\session\tmp" セッション情報ファイルを保存す

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

    (Last Updated On: 2018年8月13日)PHP Advent Calender用のエントリです。 PHPのセッション管理は非常に簡単です。セッションをsession_start()で開始して$_SESSION配列を使うだけです。便利で簡単なセッションモジュールですがセッションアダプションに脆弱であるため、一般に言われてる「ログインする時にはsession_regenerate_id()を呼ぶ」コーディングではセッションアダプションに脆弱になってしまいます。 まずは危険性と対策を紹介します。 セッションアダプションの危険性 セッションアダプションとは外部などから設定されたセッションIDを受け入れ初期化する脆弱性です。一番分かりやすい例はTrans SIDを有効にして http://example.com/index.php?PHPSESSID=1234567890 とアクセ

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

    fukata.org Blog Github Twitter Facebook Instagram YouTube トラハ 旅人向けブログポータル WebScraper ブラウザの操作を自動化 Text Image ブラウザベースでテキストを画像に変換

  • 【PHP】セッションタイムアウトの時間を設定する

    実際にどの設定でセッションタイムアウトが制御されているのか分からなかったので、調査したときのメモ。 基はブラウザ側でクッキーを使えないとセッションは使えない。携帯の場合はこちらの記事を参考に。 そのクッキーの有効期限は最初にサーバにアクセスしたときにサーバ側で設定可能。多くのセッション管理のプログラムはセッションスタート時に session_set_cookie_params($lifetime); を実行して有効期限を設定している。 デフォルト値はphp.iniにある session.cookie_lifetime の設定(秒)。lamppやhttpdのインストール直後は0(ブラウザが閉じるまで有効)となっている。 session.cookie_lifetime = 0 のとき(「セッションクッキー」というらしい)はどの設定でセッションを管理しているかというと、それが session.

  • mod_pythonのSession – ログ取得ツール

    ここ最近、mod_pythonに凝りはじめてます。 mod_pythonではPHP等と同様、セッション管理を勝手にやってくれる。ということになっているが、デフォルトではセッションCookieにExpiresをつけて送信しないため、ブラウザを閉じるとまたログインし直す羽目になる。そういうわけで1ヶ月くらいは、この状態でセッションを使っていた。 まあそれはそれでポリシーとしては問題ない場合が多いかもしれないけど、「おれはブラウザを閉じてもログアウトしたくないんだよ」という人にとっては迷惑な仕様になる。単に自分だけで使うために簡単な認証をかけているだけなのだが、私の場合は京ぽんのOperaでログインして遊んだりしているが、電話はメールを使うためにもブラウザはすぐに閉じてしまう。そうやっていると毎回パスワードを入力する羽目になり、非常に面倒だった。しかも京ぽんOperaの場合、ユーザ名を漢字かな、

  • 1