水無月ばけらのえび日記

bakera.jp > 水無月ばけらのえび日記 > createPopup() はポップアップではない?

createPopup() はポップアップではない?

2004年11月12日(金曜日)

createPopup() はポップアップではない?

例の VISA フィッシングサイトでは、createPopup() で作ったものをアドレスバーにうまく重ねて URL を偽装しようとしています。Windows XP SP2 では、このポップアップをウィンドウの外に出すことができないようになっているので、アドレスバーの上に重なりません。

と、ここまでは良いのですが、よく考えるとそもそも Windows XP SP2 ならポップアップブロックがあるのですから、ポップアップ自体がブロックされても良さそうな物です。しかし偽装 URL の表示自体は行われるのですね。ポップアップブロックのレベルを「高」にしても防げませんでした。

※もちろんスクリプト自体が無効なら防げます。というかご丁寧にも noscript要素があって、"(demonstration requires scripting)" と出ますね。デモンストレーション?

……などと言っていたら、りゅうさん (rryu.sakura.ne.jp)に以下のような記述を紹介していただきました。

Q: Internet Explorer で、何がポップアップ ウィンドウと見なされていますか?

以下によって自動的に開かれるウィンドウは、Internet Explorer によりブロックされます。

createPopup() を除くスクリプト

モーダルおよびモードレス ダイアログ

ページのコンテンツに重ねて表示される DHTML 要素

ユーザー アクション (ページ要素のクリックなど) の直接的な結果として開かれるポップアップ ウィンドウはブロックされません。

以上、Web サイト構築における Microsoft Windows XP Service Pack 2 (SP2) への対応について より

そもそも createPopup() は対象外なのだそうですが、なんでだろ。

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

最近の日記

関わった本など