タグ

csrfに関するm_shige1979のブックマーク (12)

  • JSF (mojarra) ステートレスビューを試してみる - n-agetsumaの日記

    JSF2.2のビッグチケットとして盛り込まれたステートレスビューですが、HttpSessionへのアクセス量を減らせるメリットの一方、制約事項もあります。Wildfly-9.0.0.CR2(mojarra-2.2.11)で色々と試してみたので以下にまとめます。 ステートレスビューの使い方 <f:view transient="true">で囲うだけで、対象のビューのフォーム値などの状態をセッションに保持しなくなります。 <html xmlns="http://www.w3.org/1999/xhtml" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html"> <f:view transient="true"> <h:head> <title>JSF Hello World</title>

    JSF (mojarra) ステートレスビューを試してみる - n-agetsumaの日記
  • JSFのCSRF対策 | KATSUMI KOKUZAWA'S BLOG

    だいぶ前にリリースされたJSF 2.2ではCSRF対策の機能が追加されました。 そこで、JSFをどのように利用している場合にCSRFの脆弱性が発生するのかと、 JSF 2.2で追加されたCSRF対策を実施すると、この問題をどのように防げるのかを確認してみます。 環境 OS: Mac OSX 10.9.4 Java: Java(TM) SE Runtime Environment (build 1.8.0-b132) メモリ: 4GB WildFly 8.0.0.Final アプリを作る CSRFの脆弱性がある、といわれても具体例がないとなかなかイメージするのが難しいかもしれません。 そこで、ここでは実際に攻撃を受けるアプリを作り、脆弱性を露呈されてみたいと思います。 コードの構成は下記のようになります。 JSFCSRFSample +- src | +- main | | +- java

  • 超絶技巧CSRF / Shibuya.XSS techtalk #7

    CSRF, HTML Form Protocol Attack, Cross-protocol scripting attackについて

    超絶技巧CSRF / Shibuya.XSS techtalk #7
  • 書籍『Webアプリケーションセキュリティ対策入門』のCSRF脆弱性 | 徳丸浩の日記

    図のように、大垣のCSRF対策方式(以下、「大垣方式」と表記)では、トークン(同書ではフォームIDと表記)をランダムな鍵として生成(②)し、それをフォームの隠しフィールドとDBに保存します(③、④)。ユーザーがフォームをサブミット(⑤)すると、送信されてきたトークンがDB上に存在するか確認(⑥)し、あればトークンを削除(⑦)して、サーバー上の処理に進みます。⑥でトークンがDBにない場合は、エラーとして処理には進みません。 一般的なCSRF対策手法との違い 大垣方式が一般的なCSRF対策と異なる点は以下の2点です。 フォームの2重投稿防止機能を兼ねている トークンがセッション変数ではなくDBに保存される トークンの有効範囲は? トークンがDBに保存される場合、トークンの有効範囲が気になるところです。大垣および第二版のソースを見ると、トークンを保存するテーブルの定義は以下の通りです。 CR

  • クロスサイトリクエストフォージェリ(CSRF)とその対策

    資料は、web アプリケーションにおける脆弱性のひとつ、CSRF (クロスサイトリクエ ストフォージェリ) の仕組みとその対策に関する説明資料です。 また、CSRF 対策のためのライブラリのいくつかについて、その概要と適用例も紹介しています。 Webアプリケーションを作成する開発者の方々が、CSRF 脆弱性に対する理解を深め、よりセキュアなWebアプリケーションの開発の一助となれば幸いです。 自習用の資料や勉強会での資料としてご活用ください。 - 改訂版+1: 図版や誤記の修正 (2015年10月20日) ※ コメントくださった皆様ありがとうございます! - 改訂版: JPCERT/CC Web サイトにて公開 (2015年10月6日) - 初版: OSC2015Hokkaido 講演資料 (2015年6月13日) Read less

    クロスサイトリクエストフォージェリ(CSRF)とその対策
  • ssig33.com - よく分からない人のためのセキュリティ

    いろいろと原則論はあるんですが。昨今のアプリケーションは複雑化し、扱う情報はよりセンシティブになり、そしてより幅広く使われるようになっています。よって「安全な」アプリケーションを作るために必要な知識はますます増える傾向にあります。 よく分かってない人は以下のことにとりあえず気をつけましょう 1. なるべく自分で作らない これは最も重要なことです。検索する、他人に聞く、自分で考えない。これは重要です。大抵の問題は他人が作ってくれた解決策を適用できます。 例えばセキュアな問合せフォームを作ることにしましょう。気をつけるべきことは以下のことぐらいでしょうか。 送信内容の確認画面を表示する場合、ユーザーの入力した値は適切にエスケープするように 送信内容をアプリケーションの DB に格納する場合には SQL インジェクションを防がなければならないので、プリペアドステートメントを用いる CSRF 対策

  • RailsのCSRF対策の仕組みについて - (2015年までの)odaillyjp blog

    先日、Rails で開発しているときに意図しない InvalidAuthenticityToken エラーが発生して、すごくハマってしまいました。そのときに Rails のCSRF対策の仕組みについて調べてみましたので、ブログに残しておきます。 Rails のCSRF対策 Rails が生成した ApplicationController には以下の記述があります。 class ApplicationController < ActionController::Base # Prevent CSRF attacks by raising an exception. # For APIs, you may want to use :null_session instead. protect_from_forgery with: :exception end protect_from_forg

    RailsのCSRF対策の仕組みについて - (2015年までの)odaillyjp blog
  • はてなにログインしてると人のブログを見ただけでユーザー名がバレる - 素人がプログラミングを勉強していたブログ

    11 August 2014: はてなのサポートから連絡がきた。 いつもはてなをご利用いただきありがとうございます。 ご指摘いただきました件につきまして、ただいま対応を検討しております。 第三者に悪用される可能性もございますので、 もし、脆弱性を確認された場合には、先に弊社にご連絡いただき、 脆弱性が修正されるまで、ブログなどで詳細を公開されないようご協力いただけますと幸いです。 もしなにかご不明な点などございましたらご連絡ください。 どうぞよろしくお願いいたします。 しかしサポートにはこの記事のURLしか送っていないし、既に(一部ユーザによるDDoSも含めて)89656のスターがつくほど閲覧されているので、この記事を消してもしょうがない。よって、このまま放置する。読者は修正されるまで、決して悪用しないでほしい。 テスト RSSで見てる人は直接開いてください はてブで指摘があったが、このペ

    はてなにログインしてると人のブログを見ただけでユーザー名がバレる - 素人がプログラミングを勉強していたブログ
  • node.JsにおけるCSRF対策 | DevelopersIO

    はじめに 現在参画中の案件ではNode.js + Expressを用いた開発を行っています。 開発を行っているのはWebアプリのため、当然セキュリティ対策も必要になってきます。 今回は、CSRF(クロスサイトリクエストフォージェリ)対策として、 ミドルウェアであるcsurfを検証しました。 CSRF(クロスサイトリクエストフォージェリ)とは Webサイトにスクリプトや自動転送(HTTPリダイレクト)を仕込むことによって、閲覧者に意図せず別のWebサイト上で何らかの操作(掲示板への書き込みなど)を行わせる攻撃手法。 CSRFとは 〔 クロスサイトリクエストフォージェリ 〕 【 XSRF 】 - 意味/解説/説明/定義 : IT用語辞典 この攻撃の特徴としては、利用者が攻撃者が用意したリンクやスクリプトにアクセスすることで、 来フローとは異なるフローでアクセスを行うといった点でです。 対策と

    node.JsにおけるCSRF対策 | DevelopersIO
  • AjaxにおけるCSRF攻撃対策 - バカンス駆動開発

    前回で近いうちにAjaxのセキュリティについて書きます!と宣言しましたが、あれはつまりCSRF攻撃の対策についてでした。今回はAjaxでCSRF対策を行う方法を書きます。 先に結論 Ajax通信におけるCSRF攻撃対策は通常の遷移時に施す対策と考え方はかわりません。 実装方法 ログイン時にトークンを生成しセッションオブジェクトにセットし、トークンをクライアントに送信 クライアント側のjsスクリプト内でトークンをAjax通信時に常に付加するように設定 サーバー側でAjaxで送信されたトークンの有無とセッションオブジェクト内のトークの一致を確認 ログアウト時にセッションは全て破棄 ここで生成するトークンはワンタイムではないです。ログイン時にずっと使いまわします。 ところで、パーフェクトPHPチルドレンとしては見逃せないエントリが CSRF対策のトークンをワンタイムにしたら意図に反して脆弱になっ

    AjaxにおけるCSRF攻撃対策 - バカンス駆動開発
  • Automatically adding CSRF tokens to ajax calls when using jQuery

    February 23, 2011 - 22:41 UTC   -   Tags: XSRF CSRF authenticity token When building a ajax based application, you want to protect any POST request against CSRF attacks. If you are using jQuery, then jQuery provides a lot of convenience methods for ajax calls ($.get(), $.post(), $.getJSON() etc.) and it would be a shame if you would have to duplicate adding CSRF tokens to all your ajax calls manua

  • "CSRF token missing or incorrect" while post parameter via AJAX in Django

    I try to post parameter like jQuery.ajax( { 'type': 'POST', 'url': url, 'contentType': 'application/json', 'data': "{content:'xxx'}", 'dataType': 'json', 'success': rateReviewResult } ); However, Django return Forbidden 403. CSRF verification failed. Request aborted. I am using 'django.middleware.csrf.CsrfViewMiddleware' and couldn't find how I can prevent this problem without compromising securit

    "CSRF token missing or incorrect" while post parameter via AJAX in Django
    m_shige1979
    m_shige1979 2014/05/21
    通常の画面の場合はトークンをそれぞれの画面で作るが1画面の場合は…。なんか別途工夫がいるかも。ajaxのみの1画面制御は慣れていないから大変。
  • 1