水無月ばけらのえび日記

bakera.jp > 水無月ばけらのえび日記 > 2005年のえび日記 > 2005年5月 > 2005年5月26日(木曜日)

2005年5月26日(木曜日)

IT Pro がやっちゃった

IT Pro で HTML のクイズが出ていました。

HTMLの説明として間違っているのはどれでしょうか。

1. <a>タグを使えば,イメージにもリンクを埋め込める

2. HTMLファイル内にスクリプトを書き込むときは,<script>タグを使う必要がある

3. <frameset>タグを使えば,Webブラウザのウインドウを複数に分割できる

4. HTMLは必ず<html>タグで始まり,</html>タグで終わる

以上、HTMLの説明として間違っているのはどれでしょうか。 : IT Pro 今日の腕試し! より

1. はいきなり引っかけ問題です。イメージの中にリンクを「埋め込む」技術は「イメージマップ」と呼ばれますが、多くの場合は map要素および area要素で実装されます。a要素を使用するのは誤り……と思いがちですが、実は HTML4 では a要素でイメージマップを実装する方法が提唱されています。少なくとも仕様上は a要素でイメージマップを実現できる事になっていますので、これは正しいと言えます。

2. は日本語が微妙ですね。基本的には script要素 を使用しますので正しいと言えば正しいようにも思えますが、onclick などを使用すれば script要素が無くてもスクリプトは書けますので、必ずしも script要素を使用する必要はないと言えるでしょう。よって誤り。

3. も微妙ですが、フレームを使用するためには frameset要素だけではなく frame要素も必要ですし、そもそもフレームに対応していないブラウザも存在します (そのために noframes要素が存在します)。そのため、必ずしも「分割できる」とは言えないでしょう。誤り。

4. はもはや解説不要ですね。HTML では html要素の開始タグと終了タグは省略可能ですし、なにより HTML は文書型宣言で始まらなければなりません (コメントや処理命令で始まってもかまいませんが、いずれにしても文書型宣言が必須)。XHTML の場合は開始タグ・終了タグが省略できませんが、やはり文書型宣言が必要です (まあ、無くても Well-formed な XML にはなりますが)。よってこれは明確に誤り。

4 は明確に誤り、他はやや微妙ですが、1 は正しく 2, 3 は誤りと判断しました。というわけで正解は 1。

……と思ったのですが、よく見るとそもそも「間違っているモノを選べ」という問題だったのですね。きわめて明確に誤りと言えるのは 4 ですので、4 でファイナルアンサー。

関連する話題: HTML / ITpro

mailto: URL で Bcc: が指定できてしまう問題

更新: 2005年5月27日

JVN で「JVN#FCAD9BD8 メールクライアントソフトにおける mailto URL scheme の不適切な解釈 (jvn.jp)」が公開されました。

Shuriken Pro (www.amazon.co.jp) についてはアップデートモジュールが公開されています……「特殊な mailto: URL を利用する際、お客様が意図しないメールが送信されてしまう現象について (www.justsystem.co.jp)」。Pro でない Shuriken はノーサポートのようですが、それはもうライフサイクルが終わっているということなのでしょうね。

実はこの話、ニフティの FPROG で「mailto: URL で From: を指定する方法ってありますか?」という質問が出たのがきっかけだったりします。脊髄反射で「そんなことできたら脆弱性ですよね」みたいなコメントを書いたのですが、その後実際に鶴亀メールで試してみたらなんと指定できてしまったという。といっても「From: がダブっている」という旨の警告が出て送信はできませんでしたので、鶴亀メールについては問題ないと判断しましたが……他の MUA はどうだろうということでいろいろ検証してみたところ、ほとんどの MUA では From: は指定できないものの、Bcc: が指定できることが分かりました。

多くの MUA では Bcc: が必ず表示されるという実装になっており、RFC2368 には反していますがまあ問題はないかな、と判断したのですが、Shuriken (Pro ではない、古いモノ) では Bcc: が表示されないまま送信されてしまうことが発覚したという次第です。

その後 Shuriken Pro を使用している方にご協力いただいて Pro でも再現することを確認しました。そして Shuriken Pro の脆弱性として届け出たのですが、それがいきなり不受理。IPA の方曰く:

届出にありました「Bcc: の内容が表示されないこと」により第三者による悪用が可能になるということは認識しております。

ただし、以下の告示、ガイドラインの定義と照らし合わせた際に、今回の届出内容はソフトウェアにおける正規の挙動の一部であるため、ソフトウェアの機能や性能を損なうわけではなく、脆弱性ではないと判断しました。

まあそんなものなのかな、と思っていたのですが、何がどうなったものか、一週間ほどして

しかし、私どもで再度検討しましたところ、mailto スキームにおいて Bcc: を指定できてしまうこと自体は RFC 2386 に準拠しておらず、セキュリティ上好ましくない実装であり、この点において脆弱性であると判断し、取扱うことにいたしました。

と、突如方針転換。そうして現在に至った感じです。

※2005-05-27 追記:「RFC2386」は原文ママ。"The mailto URL scheme" の RFC は RFC2368 です。

そんなわけなので、実は当初の届出者の意図とはちょっと違う形で公開されていますが、まあそれはそれで良いかなと思います。

前にも書きましたが、こういうのは「不受理」にはカウントされないみたいですね。

関連する話題: セキュリティ / IPA / JPCERT/CC / 情報セキュリティ早期警戒パートナーシップ / ジャストシステム / RFC

価格.comでスクリプトを

ちょっとエアコンの値段の相場が知りたくて、再開した価格.comにアクセスしてみたら

ご利用の環境ではJava Scriptが動作していないため、一部の機能がご利用いただけません。

詳しくはこちら

と言われました。「こちら」の内容を見るとこんな指示が。

Internet Explorer 4.0以上の場合

Internet Explorerのアイコンを右クリックしてプロパティを開き,「セキュリティ」タブを選択します。次に、「レベルのカスタマイズ」ボタンを押し、「中」を選択してから「リセット」ボタンを押すとデフォルトの状態(ON)に戻ります。

以上、価格.com - Java Scriptの使用について より

これは厳密には誤りです。Windows Server 2003 (www.amazon.co.jp) の IE6 ではデフォルトが「高」になっていますから、このように設定するとデフォルトよりもセキュリティレベルが低くなってしまいます。

……とりあえず「セキュリティ」タブを開くところまでは指示に従って、その後「制限付きサイトゾーン」を開いて kakaku.com を追加しておきました。

関連する話題: セキュリティ

最近の日記

関わった本など