タグ

ブックマーク / hoshikuzu.hatenadiary.org (6)

  • this.valueの理解は私には難しい - hoshikuzu | star_dust の書斎

    属性の中で記述されている『this』が一体全体何を指すのかということを理解することは初心者の私にはとても難しいです。以下、onmouseover属性中の『this.value』が何を指しているのかについての例をあげてみます。 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html lang="ja"> <!-- saved from url=(0008)http://a --> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <meta http-equiv="Content-Script-Type" content="text/javascript"> <link rel="contents"

    this.valueの理解は私には難しい - hoshikuzu | star_dust の書斎
    kazuhooku
    kazuhooku 2009/04/19
    this は obj.foo() として呼ばれた時は obj を、foo() として呼ばれた時はグローバルを指す、と言えばいいのかなぁ (除 Object.prototype.(call|apply))
  • JSONデータをクロスドメインアタックから守るためにwhile(1)を使うことをやめましょう - hoshikuzu | star_dust の書斎

    これはなに 既にご存知の方がいらっしゃるかどうかも知りませんが今さっき関連文献に行き当たって驚愕したので念のためにメモを書いておきます。私はメーリングリストなどに加入していませんので論議が済んでいるかどうかも知らないのです。もしもウェブ上に解説記事があるようでしたら逆に私に是非とも教えてください。 JSONデータの先頭に JSONデータの先頭にwhile(1)を置いておくことで無限ループを発生させておいて、受動的攻撃のページの悪意あるscriptの実行を失敗させるというアイデアには欠点があるということを、先程とある文献から知りました。これはwhile(true)についても同様です。JavaScriptは柔軟で強力な言語ですから、ブラウザがJavaScriptエンジンをまじめに実装しているのであれば、アタックのチャンスを与えていることになります。しかしこれはブラウザの脆弱性とは捉えられません

    JSONデータをクロスドメインアタックから守るためにwhile(1)を使うことをやめましょう - hoshikuzu | star_dust の書斎
  • JSONに関する妄想ばなし2 - 2008-04-14 - hoshikuzu | star_dust の書斎

    XSS対策としてのいわゆるJavaScriptエスケープについての拙なる論考を、当日記で以下に記載したことがあります。 http://d.hatena.ne.jp/hoshikuzu/20071011#p1 さて、商用などでウェブアプリケーションを作成する場合には、おそらくHTMLでページを出力し、ピュアなXHTMLでページを出力することはほとんどないかもしれません。ユーザがIEを使っている限り、ピュアなXHTMLとして読んでくれないからです。 対策としてHTTPのrequestを参照してブラウザごとの判断をしてきまじめにコンテンツネゴシエーションしているかもしれませんが、それはさておき。 ところで、IEが進化してピュアなXHTMLの解釈をしてくれる時代が来たとしましょう。ウェブアプリケーション側にも、XHTMLでページを出力する試みをするものが出てくるかもしれません。 そんな時代には、場

    JSONに関する妄想ばなし2 - 2008-04-14 - hoshikuzu | star_dust の書斎
  • 痛い - hoshikuzu | star_dust の書斎

    前頭洞内部に水。激痛。イミグラン他鎮痛剤効かず。2/29より入院中。

    痛い - hoshikuzu | star_dust の書斎
    kazuhooku
    kazuhooku 2008/03/01
    ひぃぃ。お大事に
  • 2007-12-17

    IEのstyleで使われる?expression() についてのメモが机の中から出てきました。なにかの記事を読んであとで調べて見ようとメモしたものの忘却の彼方に・・・というメモ。 style="zoom:expression();" の括弧の中に、 this.style.zoom||() があって、そのまた括弧の中に this.style.zoom=1,alert('xss') とか書いてある風味でした。なんじゃこのメモは! 最初に驚いたのは、expression()の中みをカンマでくぎる風味になっている風味なのであって、これにはちょっと驚きました。なるほど風味。 2番目に驚いたのは、ifの代わりに||を使っているあたり。盲点。 3番目に驚いたのは、これだと、alert('xss')が1回しか発動されないところなのでした。なるほどなるほど風味。でもどうしてこうなるのかわからない風味。 いず

    2007-12-17
    kazuhooku
    kazuhooku 2007/12/18
    自前でパースして再構築する方式じゃないとダメよね ↑うぉぉぉ。マジですか...
  • サムロイドとその12歳の息子が船上の余興で行った手品のタネ - hoshikuzu | star_dust の書斎

    あなたにはこの手品のタネがわかりますか? パズル好きなら誰でも知っている高名なパズル作家のサム・ロイドと彼の12歳の息子が船旅をしているときに余興で手品をしてみせたことがあります。プロの手品師を含む観客の前で見事に手品は成功しました。あろうことか、手品師にもそのタネはまったくわからなかったのです。 息子は目隠しをされ、観客とは反対の方向に背を向けます。何がおきているか見えないのですね。サム・ロイドは、観客のひとりにトランプを渡し、よくシャッフルをさせます。そのトランプの束から適宜1枚を客にひかせます。ロイドがその1枚を受け取り、観客全員に見せます。 すると、めかくしをされた息子が、そのカードを言い当てるのです。これは何回やっても成功します。 プロの手品師がわからなかったこの手品のタネをあなたならわかるかもしれません。すでにすべての情報はこの文章に記しました。 タネあかしのヒントです。私はこ

    サムロイドとその12歳の息子が船上の余興で行った手品のタネ - hoshikuzu | star_dust の書斎
    kazuhooku
    kazuhooku 2007/12/14
    腹話術?
  • 1