タグ

JavaScriptとxssに関するgraySpaceのブックマーク (4)

  • new XSS pattern with jQuery

    XSS with $(location.hash) demo Click this link. It works on IE, Firefox, Chrome, Opera. In Safari, location.hash is percent encoded, not work. why? $("#id") is css selector, $("<img>") is createElement, and $("#<img>") is createElement too. how to fix in your library var hash = "#" + location.hash.replace(/[^\w]/g, ""); if ($(hash).size()) { ... } or patch to jQuery - quickExpr = /^(?:[^<]*(<[\w\W

  • DOM APIとinnerHTMLは等価ではない

    最近、徳丸をじわじわ読んでいるのですが、DOM based XSSの話が書いてあったので、少し言及しておこうと思います。 徳丸から引用 DOM based XSSと呼ばれるXSSがあります。これは、JavaScriptによりクライアント側で表示処理する箇所があり、そこに脆弱性がある場合のXSSです。 サンプル書いてみました。 <script> document.write(unescape(location.href)); </script> こいつを適当なファイル名で保存して、domxss.html#<script>alert("hello")<script>などのURLでアクセスするとalertが表示されるはずです。任意のスクリプトが実行可能な状態ってことですね。任意のスクリプトが実行可能ってことは、セッションクッキー盗み放題で、他人に成り済まして買い物できちゃったりするレベルです

    DOM APIとinnerHTMLは等価ではない
  • DOM based XSS Prevention - OWASP Cheat Sheet Series

    Introduction Index Alphabetical Index ASVS Index MASVS Index Proactive Controls Index Top 10 Cheatsheets DOM based XSS Prevention Cheat Sheet¶ Introduction¶ When looking at XSS (Cross-Site Scripting), there are three generally recognized forms of XSS: Reflected or Stored DOM Based XSS. The XSS Prevention Cheatsheet does an excellent job of addressing Reflected and Stored XSS. This cheatsheet addre

  • ma<s>atokinugawa's blog

    http://masatokinugawa.l0.cm/ 最近僕が発見し、修正されたTwitterの脆弱性を3つ紹介します。 1.旧Twitterの文字列処理に絡んだXSS 去年の夏くらいに、Twitter Web上で &#x80; 〜 &#xFF; の文字参照が含まれるツイートをXMLHttpRequestで読み込んだ際に表示が乱れるという問題に気付き*1、その時はこれは脆弱性には繋がらないだろうという判断をしたのだけど、今年の4月になって改めて調べたところ貫通しました。 表示が乱れるというのは、&#x80; 〜 &#xFF; の文字参照が含まれるツイートがあると、一部の文字が\XXXXの形式に化けたり、ツイート周辺の「"」が「\"」になったりするものだったのですが、今回は「"」が「\"」になる点が脆弱性を発生させていました。 この条件でXSSさせようと思ったら、ツイートを細工してURL

    ma<s>atokinugawa's blog
  • 1