2009年01月11日

[NoScriptで見る] はじめに

NoScript

Firefoxの有名な拡張として『NoScript』というものがある。

この拡張は、レンダリングしようとするページのコンテンツをフックし、JavaScriptやiframe、FlashやJavaアプレットなど動的処理の実行をブロックしてくれる。実行の許可はホワイトリストを使う。

ある程度表示対象の知識を持った人間がセキュリティ目的で導入するものだから、決して誰にでも薦められるものではないし、満足な閲覧に要する手順もやや増える。

それでも、自分が閲覧しようとするページの挙動を把握出来るのだし、ホワイトリストの処理も、UIがこなれてきたお陰でそう面倒ではない。どうでもいい気分なら一時無効にすればいい。

NoScriptで見る

このNoScriptを使っていると、たまにとんでもないサイトやページに出くわす。レイアウトの崩れ程度は可愛い方で、見えてはいけないリクエストデータを見せてしまっていたり(そもそもが狂った設計だけど)、何も表示されなかったり。

酷いのは、重要なのに押せないボタンや、無効なアドレスを返すメニューなど、閲覧者がとても不愉快になるような結果の場合。代替の手段なり警告なりが表示されればともかく、そんなものは無いままに、訳のわからないページだけが残る。

このブログに「NoScriptで見る」と称して、そんなサイトやページを紹介しようと思う。

目的

大半の事例は、決してセキュリティ上致命的な問題ではないし、誰が具体的な損害を被るわけでもない。なのに何故、わざわざそんな事をするのか。

一つは、身内への事例紹介用として。ビジュアルデザインを主に手掛けてきた者にとって、セキュリティや、最終的なクライアントサイドでの実行結果まで含めたサイトの姿をイメージする事は、かなり難しいらしい。特に、今ほどJavaScriptの使用が前提の有名なサービスが増えてくると、尚更に。「こんな超クールなUIが出せますよ」という、内容の浅い翻訳記事だけ見て、制作への採用を決めたりする。それは困る。

問題のあるものを作る人は、自分が作っているものが、誰のどんな処理を経て目に見える形になるのか、大して意識していないんだと思う。本来は、クライアントサイドで動的に実行されとされているものだけが問題じゃない筈。単なるアンカータグをシステムを破壊する命令として実行するUAがあれば、静的なHTMLだって恐ろしい。自分が作ったものは、どんな対象にどう解釈され、どうレンダリングされ、どう実行されるのか、その意識が無いと、恐い。

日本のWeb制作をする人達に、一時期は、クライアントサイドに頼る事を嫌う意識があったと思う。JavaScriptで「戻る」ボタンなんてのは、晒し者にされていた事もあった。しかし今では、そういったクライアントサイドの動的実行を当たり前と考える制作者が、物凄く増えているのだと思う。それ用のミドルウェアはどんどん親切に、手軽になっているし、派手な効果や面白さだけを取り上げる引用ブログも多い。だからいつ、一緒に制作を行う作業者が、そういう意識になっていてもおかしくない。

そんな時、それじゃ危ないよ、困るよ、と言う為の事例として、やばいサイトやページを集めておきたい。それを見ながら説明すれば、クライアントサイドを勝手に限定する怖さを伝え易いと思う。

もう一つは、自戒。Webサイトの制作も仕事としているのだから、迂闊にそういうサイトを設計し、納品する危険が自分にはある。今の所は大丈夫だったけれど、いつしでかすか分からない。だから、そういうサイトを意識し続ける動機として、投稿し続けたい。

対象

個人が自分でやっているサイトやページは、取り上げない。対象は主に企業や団体の、プロが作ったであろうものだけ。そういうサイトであれば、仕事として公に開かれたものを作るのだから、こういった評価をされる事も想定しているだろうし。

他に、そもそも閲覧環境をきちんと限定出来るような用途の場合も、対象としない。誰がどんなUAどんな状態で使うか分からない、公に開かれたものだけを取り扱う。

確認する環境

以下の環境で確認を行う(2009年1月10日時点)。

OS
Windows XP Professional 日本語版 SP3
ブラウザ
Firefox 3.05
Noscript
バージョン 1.8.8.8

00:36 | Comment(0) | TrackBack(0) | Neran-Note

この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。