Hatena::ブログ(Diary)

hoshikuzu | star_dust の書斎 このページをアンテナに追加 RSSフィード Twitter

hoshikuzu|star_dustの日記について

書く内容の方針とかはフラフラしているのです。あまり考えていないかも知れません。面白いなぁと思うこと、大事なことだなぁと思うことを書いています。あんまり悲しいことは書かない主義。

 | 

2005-06-12 このエントリーを含むブックマーク このエントリーのブックマークコメント

WindowsXPSP2のZoneIDとローカルマシンゾーンロックダウンとについて

本記事のまとめ

WindowsXPSP2においてダウンロードされたHTMLファイルに内包されるスクリプトは一般に作動しないという常識をもしも持っているならばそれは誤った考えです。

WindowsXPSP2のZoneID

WindowsXPSP2では安全度を高めるための新しいセキュリティフィーチャーとしてZoneIDなるものが導入されています。比較的わかりやすい文献を下記に御紹介させて頂きます。

本日私が皆さんに注目して頂きたいのは以下に掲げる引用部分です。@IT:Windows TIPS -- Knowledge:XP SP2のZoneIdとは?より。

・方法2―展開ウィザードによる解凍
もう1つの方法は、エクスプローラ上で.ZIPファイルを選択し、[ファイル]メニューの[すべて展開]を選ぶか、右クリックしてポップアップ・メニューから[すべて展開]を選択する方法である。このメニューを選ぶと、.ZIPファイルの[展開ウィザード]が起動され、展開先を指定するとファイルが展開される。この方法では、手間はかかるが、展開された各ファイルには正しく元の.ZIPファイルと同じZoneId情報が付けられる。

XPSP2のユーザさんは是非御確認しておいて頂きたいかと存じます。

ローカルマシンゾーンロックダウンを安易に信用できない?

XPSP2のIEユーザさんが、ローカルマシンゾーンロックダウンを信用できないかも知れませんので私なりに検討してみました。皆さんも是非ご自身で確認しておいて頂けると吉かもと存じます。

ローカルマシンゾーンロックダウンによって例えばインターネットからダウンロードしたHTMLファイルをデスクトップに置いてIEで開いたとしてもスクリプトが動かないはず・・・というのがXPSP2のローカルマシンゾーンロックダウンという新しいセキュリティ機能の売り文句のひとつだと私は思っております。(間違っていたらごめんなさい)そんなことをマイクロソフトさんが言っていないにしてもそのような感触を持っている人は少なからずいらっしゃることかと思われます。

しかしながらこの売り文句?は慎重に受け止めるべきです。実際にはZoneID機能によってスクリプトがInternetZoneの権限で作動することがあるからです。悪意あるHTMLファイルに与えられたInternetZoneの権限によって例えばクリップボードの中身をヘタすると盗まれかねませんので要注意ですし、他にも何か弱弱しい部分があるかも知れません。

確認してみましょう。ごくごく普通のスクリプトを含むHTMLファイルをzipで圧縮し適宜インターネット上のサーバに置いて下さい。そしてそれをダウンロードし、エクスプローラ上で.ZIPファイルを選択し、[ファイル]メニューの[すべて展開]を選ぶか、右クリックしてポップアップ・メニューから[すべて展開]を選択する方法にて解凍して下さい。ごくごく普通のスクリプトを含むHTMLファイルがIEで、どのような権限で作動するのかを是非御確認して頂きたいのです。

hoshikuzuによる確認結果

インターネット上の特定のサイトに置かれたスクリプト内蔵のHTMLファイルをzip圧縮したものをダウンロードしてみます。特定のサイトに関して私達は次のような権限をあらかじめ与えることができるでしょう。すなわち、インターネットゾーン、イントラネットゾーン、信頼済みサイトゾーン、制限付きサイトゾーン、の4通りです。

私hoshikuzuがXPSP2のIEで確認した限りでは、インターネットゾーン、イントラネットゾーン、信頼済みサイトゾーンの3種のサイトからダウンロードした場合には、くだんのHTMLファイルはインターネットゾーンの権限で作動致します。そして、制限付きサイトゾーンからダウンロードした場合には制限付きサイトゾーンの権限で作動致します。

以上より、ローカルマシンゾーンロックダウンにおいてHTMLファイルのスクリプトが作動しないはず、という知見は幻であることがわかります。そしてマイクロソフトさんの文献を各種あたりまくる限りにおいてこのことは仕様です。けして脆弱性ではありません。ユーザが気をつけるべきことです。インターネットゾーンのセキュリティ設定を多少厳しく制限しておいたほうが良いかもしれませんね。

