2009年11月24日

Flash,JSONでのクロスドメインアクセス勉強メモ

gihyoサイトの「ここが危ない!Web2.0のセキュリティ」連載の第4回:「Flash,JSONでのクロスドメインアクセス」の勉強メモです。

Flashのクロスドメインアクセス

動作原理

データ提供側で認証のファイルを設置するだけです。
ファイル名は「crossdomain.xml」で、これが例なのかこう書かなければならないのかは明確に書いてません。

<cross-domain-policy>
  <allow-access-from domain="www.securesky-tech.com" />
</cross-domain-policy>

JSONでも実はクロスドメインアクセスが可能

動作原理

eval()関数でデータを評価するだけで使用可能になる

var obj = eval("("+req.responseText+")");

クロスドメインの実現

setterメソッドをサポートしているブラウザ(FirefoxやSafari 3等)では,setterメソッドを再定義することによって,JSONもSCRIPTタグで呼び出して使うことが可能になる。

<html>
  <script>
    Object.prototype.__defineSetter__('name', function(x){sendtoAttacker(x);});
  </script>
  <script src="http://www.securesky-tech.com/object.dat">
  </script>
</html>
Share on Twitter Share the post
Qihuan Piao

朴 起煥

東京で働いている「外人歴」9年のソフトウェア「ライター」。いつの間にか納豆が食えるようになり、これで日本に慣れきったと思いきやまだまだ驚きが続いてる。読んだり書いたりするのが好きで、自身の経験や本から得た「何か」をここに書き出してる。最近古本屋にハマってる。

他にも英語中国語で書いてます、よろしければチェックしてみてください。