タグ

CSRFに関するbigwestのブックマーク (9)

  • node.JsにおけるCSRF対策 | DevelopersIO

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

    node.JsにおけるCSRF対策 | DevelopersIO
  • XMLHttpRequestを使ったCSRF対策 - 葉っぱ日記

    合わせて読んでください:Flashと特定ブラウザの組み合わせでcross originでカスタムヘッダ付与が出来てしまう問題が未だに直っていない話 (2014-02/07) XMLHttpRequestを使うことで、Cookieやリファラ、hidden内のトークンを使用せずにシンプルにCSRF対策が行える。POSTするJavaScriptは以下の通り。(2013/03/04:コード一部修正) function post(){ var s = "mail=" + encodeURIComponent( document.getElementById("mail").value ) + "&msg=" + encodeURIComponent( document.getElementById("msg").value ); var xhr = new XMLHttpRequest(); xhr

    XMLHttpRequestを使ったCSRF対策 - 葉っぱ日記
  • blog.ishinao.net

    CSRFとか、わかりにくい言葉をわかりにくいままに使っているから、いまいちちゃんと知識が広まらないし、対策もひろまらないんじゃないか。 CSRFを「よそのサイトの機能を呼び出す攻撃」とかひらいて表記するようにすれば、もうちょっと雰囲気が伝わるんじゃなかろうか。 よそのサイトの機能ってのは、ごく普通のサイトだったら「メール送信フォーム」とか「掲示板」とか「コメント投稿」とか、そんなもののこと。 高機能なサイト、たとえばmixiとかFacebookとかのSNSなんかだと、友達登録とかメッセージとかいろんな機能がある。 そういう機能は、サーバー上で動作するプログラムによって動いているんだけど、サーバー上のプログラムに指示を出すのは、Webブラウザからのリクエスト。 Webブラウザからサーバーにリクエストを出す一番簡単な方法は、URLを呼び出すこと。 ブラウザのURL欄にごちゃごちゃ書いてリターン

  • CSRFで強制ログインさせるというアイデア - ぼくはまちちゃん!

    こんにちはこんにちは!! 今日はCSRF脆弱性のちょっとした話です! このCSRFってなにかっていうと、 サーバーへのリクエストを『誰かに勝手に送らせる』っていうセキュリティがらみの攻撃手法のひとつ。 わかりやすい例だと、 HTMLの画像タグを以下のようにしたページを誰かに教える。 <img src="何々SNSの足跡.php" width="1" height="1"> そうすると、そのページを「見た人」が何々SNSの足跡.phpにアクセスしたことになる。 ※詳しくはこちらのマンガで → [はまちちゃんのセキュリティ講座]ここがキミの脆弱なところ…! : 第2回 しーさーふって何ですか? CSRFってこんな風に、 「ログイン済みの人に何か操作させる」ってイメージが強くて、 対策する側もまた、「既にログイン済みの人を守る」ような考えが強いんだよね。 例えば、勝手に日記に投稿させないように対

    CSRFで強制ログインさせるというアイデア - ぼくはまちちゃん!
  • Easy CSRF Key - PHPでお手軽にCSRF対策するやつ

    (つかいかた) 1. 適当にrequireする。 require 'easy_csrf.php'; 2. 適当にsession_start()しておく。 session_start(); 3. (HTML) submitの手前に次の一文をいれる <input type="hidden" name="<?= EasyCSRF::KEY_NAME ?>" value="<?= EasyCSRF::generate() ?>" /> 4. データを受け取る箇所で次のようにする if (! EasyCSRF::check($_POST[EasyCSRF::KEY_NAME])) { echo '送信されたデータが、なんかおかしいです'; die(); } コード (こぴぺして使おう!) <?php // easy_csrf.php // by Hamachiya2 // 2012.02.15 cl

  • 5分でできるPHPセキュリティ対策 - ぼくはまちちゃん!

    こんにちはこんにちは!! Webプログラミングしてますか! よく「PHPセキュリティがダメ」とか言われてるよね。 でもそれって、べつにPHPが悪いんじゃなくて、 たぶん、セキュリティとかが、まだよくわからない人が多いだけなんじゃないかな。 がんばって勉強しようと思っても、なんだか難しい理屈が並んでいたりするしね…。 なので今日は、セキュリティ対策について、 「これだけやっとけば、わりと安全になるよ」ってことを、初心者むけに、大雑把に書いてみます! 理屈がわからなくても、最初はコピペでも、 なにもやらないより、やったほうがきっとマシになる! 1. XSS対策 動的なものを表示するとき、全部エスケープすればokです! (NG) あなたの名前は <?= $name ?> ですね! ↓ (OK) あなたの名前は <?= htmlspecialchars($name, ENT_QUOTES) ?>

    5分でできるPHPセキュリティ対策 - ぼくはまちちゃん!
  • CSRF対策のトークンをワンタイムにしたら意図に反して脆弱になった実装例

    補足 この記事は旧徳丸浩の日記からの転載です(元URL、アーカイブはてなブックマーク1、はてなブックマーク2)。 備忘のため転載いたしますが、この記事は2011年1月27日に公開されたもので、当時の徳丸の考えを示すものを、基的に内容を変更せずにそのまま転載するものです。 補足終わり 橋口誠さんから今話題の書籍パーフェクトPHP (PERFECT SERIES 3)を献いただきました。ありがとうございます。このエントリでは同書のCSRF対策の問題点について報告したいと思います*1。 書では、CSRFの対策について以下のように説明されています(同書P338)。 CSRFへの対応方法は、「ワンタイムトークンによるチェックを用いる」「投稿・編集・削除などの操作の際にはパスワード認証をさせる」などがあります。一番確実な方法は両者を併用することですが、ユーザ利便性などの理由から簡略化する場合で

  • OpenIDのライブラリにはCSRFに脆弱な物が多い

    (Last Updated On: 2018年8月8日)GNUCitizenによると CSRF – It comes very handy. It seams that no matter how much you talk about it, very few pay attention on the problem. And it is not a problem that you can afford to have. And among the XSS issues, which most OpenID libraries have, CSRF (Cross-site Request Forgery) seams to be the most pervasive form of attack. http://www.gnucitizen.org/blog/hijacking-ope

    OpenIDのライブラリにはCSRFに脆弱な物が多い
  • クロスサイトスクリプティング(XSS)とCSRFの違い早分かり - ockeghem(徳丸浩)の日記

    昨日の日記で、DK祭りで使われている脆弱性がXSSかCSRFかという問題になった。どうも、XSSとCSRFがごっちゃになっている人もいるように見受けるので、簡単な整理を試みたい。 XSSとCSRFには似た点がある。 どちらも「クロスサイト」という言葉が先頭につく なりすましのようなことが結果としてできる どちらも受動型攻撃である それに対して、もちろん違う点もある。専門家から見れば「似てるも何も、そもそも全然違うものですよ」となるのだろうが、現に混同している人がいるのだから紛らわしい点もあるのだろう。 私思うに、XSSとCSRFの決定的な違いは、以下の点ではないだろうか。 XSSは攻撃スクリプトがブラウザ上で動くが、CSRFはサーバー上で動く このため、XSSでできる悪いことは、すなわちJavaScriptでできることであって、攻撃対象のCookieを盗み出すことが典型例となる。一方、CS

    クロスサイトスクリプティング(XSS)とCSRFの違い早分かり - ockeghem(徳丸浩)の日記
  • 1