あまり心配はいりませんが注意喚起

以下の引用部分は間違っています。ZoneIdは4にもなりうります。制限付きゾーンですので特に心配いりませんが・・・・@IT:Windows TIPS -- Knowledge:XP SP2のZoneIdとは?より引用です。

この例で分かるように、Zone.Identifierストリームにはテキスト形式でゾーン情報が記録されている。ここでは「ZoneId=3」となっているので、3はインターネット・ゾーンを表していると考えられるが、実際には3以外の値は記録されることはないようである(ほかのゾーンからのダウンロードの場合は、このストリーム自体が存在しない)。

以上御報告まで。是非とも御検証をお願い致します。っていうか"Mark of the Web"の記述が無いにも関わらずJscriptが動いてしまうHTMLファイルがあったのでかなり深刻に悩み続けましたよ、ヘタレな私は・・・とほほほ。もうっGoogleまわし続けました。万一Zone.Identifierがイントラネットゾーンや信頼済みサイトゾーンになりうるとするならば激しく危険ですので御教示下さい。>ALL

巷間、アダムスキー支持派のあいだですらあまり知られていない?アダムスキー型UFOの画像

上記画像でフチがまぁるくなっているのは反射型望遠鏡のフチですね。(via http://kiti.sub.jp/ufobbs/joyful.cgi on http://kiti.main.jp)

tamotamo 2005/06/13 19:59 勉強になります。
notepad で開いて ZoneId=1 にしてみたら、本当に警告なしで
実行されました。「SP2 ならローカルファイルはインターネット
ゾーン扱い」と思い込んでいては危険なんですね。

でもストリームは、すでにファイルシステムへのアクセスがある人
しか扱えないので、mark of the web よりずっと良いです。
惜しむらくは、「ストリームがなかったら制限付きゾーン扱い」
を徹底しなかったことですか。Zone.Identifier のない exe は
そのまま動いちゃうみたいですね。

【万一Zone.Identifierがイントラネットゾーンや信頼済みサイト
ゾーンになりうるとするならば激しく危険】とありますが、
ZoneId=1 はイントラネットゾーンとして動作するようです。
でもこれは mark of the web と違って、さほど危険ではない
ような気が……。

hoshikuzuhoshikuzu 2005/06/14 22:32 tamoさん、いつもお世話様です♪【ネットからダウンロードしたものは、】「強制的にいついかなる時も必ずストリームをつける。制限付きゾーン扱い」、が良いかもですね。どうしても実行したければファイルのプロパティで明示的に利用者に解除して頂くと・・・
便利からは程遠いので反発があるかもですが。

えむけいえむけい 2005/06/15 22:21 展開ウィザードを使うと、ZoneIdは保存されますが、代わりに(?)タイムスタンプがすべて展開時点のものになってしまいます。
いったいどういう実装をしたらこういうわけの分からないことになるのか理解に苦しみます。とりあえず脆弱性にはならなさげなので修正してもらえそうにもありませんし。

えむけいえむけい 2005/06/15 22:26 > いったいどういう実装をしたらこういうわけの分からないことになるのか理解に苦しみます。
理解できてしまいました【謎】。ブロックを先に解除してから展開するとタイムスタンプが反映されます。つまりZoneIdの付与が更新とみなされているのでしょう。

えむけいえむけい 2005/06/15 22:41 > 「強制的にいついかなる時も必ずストリームをつける。制限付きゾーン扱い」、が良いかもですね。どうしても実行したければファイルのプロパティで明示的に利用者に解除して頂くと・・・
そういうことをすると、総務省とかが実行ファイルにコード署名するというまっとうなアプローチを取らず、ブロックの解除の仕方をホームページで指示したりし出して利用者がブロックの解除に抵抗感を抱かなくなる恐怖れがあるので諸刃の剣なのです【謎】。
たとえば、安全な通信を行うための証明書【謎】を
http://www2.shinsei.soumu.go.jp/first_ie.html
の手順に従ってインストールしようとすると、賢明にもIE6SP2は「不明な発行元」という情報を元に警告を出してくれます。これを総務省が知ったときどういう対応をするのか手に取るように分かります【謎】。少なくとも安全な【略】にまともな署名をするという対応はありえないでしょうね【謎】。

hoshikuzuhoshikuzu 2005/06/15 22:50 いったんフリーソフトのなにかでlha圧縮してから解凍して下さいというのはどうでしょう。【謎】

えむけいえむけい 2005/06/15 23:02 署名のないフリーソフトを入れるなんて論外なので【謎】清く正しい【謎】初心者ユーザーとしては
http://www.microsoft.com/genuine/offers/default.aspx?displaylang=ja#1c76bfa5-7f1b-420b-a8c0-eba75dd6c2ba
にたどり着いてもらいたいところですが【謎】これもAttachment Execute Service(ZoneIdを付与してる奴の正体)を使うようになってるので無駄に手間が増えるだけなのでした【謎】。

> 署名のないフリーソフトを入れるなんて論外なので
とか大々的に主張しちゃうと自爆するので【謎】いやなんですですけどね【謎】。Spyware業者許すまじ【謎】。まあそのためのJavaアプレット版KISSなので【謎】心当たりのある方【誰】はぜひ設置してください【謎】。

hoshikuzuhoshikuzu 2005/06/15 23:49 読者サービス:Javaアプレット版KISS
http://www.oersted.co.jp/~emk/java/girl0.html
※ところでサイトマップをクリックしたらGoogle検索結果になったので驚きました。私はというと今現在Javaが取り除いてあるので遊べません。数年前にKISSを最初見たときにはビックリしたなぁ(遠い目)

hoshikuzuhoshikuzu 2005/06/16 00:00 うっ、Java関連で今頃知りました。情報遅すぎ>私
●ITmedia エンタープライズ:SunがJREなどの脆弱性を公表、セキュリティ制限回避の恐れも
http://www.itmedia.co.jp/enterprise/articles/0506/15/news028.html

えむけいえむけい 2005/06/16 00:08 > 私はというと今現在Javaが取り除いてあるので遊べません。
そのための代替内容です。問題ありません【謎】。力説している甲斐があったというものです【謎】。ダウンロードしたものをローカルで安全に動かす手段がないとあまり解決になってないような気のせいもしますがこだわりません【謎】。
> ※ところでサイトマップをクリックしたらGoogle検索結果になったので驚きました。
クリックする前にステータスバーを確認してくださいっ。フィッシングに釣られてもいいんですかっ【謎】。

hoshikuzuhoshikuzu 2005/06/16 00:12 無論えむけいさんのところはトウの昔に信頼済みサイトゾーンにいれてありあすので【謎無し】

hoshikuzuhoshikuzu 2005/06/16 00:16 よしんばIEでActiveスクリプトやActiveXを殺してあるインターネットゾーンで訪問したとしても、ステータスバーは偽装可能ですのでソースを見るしかありません。/// orz /// やはりFirefoxで訪問すれば良かったですね。

hoshikuzuhoshikuzu 2005/06/16 00:19 あ、そういえば、右クリックすれば概ね真のリンク先の確認は出来るんでしたっけ。超忘れていました。昔、亜子さんに教えてもらったことがあります。【謎無し】

えむけいえむけい 2005/06/16 06:10 > 但し、攻撃者は被害者がどのようなサイトを(たったひとつでも良いので)信頼済みサイトゾーンとして登録しているかを知っておく必要があります。
とかご自分でおっしゃってるのですから、あまり
> はトウの昔に信頼済みサイトゾーンにいれてありあすので
とか言わないほうがいいと思います。もちろん信頼済みサイトのセキュリティレベルは「中」以上にしていらっしゃるのでしょうけど。

hoshikuzuhoshikuzu 2005/06/16 23:29 私自身は既に対処済みですけれどねぇ…。なお、秘法がありまして、ふがぐぐ【謎】

えむけいえむけい 2010/02/23 03:26 上記のURLは諸事情により
http://emk.name/java/girl0.html
に移転しました。が、移転元が思ったより早く消滅してしまったので絶賛Google八分中です【謎】。
Javaが取り除いてあるアナタ【誰】のためにHTML5版も作りました。
http://emk.name/dhtml/html5kiss.html
がJavaScriptが有効じゃないと遊べません。というかアクティブコンテンツ全部無効のセキュリティ「高」状態で動くものを作るのは無理ですふつー。

hoshikuzuhoshikuzu 2010/03/04 12:58 なるほどー・・・です。 素直に脱帽です。ところで emk という名前のwindowがあったときに、emk.name には何がはいっているのでしょう?

トラックバック - http://d.hatena.ne.jp/hoshikuzu/20050612
 | 
最近のコメント