Jan 25, 2007
フィードリーダーの脆弱性まわりのこと
最近、FreshReaderに脆弱性があったということで、いくつか調べて直したり、赤松さんと連絡取り合ったり、それからはてな使ってないのにユーザー様とか書かれて不愉快な気分になったりしてたんですが。この記事はひどすぎると思う。
フレッシュリーダーの脆弱性に関連してSage++のこと
そもそもの問題として「ローカルディスク上のHTMLファイルをブラウザで開くと超危険」です。XMLHttpRequestやIFRAMEでローカルファイルの内容を読み取れるからです。Sageに脆弱性があるということは、あらゆる個人情報の漏洩につながります。「開発者の個人情報を晒すリスクが云々」というのは、個人的には分からなくもないですが、ユーザーの個人情報を危険に晒していることを認識すべきです。
開発者本人が過去に書いているので、危険性の大きさは十分に認識できているはずです。「脆弱性がある」と公表してしまった時点で、勘の良い人ならどうやって突破するのかぐらいすぐに分かります。
Sageは危険です。はっきり危険だと言うべきです。「未修正の脆弱性があるから」というのはもちろんですが、脆弱性があった場合の影響範囲がでかいので危険だと考えるべきです。Sageのユーザーに悪意のあるフィードを購読させる、という手間がかかるので、起こりうる確率としては低いでしょうが、攻撃に成功すれば攻撃者はローカルディスクの全内容を取得できます。
IEの場合、独自機能でsaved from urlというのがあり、HTMLファイルの先頭にこのように記述することで、
<!-- saved from url=(0014)about:internet -->
参考: http://support.microsoft.com/kb/883866/ja
任意のスクリプトが実行されたとしてもインターネットゾーンで実行されるため、ローカルファイルは読めなくなります。ウェブページを保存する際にこの機能が使われていて、ローカルファイルを開いてもインターネットゾーンのセキュリティポリシーを適用するようになっています。
IEではこのあたりのセキュリティポリシーがしっかりしているのですが、他のブラウザはこのような仕組みが実装されていないようです(俺が知らないだけかもしれない)。この記述があったとしても、他のレンダリングエンジンを使って開いた場合は単なるコメントとして無視されてしまうので、ローカルファイル読み放題です。
Firefox拡張機能のScrapBookではページ取り込みの際にscriptタグやらonloadやら綺麗に取り除いてくれたりするのですが、Firefox標準のページ保存だとそういうことはやってくれません。そもそも拡張機能側の責任でそういうことをやらなければいけないというのが(中略)じゃねーのって気がするので、Firefoxとかインターネットの使用とかを中止した方がいいんじゃないかと思います。
Edit this entry...
wikieditish message: Ready to edit this entry.
A quick preview will be rendered here when you click "Preview" button.