(57)【要約】【課題】  ポップアップ・ウィンドウ内の偽装コマンド・ボタンを検出するための解決策を提供することにある。【解決手段】  この解決策は、ポップアップ・ウィンドウの作成プロセスを追跡し、ポップアップ・ウィンドウ内のコマンド・ボタンの存在を検出し、ポップアップ・ウィンドウ内の各コマンド・ボタンに表示された値を検証し、ポップアップ・ウィンドウ上のコマンド・ボタンを選択したことによって生成されたフォローアップ・アクションを判断する。【選択図】  図６
2010500674.tif 000002
【特許請求の範囲】
【請求項１】
偽装コマンド・ボタンを検出するための方法であって、
ポップアップ・ウィンドウに関する作成プロセスを追跡するステップと、
前記ポップアップ・ウィンドウ内に作成されたコマンド・ボタンを検出するステップと、
前記コマンド・ボタンの割り当て値をチェックするステップと、
前記コマンド・ボタンの選択時に生成されたフォローアップ・アクションを判断するステップと、
を含む方法。
【請求項２】
前記検出するステップが、バックグラウンド・ソース・コード妥当性検査を実行することを含む、請求項１に記載の方法。
【請求項３】
前記生成されたフォローアップ・アクションが前記ポップアップ・ウィンドウを閉じることを検証するステップをさらに含む、請求項１に記載の方法。
【請求項４】
前記コマンド・ボタンを選択したことによる前記フォローアップ・アクションが前記ポップアップ・ウィンドウを閉じること以外のアクションであるときに、前記ポップアップ・ウィンドウが潜在的な危険をもたらすことをユーザに警告するステップをさらに含む、請求項３に記載の方法。
【請求項５】
前記コマンド・ボタンの前記割り当て値がユーザ選択を制限するときに、注意深く進むよう前記ユーザに警告するステップをさらに含む、請求項２に記載の方法。
【請求項６】
偽装コマンド・ボタンを検出するためのシステムであって、
ポップアップ・ウィンドウに関する作成プロセスを追跡するための構成要素と、
前記ポップアップ・ウィンドウ内のコマンド・ボタンの作成を検出するための構成要素と、
前記コマンド・ボタンの割り当て値をチェックするための構成要素と、
前記コマンド・ボタンの選択時に生成されたフォローアップ・アクションを判断するための構成要素と、
を含むシステム。
【請求項７】
前記検出するための構成要素がバックグラウンド・ソース・コード妥当性検査を実行する、請求項６に記載のシステム。
【請求項８】
前記生成されたフォローアップ・アクションが前記ポップアップ・ウィンドウを閉じることを検証するための構成要素をさらに含む、請求項６に記載のシステム。
【請求項９】
前記フォローアップ・アクションが前記ポップアップ・ウィンドウを閉じること以外のアクションを実行するときに、前記ポップアップ・ウィンドウが潜在的な危険をもたらすことをユーザに警告するための構成要素をさらに含む、請求項６に記載のシステム。
【請求項１０】
前記コマンド・ボタンの前記割り当て値がユーザ選択を制限するときに、注意深く進むよう前記ユーザに警告するための構成要素をさらに含む、請求項６に記載のシステム。
【請求項１１】
ウィンドウを閉じるためのＷｅｂブラウザ・アプリケーション・プログラム・インターフェース（ＡＰＩ）に対して前記ポップアップ・ウィンドウを妥当性検査するための構成要素と、
前記コマンド・ボタンを選択したときに前記ユーザによって生成された前記フォローアップ・アクションが前記ＷｅｂブラウザＡＰＩとの通信を省略したことを検出したときに前記ユーザに警告するための構成要素と、
前記ポップアップ・ウィンドウを閉じるための構成要素と、
をさらに含む、請求項６に記載のシステム。
【請求項１２】
デジタル・コンピュータの内部メモリにロード可能なコンピュータ・プログラムであって、コンピュータ上で実行されたときに、請求項１乃至５に記載の方法を実行するよう実行するためのソフトウェア・コード部分を含む、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、インターネット上の広告の好ましくない影響を防止することに関する。特に、本発明は、オンライン・セッション中にＷｅｂブラウザ上のポップアップ広告ウィンドウ上のコマンド・ボタンを選択することにより潜在的に起動された任意の好ましくないフォローアップ・アクションを検出することに関する。詳細には、本発明は、このようなポップアップ・ウィンドウを閉じることにより起動された好ましくないフォローアップ・アクションの防止に関する。
【背景技術】
【０００２】
インターネット上の典型的なオンライン・セッションにおいて、ユーザは、考えられるすべての種類の製品およびサービスを広告するポップアップ・ウィンドウに遭遇することになる。このような広告は、通常、現在のＷｅｂブラウザ・ウィンドウの上に個別ウィンドウとして「ポップアップ」する。ポップアップ広告の中には、無害であり、ポップアップ・ウィンドウの一部として設けられたコマンド・ボタンのクリックによって容易に閉じることができるものがある。しかし、偽装されたコマンド・ボタンを提供する可能性があるポップアップ・ウィンドウもある。この偽装コマンド・ボタン（spoofed command button）は、「スパイウェア（spyware）」のインストール、「アドウェア（adware）」、コンピュータ・サイクルのスチール、ユーザのコンピュータを介するスパムの送信、またはその他の望ましくないアプリケーションのような隠されたアクションを起動する可能性がある。図３は、アドウェアまたはスパイウェアを警告するために現れるポップアップ・ウィンドウの一例であるが、それ自体は、「はい（Yes）」または「いいえ（No）」のどちらのボタンが選択されたかにかかわらず、悪意あるプログラムをインストールすると思われる偽装ボタンを有する可能性がある。ポップアップ広告は偽装できないシステム提供の「取消（Cancel）」ボタン、すなわち、ウィンドウの隅にある「×」ボタンを有する可能性があるが、このようなシステム提供のボタンは、ぼかし表示するか、隠蔽するか、または使用不可にすることができる。ユーザによっては、明示的なコマンド・ボタンとシステム提供の「取消」ボタンとの違いを把握していない可能性もある。また、「はい」または「確認（Confirm）」ボタンのような肯定的なコマンド・ボタン以外にポップアップ・ウィンドウを閉じるための任意のコマンド・ボタンを提供しないポップアップ・ウィンドウも存在する。図４は、このようなポップアップ・ウィンドウの一例である。これは、ポップアップ・ウィンドウを閉じるためのユーザ・オプションを制限するものであり、それにより、ユーザにとって未知で望ましくない可能性のあるフォローアップ・アクションを必然的に起動すると思われる。このような悪意あるポップアップ・ウィンドウを閉じようと試みる際に、コンピュータ・ユーザは悪意あるアクションを許可するリスクを冒すが、それにより、ユーザによって意識的に行われるアクションであるとコンピュータが解釈する恐れがある。
【０００３】
プログラムをダウンロードするためのコマンドをユーザが意識的に与えているときに悪意あるプログラム・コードをスキャンすることのように悪意あるポップアップ・ウィンドウを回避するための方法を提供しようという取り組みが行われており、このスキャンはそのプログラム・コードをダウンロードする前に１組の既存のプログラムと比較することによって行われる。ユーザ入力をアプレットからメイン・ブラウザ・ループに迂回させ、クローズ・ウィンドウ（close window）を実行するためのユーザ・キー・プレス・コマンド（userkey press command）を受け取ることにより、エラーＪａｖａアプレットによって生成された表示モデル・ダイアログ・ボックスから脱出するための方法を提供する取り組みもある。この従来技術は、Ｊａｖａプログラミング言語で作成されたモデル・ダイアログ・ボックスを対象とするものである。
【０００４】
したがって、前述の関連技術の不備または限界あるいはその両方のうちの少なくとも１つを克服する必要がある。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、ポップアップ・ウィンドウ内の偽装コマンド・ボタンを検出するか、またはポップアップ・ウィンドウを閉じるために偽装コマンド・ボタンを選択する際に潜在的な危害をユーザに前もって警告するか、あるいはその両方を行うための方法、システム、およびコンピュータ・プログラム（computer program product）を提供する。
【課題を解決するための手段】
【０００６】
本発明の第１の態様は、偽装コマンド・ボタンを検出するための方法を提供し、この方法は、ポップアップ・ウィンドウ作成プロセスを追跡するステップと、ポップアップ・ウィンドウ内に作成されたコマンド・ボタンを検出するステップと、コマンド・ボタンの割り当て値をチェックするステップと、コマンド・ボタンの選択時に生成されたフォローアップ・アクションを判断するステップとを含む。
【０００７】
好ましくは、本発明は、検出するステップが、バックグラウンド・ソース・コード妥当性検査を実行することを含む方法を提供する。
【０００８】
好ましくは、本発明は、生成されたフォローアップ・アクションがポップアップ・ウィンドウを閉じることを検証するステップをさらに含む方法を提供する。
【０００９】
好ましくは、本発明は、コマンド・ボタンを選択したことによるフォローアップ・アクションがポップアップ・ウィンドウを閉じること以外のアクションであるときに、ポップアップ・ウィンドウが潜在的な危険をもたらすことをユーザに警告するステップをさらに含む方法を提供する。
【００１０】
好ましくは、本発明は、コマンド・ボタンの割り当て値がユーザ選択を制限するときに、注意深く進むようユーザに警告するステップをさらに含む方法を提供する。
【００１１】
本発明の第２の態様は、異常を検出するためにウィンドウを閉じるためのＷｅｂブラウザ・アプリケーション・プログラム・インターフェース（ＡＰＩ：Application Program Interface）に対してポップアップ・ウィンドウのクローズ・アクションを妥当性検査するステップと、コマンド・ボタンを選択したときにユーザによって生成されたフォローアップ・アクションがＷｅｂブラウザＡＰＩと通信し損なったことを検出したときにユーザに警告するステップとを含む、偽装コマンド・ボタンを検出するための方法を提供する。
【００１２】
好ましくは、本発明は、ユーザに警告するときにポップアップ・ウィンドウを閉じるステップをさらに含む方法を提供する。
【００１３】
本発明の第３の態様は、ポップアップ・ウィンドウ作成プロセスを追跡するための構成要素と、ポップアップ・ウィンドウ内のコマンド・ボタンの作成を検出するための構成要素と、コマンド・ボタンの割り当て値をチェックするための構成要素と、コマンド・ボタンの選択時に生成されたフォローアップ・アクションを判断するための構成要素とを含む、偽装コマンド・ボタンを検出するためのシステムを提供する。このシステムは、Ｗｅｂブラウザに併せて適用可能なプラグイン、拡張機能、エージェント、または任意の手段として既存のコンピュータ・プログラムに追加できるコンピュータ・プログラムである。
【００１４】
好ましくは、本発明は、検出するための構成要素がバックグラウンド・ソース・コード妥当性検査を実行する、システムを提供する。
【００１５】
好ましくは、本発明は、生成されたフォローアップ・アクションがポップアップ・ウィンドウを閉じることを検証するための構成要素をさらに含むシステムを提供する。
【００１６】
好ましくは、本発明は、フォローアップ・アクションがポップアップ・ウィンドウを閉じること以外のアクションを実行するときに、ポップアップ・ウィンドウが潜在的な危険をもたらすことをユーザに警告するための構成要素をさらに含むシステムを提供する。
【００１７】
好ましくは、本発明は、コマンド・ボタンの割り当て値がユーザ選択を制限するときに、注意深く進むようユーザに警告するための構成要素をさらに含むシステムを提供する。
【００１８】
好ましくは、本発明は、ウィンドウを閉じるためのＷｅｂブラウザ・アプリケーション・プログラム・インターフェース（ＡＰＩ）に対してポップアップ・ウィンドウを妥当性検査するための構成要素と、コマンド・ボタンを選択したときにユーザによって生成されたフォローアップ・アクションがＷｅｂブラウザＡＰＩとの通信を省略したことを検出したときにユーザに警告するための構成要素と、ポップアップ・ウィンドウを閉じるための構成要素とをさらに含むシステムを提供する。
【００１９】
本発明の第４の態様は、偽装コマンド・ボタンを検出するために機械可読媒体上に保管されたコンピュータ・プログラムを提供し、このコンピュータ可読プログラムは、ポップアップ・ウィンドウ作成プロセスを追跡するステップと、ポップアップ・ウィンドウ内に作成されたコマンド・ボタンを検出するステップと、コマンド・ボタンの割り当て値をチェックするステップと、コマンド・ボタンの選択時に生成されたフォローアップ・アクションを判断するステップとコンピュータに実行させる。
【００２０】
本発明の第５の態様は、ポップアップ・ウィンドウ作成プロセスを追跡し、ポップアップ・ウィンドウ内に作成されたコマンド・ボタンを検出し、コマンド・ボタンの割り当て値をチェックし、コマンド・ボタンの選択時に生成されたフォローアップ・アクションを判断するように動作可能であるコンピュータ・インフラストラクチャを提供することを含む、偽装コマンド・ボタンを検出するためのアプリケーションを配備するための方法を提供する。
【００２１】
添付図面は、本発明の典型的な一実施形態を例示するための概略表現であり、本発明の原理を制限するためのものではない。図面では、同様の番号は図面間で同様の要素を表している。
【発明を実施するための最良の形態】
【００２２】
悪意あるコードが様々なアクションを実行しないように防止するために種々の手法が採用されてきたが、ユーザがポップアップ・ウィンドウを閉じるためのコマンドを発行した場合にコンピュータにインストールされる恐れがある悪意あるコードを検出し、それをユーザに警告するための方法を提供する必要性が残っている。
【００２３】
図面を参照すると、図１は、偽装コマンド・ボタンを含むポップアップ・ウィンドウの検出のためのアルゴリズム１００のプロセス・フローを例示している。偽装ボタンとは、そのボタンをクリックすることによって生成される結果が予想された結果を返さないものである。偽装コマンド・ボタンは、典型的なコマンド・ボタンの外観を有し、通常、ポップアップ・ウィンドウ上に対になって表示される（たとえば、図３に例示されている「はい」と「いいえ」）。このようなコマンド・ボタンはそのボタンをクリックするだけで所望のコマンドを発行するための手段を提供するとユーザは考えたくなるであろう。しかし、そのポップアップ・ウィンドウ内のコマンド・ボタンをクリックすると、異なるアクションが起動される場合もある。アルゴリズム１００は、開始１０８から１１０でＷｅｂブラウザを介してインターネットに接続すると待機状態になる。１１２でユーザがインターネット上のオンライン・セッション中にアクションを実行すると、アルゴリズム１００は、ウィンドウを開くための呼び出し（たとえば、Ｊａｖａでは「ｗｉｎｄｏｗ．ｏｐｅｎ」）を追跡して、１１４でポップアップ・ウィンドウが作成されているかどうかを判断する。アルゴリズム１００は、バックグラウンド・ページ・ソース・コード妥当性検査を実行することにより、ポップアップ・ウィンドウの一部としてコマンド・ボタンが作成されているかどうかを検出するためのステップ１１６を含む。コマンド・ボタンの値は、「いいえ」または「取消」ボタンの値と比較される。値が一致する場合、フォローアップ・アクションがコマンド・ボタンをクリックしたときに単に「偽を返す（return false）」（たとえば、他のどのアクションも実行せずにウィンドウを閉じる）だけであるかどうかを判断するために１１８で追加のチェックが実行される。そうである場合、フォローアップ・アクションはいかなる割り込みも発生せずに１２２で処理される。しかし、フォローアップ・アクションが「偽を返す」ではない場合、１２０でユーザは偽装コマンド・ボタンについて警告を受け、ポップアップ・ウィンドウはシステムによって自動的に閉じられる。これは、ユーザが偽装ボタンをクリックするのを防ぎ、このため、偽装ボタンのクリックに関連する悪意あるフォローアップ・アクションを起動するリスクを最小限にする。次にアルゴリズム１００は、新しいポップアップ・ウィンドウの作成を起動する他のユーザ・アクションを見越して、もう一度、待機状態になるようにリセットされる。ポップアップ・ウィンドウが作成されないと１１４で判断された場合、アルゴリズム１００は待機モードに戻り、Ｗｅｂブラウザは１２２で所望の通りユーザ・コマンドを処理する。ユーザがオンライン・セッションから出ることを選択した場合、アルゴリズム１００は、コマンドを登録し、１２４でポップアップ・ウィンドウの作成の検出を停止する。
【００２４】
図２のアルゴリズム２００は、図１のアルゴリズム１００に記述されているプロセス・フローに加えて、ポップアップ・ウィンドウが「取消」ボタンを提供しない状況に対処するために論理ステップ１１６から続く追加のプロセス・フロー２０２を有する。これは、本質的に、ポップアップ・ウィンドウを閉じるための「いいえ」または「取消」ボタンの値に匹敵する値を備えて作成されたコマンド・ボタンがまったくないことを意味する。しかし、ポップアップ・ウィンドウは、服従し（leading to compliance）、悪意あるかまたは望ましくないフォローアップ・アクションを起動するリスクを増すようなユーザ・オプションを制限するコマンド・ボタンを含む可能性がある。ユーザには、特にこのようなアクションを実行することになるようなコマンド・ボタンでポップアップ・ウィンドウを閉じるためのオプションが与えられていないが、Ｗｅｂブラウザは「ブラウズ中のポップアップ・ウィンドウには適切な取消機能がありません。注意深くお進みください。（The pop-up window you are browsing doesn’t have an appropriate Cancel function, please proceedwith caution.）」などのメッセージでユーザに前もって警告することになるであろう。しかし、コマンドは、ユーザによって発行されると処理されるので、リスクを最小限にするためにＷｅｂブラウザによって追加のアクションが取られることはまったくないであろう。代わって、このコマンドは、ユーザに警告せずに処理される。
【００２５】
図５は、プロセス・フロー内のウィンドウをクローズするための標準的なオペレーティング・システム（ＯＳ）またはＷｅｂブラウザ・アプリケーション・プログラム・インターフェース（ＡＰＩ）に対してクローズ・アクションを妥当性検査するためのアルゴリズム３００が提供される、本発明の他の実施形態を例示している。ステップ１１６またはステップ１１８からステップ１２２へのプロセス・フローは追加のステップ３０２を含み、そのステップは、異常を検出するためにコマンド・ボタンによって発行されたクローズ・アクションをＯＳまたはＡＰＩに対して妥当性検査するものである。ポップアップ・ウィンドウを閉じるためのコマンド・ボタンがＷｅｂブラウザＡＰＩを呼び出さない場合、これは異常として検出される。次にアルゴリズム３００は、１２０でユーザに対する警告メッセージを開始し、ポップアップ・ウィンドウを自動的に閉じる。代替ステップ３０２は、上記に記述したアルゴリズム１００または２００の代替としてあるいは偽装コマンド・ボタンを偶然選択したことに対する安全措置として独立して適用することができる。安全機能として、このステップ３０２は、コマンド・ボタンが偽装されているように見えなくても、フォローアップ・アクションの動作が予想される動作モードに適合しない場合、ユーザが警告を受け、ポップアップ・ウィンドウがＷｅｂブラウザによって直ちに閉じられることを保証するために、論理ステップ１２２の直前に実現することができる。
【００２６】
したがって、Ｗｅｂブラウザによってポップアップ広告ウィンドウ内のボタン偽装を防止できるようにする方法が必要である。また、ユーザがポップアップ・ウィンドウの一部として設けられた偽装コマンド・ボタンを選択したときに実行されると思われる悪意あるコードを検出するために既存のインターネットＷｅｂブラウザ・プログラムに付け加えることができる実行可能システムも必要である。さらに、ポップアップ・ウィンドウ上の偽装コマンド・ボタンを選択するために考えられる偶発的アクションをユーザに前もって警告できる実行可能システムも必要である。
【００２７】
図６は、本発明の実施形態により、ポップアップ・ウィンドウ内の偽装コマンド・ボタンを検出し、その偽装コマンド・ボタンを選択したときの潜在的な危害をユーザに前もって警告するための例示的なシステム４００を示している。この範囲で、システム４００は、偽装コマンド・ボタンを検出するために本明細書に記載した様々なプロセス・ステップを実行できるコンピュータ・インフラストラクチャ４０２を含む。特に、コンピュータ・インフラストラクチャ４０２は、偽装コマンド・ボタン検出システム４３０を含むコンピュータ・システム４０４を含むものとして示されており、この偽装コマンド・ボタン検出システム４３０は、本発明のプロセス・ステップを実行することによりポップアップ・ウィンドウが作成されたときに偽装コマンド・ボタンの作成をコンピュータ・システム４０４が検出できるようにするものである。
【００２８】
示されているコンピュータ・システム４０４は、処理装置４０８と、メモリ４１０と、少なくとも１つの入出力（Ｉ／Ｏ）インターフェース４１４と、バス４１２とを含む。さらに、コンピュータ・システム４０４は、少なくとも１つの外部装置４１６および記憶システム４１８と通信状態にあるものとして示されている。一般に、処理装置４０８は、メモリ４１０または記憶システム４１８あるいはその両方に保管されている偽装コマンド・ボタン検出システム４３０などのコンピュータ・プログラム・コードを実行する。処理装置４０８は、コンピュータ・プログラム・コードを実行しながら、メモリ４１０、記憶システム４１８、または入出力インターフェース（複数も可）４１４、あるいはこれらの組み合わせとの間でデータを読み書きすることができる。バス４１２は、コンピュータ・システム４０４内の構成要素のそれぞれとの間に通信リンクを提供する。少なくとも１つの外部装置４１６は、ユーザ（図示せず）がコンピュータ・システム４０４と対話できるようにする任意の装置（たとえば、ディスプレイ４２０）またはコンピュータ・システム４０４が１つまたは複数の他のコンピュータ・システムと通信できるようにする任意の装置を含むことができる。
【００２９】
いずれの場合でも、コンピュータ・システム４０４は、ユーザによってインストールされたコンピュータ・プログラム・コードを実行可能な任意の汎用コンピューティング装置（たとえば、パーソナル・コンピュータ、サーバ、ハンドヘルド・デバイスなど）を含むことができる。しかし、コンピュータ・システム４０４および偽装コマンド・ボタン検出システム４３０は、本発明の様々なプロセス・ステップを実行できるものとして考えられる様々なコンピュータ・システムを代表するだけであることは言うまでもない。この範囲で、他の諸実施形態では、コンピュータ・システム４０４は、具体的な諸機能を実行するためのハードウェアまたはコンピュータ・プログラム・コードあるいはその両方を含む任意の特殊用途コンピューティング装置、特殊用途および汎用ハードウェア／ソフトウェアの組み合わせを含む任意のコンピューティング装置などを含むことができる。それぞれの場合のプログラム・コードおよびハードウェアは、それぞれ、標準的なプログラミングおよびエンジニアリング技法を使用して作成することができる。
【００３０】
同様に、コンピュータ・インフラストラクチャ４０２は、本発明を実現するために使用できる様々なタイプのコンピュータ・インフラストラクチャの例証に過ぎない。たとえば、一実施形態のコンピュータ・インフラストラクチャ４０２は、本発明の様々なプロセス・ステップを実行するために、ネットワーク、共用メモリなどの任意のタイプの有線または無線あるいはその両方の通信リンクにより通信する２つまたはそれ以上のコンピュータ・システム（たとえば、サーバ・クラスタ）を含む。通信リンクがネットワークを含む場合、そのネットワークは、１つまたは複数のタイプのネットワーク（たとえば、インターネット、広域ネットワーク、ローカル・エリア・ネットワーク、仮想私設網など）の任意の組み合わせを含むことができる。それにもかかわらず、コンピュータ・システム間の通信は、様々なタイプの伝送技術の任意の組み合わせを使用することができる。
【００３１】
前述の通り、偽装コマンド・ボタン検出システム４３０は、ポップアップ・ウィンドウ４３４のコマンド・ボタンがユーザによって選択されたときに、コンピュータ・システム４０４が偽返却アクション・チェック（return false action check）４３２を実行できるようにするものである。ポップアップ・ウィンドウ４３４はＷｅｂブラウザ４４０内で「ポップアップ」する。この範囲で、偽装コマンド・ボタン検出システム４３０は、Ｗｅｂブラウザ４４０上のポップアップ・ウィンドウ４３４の生成を検出するためのポップアップ・ウィンドウ作成検出システム４３６と、コマンド・ボタンに割り当てられた値に基づいて、ポップアップ・ウィンドウ４３４内の各コマンド・ボタンについて偽返却アクション・チェック４３２を実行するためのコマンド・ボタン作成検出システム４３８とを含むものとして示されている。これらのシステムのそれぞれの動作については上述されている。図６に示されている様々なシステムのいくつかは、ネットワークにより通信する１つまたは複数の個別コンピュータ・システム４０４について、独立して実現するか、結合するか、またはメモリに保管するか、あるいはこれらの組み合わせを行うことができることは言うまでもない。さらに、これらのシステムまたは機能あるいはその両方のいくつかが実現できない場合もあれば、追加のシステムまたは機能あるいはその両方をシステム４００の一部として含むことができることは言うまでもない。
【００３２】
本発明は、ポップアップ・ウィンドウ内のコマンド・ボタンが偽装されているかどうかを検出するための方法およびシステムとして本明細書に示され、記載されているが、本発明は様々な代替諸実施形態をさらに提供することは言うまでもない。たとえば、一実施形態では、本発明は、コンピュータ・インフラストラクチャがポップアップ・ウィンドウのコマンド・ボタンを選択したときに起動されるフォローアップ・アクションを判断できるようにするコンピュータ・プログラム・コードを含むコンピュータ可読媒体を提供する。この範囲で、コンピュータ可読媒体は、本発明の様々なプロセス・ステップのそれぞれを実現する、偽装コマンド・ボタン検出システム４３０などのプログラム・コードを含む。「コンピュータ可読媒体」という用語がプログラム・コードの任意のタイプの物理的実施形態の１つまたは複数を含むことは言うまでもない。特に、コンピュータ可読媒体は、１つまたは複数のポータブル記憶装置（たとえば、コンパクト・ディスク、磁気ディスク、テープなど）上で、メモリ４１０または記憶システム４１８あるいはその両方などのコンピュータ・システムの１つまたは複数のデータ記憶部部分（たとえば、固定ディスク、読み取り専用メモリ、ランダム・アクセス・メモリ、キャッシュ・メモリなど）上で、または（たとえば、プログラム・コードの有線／無線電子配布中に）ネットワークにより伝搬するデータ信号として、あるいはそれらの組み合わせとして実施されたプログラム・コードを含むことができる。
【００３３】
他の実施形態では、本発明は、加入、広告、または料金、あるいはこれらの組み合わせを基礎として、本発明のプロセス・ステップを実行するビジネス方法を提供する。すなわち、サービス・プロバイダは、ユーザがそのコマンド・ボタンを選択した場合に悪意あるアクションを起動する可能性のある偽装コマンド・ボタンをポップアップ・ウィンドウが所持するかどうかを判断しようと申し出ることができるであろう。この場合、サービス・プロバイダは、１人または複数の顧客について本発明のプロセス・ステップを実行する、コンピュータ・インフラストラクチャ４０２などのコンピュータ・インフラストラクチャの作成、維持、サポートなどを行うことができる。その見返りとして、サービス・プロバイダは、加入契約または料金契約あるいはその両方に基づいて顧客（複数も可）から支払を受け取ることができるか、１つまたは複数の第三者に対して広告スペースを販売することによる支払を受け取ることができるか、あるいはその両方を受け取ることができる。
【００３４】
さらに他の実施形態では、本発明は、ポップアップ・ウィンドウの偽装コマンド・ボタンを検出する方法を提供する。この場合、コンピュータ・インフラストラクチャ４０２などのコンピュータ・インフラストラクチャを入手（たとえば、作成、維持、入手可能化など）することができ、本発明のプロセス・ステップを実行するための１つまたは複数のシステムを入手（たとえば、作成、購入、使用、変更など）し、コンピュータ・インフラストラクチャに配備することができる。この範囲で、各システムの配備は、コンピュータ・インフラストラクチャが本発明のプロセス・ステップを実行できるようにするために、（１）コンピュータ可読媒体から、コンピュータ・システム４０４などのコンピュータ・システムにプログラム・コードをインストールすること、（２）コンピュータ・インフラストラクチャに１つまたは複数のコンピュータ・システムを追加すること、（３）コンピュータ・インフラストラクチャの１つまたは複数の既存のシステムの組み込みまたは変更あるいはその両方を行うことのうちの１つまたは複数を含むことができる。
【００３５】
本明細書で使用する「プログラム・コード」および「コンピュータ・プログラム・コード」という用語は同義語であり、直接または（ａ）他の言語、コード、または表記への変換、および（ｂ）異なる物質的形式による複製のいずれか一方または両方の後、情報処理機能を有するコンピュータ・システムに特定の機能を実行させるための１組の命令を任意の言語、コード、または表記で表した任意の表現を意味することは言うまでもない。この範囲で、プログラム・コードは、アプリケーション／ソフトウェア・プログラム、コンポーネント・ソフトウェア／諸機能のライブラリ、オペレーティング・システム、特定のコンピューティング装置または入出力装置あるいはその両方に関する基本入出力システム／ドライバなどの１つまたは複数のタイプのプログラムとして実施することができる。
【００３６】
本明細書には本発明の好ましい諸実施形態が記載されているが、上記の説明は例示に過ぎない。網羅するためまたは開示された正確な形式に本発明を限定するためのものではなく、明らかに、多くの変更および変形が可能である。本明細書に開示されている本発明に対するこれ以上の変更は当業者にとって思い浮かぶものであり、このような変更はいずれも特許請求の範囲によって定義された本発明の範囲内であると見なされる。
【図面の簡単な説明】
【００３７】
【図１】本発明の一実施形態のアルゴリズムを例示する流れ図である。
【図２】本発明の代替一実施形態のアルゴリズムを例示する流れ図である。
【図３】ポップアップ・ウィンドウを閉じるためにユーザが選択するためのコマンド・ボタンを提供する典型的な広告を例示するサンプル・ポップアップ・ウィンドウである。
【図４】ポップアップ・ウィンドウを閉じるためのユーザ選択の制限を例示する他のサンプル・ポップアップ・ウィンドウである。
【図５】本発明の他の実施形態のアルゴリムを例示する流れ図である。
【図６】本発明の実施形態（複数も可）を実現するための例示的なコンピュータ・システムを描写する図である。
【図１】
2010500674.tif 000003
【図２】
2010500674.tif 000004
【図３】
2010500674.tif 000005
【図４】
2010500674.tif 000006
【図５】
2010500674.tif 000007
【図６】
2010500674.tif 000008
【手続補正書】
【提出日】平成21年3月5日(2009.3.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
偽装コマンド・ボタンを検出するための方法であって、
ポップアップ・ウィンドウに関する作成プロセスを追跡するステップと、
前記ポップアップ・ウィンドウ内に作成されたコマンド・ボタンを検出するステップと、
前記コマンド・ボタンの割り当て値をチェックするステップと、
前記コマンド・ボタンの選択時に生成されたフォローアップ・アクションを判断するステップと、
を含む方法。
【請求項２】
前記検出するステップが、バックグラウンド・ソース・コード妥当性検査を実行することを含む、請求項１に記載の方法。
【請求項３】
前記生成されたフォローアップ・アクションが前記ポップアップ・ウィンドウを閉じることを検証するステップをさらに含む、請求項１に記載の方法。
【請求項４】
前記コマンド・ボタンを選択したことによる前記フォローアップ・アクションが前記ポップアップ・ウィンドウを閉じること以外のアクションであるときに、前記ポップアップ・ウィンドウが潜在的な危険をもたらすことをユーザに警告するステップをさらに含む、請求項３に記載の方法。
【請求項５】
前記コマンド・ボタンの前記割り当て値がユーザ選択を制限するときに、注意深く進むよう前記ユーザに警告するステップをさらに含む、請求項２に記載の方法。
【請求項６】
デジタル・コンピュータの内部メモリにロード可能なコンピュータ・プログラムであって、コンピュータ上で実行されたときに、請求項１乃至５に記載の方法を実行するよう実行するためのソフトウェア・コード部分を含む、コンピュータ・プログラム。
【請求項７】
偽装コマンド・ボタンを検出するためのシステムであって、
ポップアップ・ウィンドウに関する作成プロセスを追跡するための構成要素と、
前記ポップアップ・ウィンドウ内のコマンド・ボタンの作成を検出するための構成要素と、
前記コマンド・ボタンの割り当て値をチェックするための構成要素と、
前記コマンド・ボタンの選択時に生成されたフォローアップ・アクションを判断するための構成要素と、
を含むシステム。
【国際調査報告】
2010500674.tif 000009
2010500674.tif 000010