マツジローのネットワークセキュリティ日記

アクセスカウンタ

zoom RSS 結局、 Twitter XSS 対策で有効だったのは、JavaScript 無効化だけ

<<   作成日時 : 2010/09/23 23:43   >>

ブログ気持玉 0 / トラックバック 0 / コメント 0

2010年9月21日に発生したTwitterのXSS攻撃の原因は、

Twitter、XSS攻撃を説明--「onMouseOver」の脆弱性が悪用


によると、Twitterのリリースミスだった訳で、全くしょもない。
金輪際このようなことが絶対に起こらないように・・・とTwitterを責めてもねー。
まあでもそもそも無料で使っているわけで、あまり強く言うのもどうかと思う。

ならばこちら側で何か対策はとれないものでしょうか?
いろいろ考えた末にたどり着いた対策は

Twitter では、JavaScriptを無効にすべし

JavaScriptを無効にしてしまえば、不正なJavaScriptによる脆弱性は、無くなる訳です。ただし、正当なJavaScriptも動かないので、使いにくくなりますが。

ということで、対策と呼ぶには恥ずかしいものですが、決定的な対策が無いと考えるのです。

なぜ有効な対策が立てられないのかを言い訳しましょう。

まず、この手の不正なJavaScriptによる脆弱性対策と言えば、ウイルス対策ソフトですが、有効に機能しないのです。
ウイルス対策ソフトが有効に機能するためには、ウイルスがあなたのPCにやってくる前に、そのウイルスの定義を持ってないとダメです。なのであなたは1日に数回ウイルス定義を更新しているだろうし、なにより、ウイルス対策ソフトの開発企業も1分でも早く新種のウイルスを見つけ出そうと頑張っているのだ。早く見つければそれだけ早くウイルス定義を配信できるわけで、正に凌ぎを削っている訳だ。でもいくら急いだところでやはり時間はかかる。発見から早くても数十時間はかかってしまうのだ。
今まではそれでもよかった、ウイルスの伝搬は緩やかだったし、ごく普通に注意していれば−不審なメールや添付ファィルを開かないとかUSBメモリを使うときはXXに注意する。その内にウイルス定義が配信されたので安全を確保できることが多かった。

ところが、今回のTwitter XSS攻撃は、
第一発見からたったの4時間で50万人に伝搬したのだ。

ピークで、100人/秒
平均で、34.7人/秒

に伝搬したということだ。
Twitterのメリットがすべてデメリットとして猛威を振るった、というべきで、これほどの速さで伝搬すると、ウイルス対策ソフトなど何の役にも立たないことはお分かりだろう。
ハッカーにとってTwitterは、ウイルス配信メディアとして、最高と言えるでしょう。
http://threatpost.com/en_us/blogs/twitter-closes-web-hole-after-attack-hits-500000-092110

つぎになぜ、Twitterが問題なのかだ!
Twitterのコンテンツは、ユーザーの書き込んだ文字がメイン であることが正に問題
あなたや私が自由に書き込めるツイートこそが問題なんです!
なぜなら、あなたや私はツイートに「不正なJavaScript」の埋め込みできるからなのです。
ユーザーの書き込んだ文字から完全に「不正なJavaScript」を無害化(=サニタイズ)できれば、良いのですが、所詮人間は神さんじゃないのでね。今回のはリリースミスだったけれど、8月の時点まではもともと見逃していた訳だし。
ユーザーコンテンツが多いサービスをやっているところは、サニタイズに失敗して何らかの事故はある。Facebook だってやってる。
インターネットの短い歴史が証明している。

でも、サニタイズってそんなに難しいのか?

文字列を単純にサニタイズするだけなら良いけど、特定の文字にリンクを張ったり、HTMLのタグを入れたり、ブラウザでJavaScriptを動かすことを想定してやっている内に、脆弱性を作り込んでしまうんでしょう。
さらに、Ajax が当たり前になったことで、JavaScript が難しくなった
というのも、脆弱性を作り込んでしまうんでしょう。原因の一つと思います。

だから、ユーザーコンテンツが中心のサービスである Twitter は、ユーザーコンテンツ無いサービスに比べれば、圧倒的に脆弱であると言って差し支え無いでしょう。

つづきは、あした

テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
結局、 Twitter XSS 対策で有効だったのは、JavaScript 無効化だけ マツジローのネットワークセキュリティ日記/BIGLOBEウェブリブログ
文字サイズ:       閉じる