23
押押押押押押押押 IE8 押 押押押押押押押押押 押押押押押押押押 http://utf-8.jp/ 押 01 押押押押押 押押押押押押押押押押押押押押押押 445

押さえておきたい IE8 の セキュリティ 新機能

Embed Size (px)

DESCRIPTION

押さえておきたい IE8 の セキュリティ 新機能. はせがわ ようすけ. 第 01 回まっちゃ445目覚まし勉強会ライトニングトーク. http://utf-8.jp/. せっかく東京に きたのだ から あいいーの さいしん どうこう を しりたいんだ. いや、 そのりくつ は おかしい. " フォクすけ " ( C) 2008 Mozilla Japan. さて. ここで 、 Web 2.0 世代の 皆様に問題です. Quiz. どちらが Web2.0 的か ?. ロングテール. 5秒でわかる解説. 参考文献 - PowerPoint PPT Presentation

Citation preview

Page 1: 押さえておきたい IE8 の セキュリティ 新機能

押さえておきたい IE8 のセキュリティ新機能

はせがわようすけ http://utf-8.jp/

第 01 回まっちゃ445目覚まし勉強会ライトニングトーク

Page 2: 押さえておきたい IE8 の セキュリティ 新機能

いや、

そのりくつは

おかしい

せっかく東京

にきたのだから

あいいーの

さいしん

どうこうを

しりたいんだ

" フォクすけ " (C) 2008 Mozilla Japan

Page 3: 押さえておきたい IE8 の セキュリティ 新機能

3

さて

Page 4: 押さえておきたい IE8 の セキュリティ 新機能

ここで、 Web 2.0 世代の皆様に問題です

Page 5: 押さえておきたい IE8 の セキュリティ 新機能

Quiz. どちらが Web2.0 的か?

Page 6: 押さえておきたい IE8 の セキュリティ 新機能

5秒でわかる解説

ロングテール

参考文献http://namazu.org/~takesako/slides/binary20ajax.ppt

" フォクすけ " (C) 2008 Mozilla Japan

Page 7: 押さえておきたい IE8 の セキュリティ 新機能

本題

Page 8: 押さえておきたい IE8 の セキュリティ 新機能

IE8 のセキュリティ新機能Web アプリ向けに多数の改善• XSS フィルター• Cross-Document Messaging• XDomainRequest• toStaticHTML メソッド• JSON パーサ• Content-Type 無視の改善

Page 9: 押さえておきたい IE8 の セキュリティ 新機能

IE8 のセキュリティ新機能Web アプリ向けに多数の改善• XSS フィルター• Cross-Document Messaging• XDomainRequest• toStaticHTML メソッド• JSON パーサ• Content-Type 無視の改善

Page 10: 押さえておきたい IE8 の セキュリティ 新機能

XSS Filter

明らかな攻撃的スクリプトをブロック

文字コード関連の XSS も一部ブロック !

GET /?q="><script>alert... HTTP/1.1

HTTP/1.1 200 OKContent-Type: text/html

<html><input type="text" value=""><script>alert... "></html>

Page 11: 押さえておきたい IE8 の セキュリティ 新機能

IE8 のセキュリティ新機能Web アプリ向けに多数の改善• XSS フィルター• Cross-Document Messaging• XDomainRequest• toStaticHTML メソッド• JSON パーサ• Content-Type 無視の改善

Page 12: 押さえておきたい IE8 の セキュリティ 新機能

Cross-Document Messaging

• iframe 間でメッセージのやり取りを実現• クロスドメインでも通信可能• 双方向でメッセージの送受信が可能• 送信側 : postMessage() メソッド• 受信側 : onmessage イベントハンドラ• JSONP より安全にデータの受け渡しができ

Page 13: 押さえておきたい IE8 の セキュリティ 新機能

IE8 のセキュリティ新機能Web アプリ向けに多数の改善• XSS フィルター• Cross-Document Messaging• XDomainRequest• toStaticHTML メソッド• JSON パーサ• Content-Type 無視の改善

Page 14: 押さえておきたい IE8 の セキュリティ 新機能

XDomainRequest

• XMLHttpRequest みたいなやつ• クロスドメインでも読み込み可能クライアント側var XDR = new XDomainRequest();xdr.open( "POST", "http://example.com/xdr.txt" );xdr.send( "post data" );サーバ側HTTP/1.1 200 OKContent-Type: text/plainXDomainRequestAllowed: 1

Page 15: 押さえておきたい IE8 の セキュリティ 新機能

IE8 のセキュリティ新機能Web アプリ向けに多数の改善• XSS フィルター• Cross-Document Messaging• XDomainRequest• toStaticHTML メソッド• JSON パーサ• Content-Type 無視の改善

Page 16: 押さえておきたい IE8 の セキュリティ 新機能

toStaticHTML メソッド• 文字列中の「動的」な部分を削除• 静的な HTML はそのまま残るvar s = "<div>Hello<script>alert(1)</script></div>";var t = toStaticHTML( s );

elm.innerHTML = t;<body> <div id="content"> <div>Hello</div> </div></body>

Page 17: 押さえておきたい IE8 の セキュリティ 新機能

IE8 のセキュリティ新機能Web アプリ向けに多数の改善• XSS フィルター• Cross-Document Messaging• XDomainRequest• toStaticHTML メソッド• JSON パーサ• Content-Type 無視の改善

Page 18: 押さえておきたい IE8 の セキュリティ 新機能

JSON パーサ• リモートからの JSON は eval() したくない !• 安全な JSON パーサの組み込み

簡単・安全に JSON のパースができる !

var jsonString = '{ "name" : "hasegawa" }';var obj = JSON.parse( jsonString );

Page 19: 押さえておきたい IE8 の セキュリティ 新機能

IE8 のセキュリティ新機能Web アプリ向けに多数の改善• XSS フィルター• Cross-Document Messaging• XDomainRequest• toStaticHTML メソッド• JSON パーサ• Content-Type 無視の改善

Page 20: 押さえておきたい IE8 の セキュリティ 新機能

Content-Type 無視の改善画像は画像。 HTML 扱いしない !

Image/* は必ず画像として扱う !

HTTP/1.1 200 OKContent-Type: image/bmp

<html><script>alert(1)</script></html>

壊れた画像となる

Page 21: 押さえておきたい IE8 の セキュリティ 新機能

Content-Type 無視の改善魔法の呪文

ようやく呪縛から解放 !

HTTP/1.1 200 OKContent-Type: text/plain; authoritative=true;

<html><script>alert(1)</script></html>

テキストファイルとして表示

Page 22: 押さえておきたい IE8 の セキュリティ 新機能

続きは大阪で

Admintech.jp 検索検索

Page 23: 押さえておきたい IE8 の セキュリティ 新機能

Admintec.jp 大阪勉強会• 2008年9月27日• マイクロソフト大阪オフィス セミナー

ルーム• IE8 の裏話もいっぱいあるよ

http://admintech.jp/

   / ̄ ̄\  /   _ ノ  \   |     ( ●)(●) .   |      ( __ 人 __ )   大阪まで聞きに来るべきだろ…  |      ` ⌒ ´     常識的に考えてノ….   |          } .   ヽ        }    ヽ     ノ        \     /     く  \        \     |      \   \         \     |      | ヽ、二⌒ )           、\