タグ

2011年6月4日のブックマーク (4件)

  • Webアプリケーションのログについてあれこれ - 酒日記 はてな支店

    社内勉強会で話したスライドをおいておきます。(IE以外のブラウザ推奨) http://dl.dropbox.com/u/224433/kayac-01-log/index.html 初心者向けというか、かなりざっくりしたスピリチュアルな話でございます。 要約すると、 後で役に立つからログは出しておけ ログ捨てるな 捨てたら椅子投げるぶん殴る という感じですね。

    Webアプリケーションのログについてあれこれ - 酒日記 はてな支店
  • webアプリケーションの脆弱性とは? - OKWAVE

    こんにちは! 「フォームを勝手にサブミットしてしまう」 その認識でだいたいあってます!たぶん! そのmixiの例だと、 入力画面 → (送信1) → 確認画面 → (送信2) → 完了 ってなるわけですが、 いくら確認画面が間にあったところで、 (送信2)の部分を「勝手にサブミット」しちゃえばいいわけです。 ※ただし今のmixiや、ちゃんとしたwebサービスは送信時にトークンをつけるとかCSRF対策してるのでできません 実際の攻撃の例としては、mixiやtwitterなどの多くの人が繋がっている投稿型サイトで、 「こんにちはこんにちは!! このリンク先すごいよ! http://~」 のような書き込みをしておき、 そのリンク先でformJavaScript等で「自動的に勝手にサブミット」してしまいます。 画面には何も表示されなくてもかまいません。 そしてさらに勝手に書き込む内容を 「こんに

    webアプリケーションの脆弱性とは? - OKWAVE
  • 関数、オブジェクト、クロージャ - FAX

    (thanks to id:koyachi、del.icio.us/rtk2106) OOPとFPと。関数、オブジェクト、クロージャの使い分けについて考えます。 関数型が良いのか、オブジェクト指向が良いのか、知りたいと思っていました。色々なページを読み、現時点で一応の答えを得ました。 カウンタを例にして、関数、スコープ、オブジェクト、クロージャの順に見て行きます。関数関数は処理です。入力と出力があります。関数型プログラミングでは、関数同士の入力と出力を連結しプログラムが構成されます。 var current = 0; function next(v){ return v + 1 } function previous(v){ return v - 1 } ok( 1 == ( current = next(current) ) ); ok( 2 == ( current = next(cu

    IwamotoTakashi
    IwamotoTakashi 2011/06/04
    おもしろい! オブジェクトに「処理の引数の型を制限する働きもあります」という発想はなかった
  • L'eclat des jours(2011-06-03)

    _ RESTとCSRF RESTの特性のサーバサイドステートレスという点にこだわりすぎると、CSRF自由自在となってしまう。というよりもどこからでも破壊的なメソッドを受け付けるようにしているのだから、CSRFではなく、単にそういうAPIだということだ。 それらのAPIの最初の時点で認証があれば、少なくともその操作を許可されているのだから(あるいは認証された領域外は許可されていないのだから)あまり考える必要はないと思う。 そうではなく、認証されていないクライアントが所定の遷移に従わなければ破壊的な操作を行えないようにするにはどうすれば良いのだろうか。 すると、HATEOASを使うということを思いつく。いきなり、POST/PUT/PATCH/DELETEできるというAPIでは無く、最初は必ずクライアントからのGETで始まるとする。そして各操作をeditリレーションのリンクで示す。たとえばGET