(57)【要約】  ウェブページに含まれる埋め込みコードに関する情報を、ユーザがウェブページをダウンロードする前にユーザに自動的に配信するためのシステム及び方法を開示する。検索エンジンが、ユーザが要求する標準的な題材のワード検索を行うことに加え、個々のウェブページを検索して、ウェブページに埋め込みコードが存在することを示す情報についての検索結果の一部としてユーザに表示する。ウェブページが埋め込みコードを含むと判断された場合、検索結果のグラフィカルユーザインタフェースに、結果としてどのウェブページが埋め込みコードを含むかをユーザに示す追加情報が与えられる。ウェブページが、悪意のあるものであると認知されている埋め込みコードを含む場合、ユーザに警告を行うこともでき、この結果、ウェブページの埋め込みコード情報に基づいて検索結果の順序が修正される。【選択図】      図２
2009541822.tif 000002
【特許請求の範囲】
【請求項１】
検索要求を受け取るステップと、
前記検索要求に含まれる基準に適合する１又はそれ以上のウェブページを識別するステップと、
前記検索要求に応答して、前記検索要求に含まれる前記基準に適合する前記１又はそれ以上のウェブページと、埋め込みコードを含む前記１又はそれ以上のウェブページの各々に関して前記埋め込みコードから得られる情報とを識別する検索結果を送信するステップと、
を含むことを特徴とする方法。
【請求項２】
埋め込みコードを求めて前記１又はそれ以上のウェブページの各々を検索するステップをさらに含む、
ことを特徴とする請求項１に記載の方法。
【請求項３】
検索ステップは、埋め込みコード識別子要素に関連するテキストを求めて前記１又はそれ以上のウェブページの各々を検索するステップをさらに含む、
ことを特徴とする請求項２に記載の方法。
【請求項４】
検索ステップは、ＥＭＢＥＤ、ＡＰＰＬＥＴ、ＯＢＪＥＣＴ、ＩＦＲＡＭＥ、及びＳＴＹＬＥから選択される埋め込みコード識別子要素を検索するステップをさらに含む、
ことを特徴とする請求項３に記載の方法。
【請求項５】
前記検索要求に含まれる基準に適合する少なくとも１つのウェブページ内の埋め込みコードを識別するステップをさらに含む、
ことを特徴とする請求項１に記載の方法。
【請求項６】
埋め込みコードを識別するステップは、前記埋め込みコードに関連する識別子を取り出すステップをさらに含む、
ことを特徴とする請求項５に記載の方法。
【請求項７】
前記識別子は前記埋め込みコードのＵＲＬである、
ことを特徴とする請求項６に記載の方法。
【請求項８】
埋め込みコードを含む前記１又はそれ以上のウェブページの各々について、前記ウェブページ内の前記埋め込みコードを埋め込みコードのデータベースと比較するステップをさらに含む、
ことを特徴とする請求項１に記載の方法。
【請求項９】
前記埋め込みコードが悪意のあるものであると前記データベースにおいて識別された場合、前記埋め込みコードを含む前記ウェブページが潜在的に危険なものであることを前記検索結果において示すステップをさらに含む、
ことを特徴とする請求項８に記載の方法。
【請求項１０】
埋め込みコードを含む前記１又はそれ以上のウェブページの各々について、前記ウェブページが特定の種類の埋め込みコードの１又はそれ以上を含むことを前記検索結果において示すステップをさらに含む、
ことを特徴とする請求項１に記載の方法。
【請求項１１】
ユーザが提供する検索基準に適合するウェブページを検索するとともに前記ユーザが提供する検索基準に適合するウェブページのリストを生成するようにされ、さらに前記ウェブページが埋め込みコードを含む旨を示すテキストを求めて前記ユーザが提供する検索基準に適合する個々のウェブページを検索するようにされた検索エンジンを含む、
ことを特徴とするシステム。
【請求項１２】
前記検索エンジンはさらに、ウェブページが埋め込みコードを含む旨を前記リストで示すようにされた、
ことを特徴とする請求項１１に記載のシステム。
【請求項１３】
前記検索エンジンと通信し、少なくとも１つの埋め込みコードを悪意のあるものとして識別するデータベースをさらに含む、
ことを特徴とする請求項１１に記載のシステム。
【請求項１４】
前記検索エンジンはさらに、ウェブページ内の前記埋め込みコードを識別するとともに該識別した埋め込みコードを前記データベースにおいて識別された前記埋め込みコードと比較するようにされた、
ことを特徴とする請求項１３に記載のシステム。
【請求項１５】
前記検索エンジンはさらに、前記埋め込みコードの種類を判断するようにされた、
ことを特徴とする請求項１２に記載のシステム。
【請求項１６】
前記検索エンジンは、前記埋め込みコードの種類を前記リスト上で示す、
ことを特徴とする請求項１５に記載のシステム。
【請求項１７】
検索エンジンにより生成され、検索要求者に表示されるグラフィカルユーザインタフェースであって、
検索要求者が提供する検索基準に適合する項目のリストと、
個々の項目に関連して、該関連する項目に含まれる埋め込みコードを記述する情報を含む埋め込みコード情報エリアと、
を含むグラフィカルユーザインタフェース。
【請求項１８】
前記関連する項目に含まれる埋め込みコードに基づいて、前記リストにおける前記項目の表示を制御する少なくとも１つのユーザ選択可能な制御要素を含む設定エリアをさらに含む、
ことを特徴とする請求項１７に記載のグラフィカルユーザインタフェース。
【請求項１９】
前記情報は、各々が埋め込みコードの様々な種類に関連付けられた１又はそれ以上のアイコンを含む、
ことを特徴とする請求項１７に記載のグラフィカルユーザインタフェース。
【請求項２０】
少なくとも１つのアイコンは、前記検索エンジンが認知する情報に基づいて、前記埋め込みコードが悪意のあるものであることを示す、
ことを特徴とする請求項１９に記載のグラフィカルユーザインタフェース。
【請求項２１】
検索要求を受け取るステップと、
前記検索要求に含まれる基準に適合する１つ又はそれ以上のコンテンツ項目を識別するステップと、
前記検索要求に含まれる前記基準に適合する前記１又はそれ以上のコンテンツ項目を識別し、前記コンテンツ項目内の埋め込みコードの存在を識別する情報をさらに含む検索結果を、前記検索要求に応答して送信するステップと、
を含むことを特徴とする方法。
【請求項２２】
前記１又はそれ以上のコンテンツ項目のいずれかが埋め込みコードを含むかどうかを判断するステップをさらに含む、
ことを特徴とする請求項２１に記載の方法。
【請求項２３】
決定ステップは、
前記１又はそれ以上のコンテンツ項目の各々について、前記コンテンツ項目を、埋め込みコードを含むコンテンツ項目を識別するデータベースと比較するステップと、
前記データベースにおいてコンテンツ項目が識別された場合、前記コンテンツ項目が埋め込みコードを含むと判断するステップと、
をさらに含むことを特徴とする請求項２２に記載の方法。
【請求項２４】
埋め込みコードを含むコンテンツ項目を求めてネットワークを検索するステップと、
前記ネットワーク上の埋め込みコードを含む個々のコンテンツ項目について、前記コンテンツ項目が埋め込みコードを含むコンテンツ項目であると識別する情報を前記データベースに記憶するステップと、
をさらに含むことを特徴とする請求項２２に記載の方法。
【請求項２５】
前記コンテンツ項目はウェブページであり、検索ステップは、
埋め込みコード識別子要素に関連するテキストを求めて前記ネットワーク上のウェブページを検索するステップと、
埋め込みコード識別子要素に関連するテキストを含むことが判明した個々のウェブページの識別子を前記データベースに記憶するステップと、
をさらに含むことを特徴とする請求項２４に記載の方法。
【請求項２６】
検索ステップは、ＥＭＢＥＤ、ＡＰＰＬＥＴ、ＯＢＪＥＣＴ、ＩＦＲＡＭＥ、及びＳＴＹＬＥから選択される埋め込みコード識別子要素を検索するステップをさらに含む、
ことを特徴とする請求項２５に記載の方法。
【請求項２７】
前記識別子は前記ウェブページのＵＲＬである、
ことを特徴とする請求項２５に記載の方法。
【請求項２８】
前記ネットワーク上の埋め込みコードを含む個々のコンテンツ項目について、前記コンテンツ項目に含まれる前記埋め込みコードを識別する情報を前記データベースに記憶するステップをさらに含む、
ことを特徴とする請求項２４に記載の方法。
【請求項２９】
前記埋め込みコードが悪意のあるものであると識別された場合、前記埋め込みコードを含む前記コンテンツ項目が潜在的に悪意のあるものである旨を前記検索結果において示すステップをさらに含む、
ことを特徴とする請求項２８に記載の方法。
【請求項３０】
埋め込みコードを含む個々のコンテンツ項目について、前記コンテンツ項目が特定の種類の埋め込みコードの１又はそれ以上を含むことを前記検索結果において示すステップをさらに含む、
ことを特徴とする請求項２１に記載の方法。
【請求項３１】
検索要求を受け取るステップと、
前記検索要求に含まれる基準に適合する少なくとも１つのコンテンツ項目を識別するステップと、
前記少なくとも１つのコンテンツ項目を識別し、該コンテンツ項目内の潜在的に悪意のある埋め込みコードの存在を識別する情報をさらに含む検索結果を、前記検索要求に応答して送信するステップと、
を含むことを特徴とする方法。
【請求項３２】
前記少なくとも１つのコンテンツ項目が潜在的に悪意のある埋め込みコードを含むかどうかを判断するステップをさらに含む、
ことを特徴とする請求項３１に記載の方法。
【請求項３３】
決定ステップは、
前記少なくとも１つのコンテンツ項目を、潜在的に悪意のある埋め込みコードを含むコンテンツ項目を識別するデータベースと比較するステップと、
前記データベースにおいて前記コンテンツ項目が識別された場合、前記コンテンツ項目が潜在的に悪意のあるものである埋め込みコードを含むと判断するステップと、
をさらに含むことを特徴とする請求項３２に記載の方法。
【請求項３４】
潜在的に悪意のあるものである埋め込みコードを含むコンテンツ項目を求めてネットワークを検索するステップと、
前記コンテンツ項目を、潜在的に悪意のあるものである埋め込みコードを含むコンテンツ項目として識別する情報を前記データベースに記憶するステップと、
をさらに含むことを特徴とする請求項３２に記載の方法。
【請求項３５】
前記コンテンツ項目はウェブページであり、検索ステップは、
埋め込みコード識別子要素に関連するテキストを求めて前記ネットワーク上のウェブページを検索するステップをさらに含む、
ことを特徴とする請求項３４に記載の方法。
【請求項３６】
検索ステップは、
ＥＭＢＥＤ、ＡＰＰＬＥＴ、ＯＢＪＥＣＴ、ＩＦＲＡＭＥ、及びＳＴＹＬＥから選択された埋め込みコード識別子要素を検索するステップをさらに含む、
ことを特徴とする請求項３５に記載の方法。
【請求項３７】
前記情報は前記コンテンツ項目のＵＲＬを含む、
ことを特徴とする請求項３４に記載の方法。
【請求項３８】
前記コンテンツ項目に含まれる前記潜在的に悪意のあるものである埋め込みコードを識別する情報を前記データベースに記憶するステップをさらに含む、
ことを特徴とする請求項３４に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
（著作権の通知）
本特許文書の開示部分は、著作権保護される内容を含む。著作権所有者は、本特許文書又は本特許情報の開示を特許商標庁の特許ファイル又は記録に表されるように複製することについては異議を有さないが、それ以外については全ての著作権を留保する。
ウェブページは、フォーマット化したテキストよりも多くのものを含むことが多い。現在では、ウェブページを閲覧するコンピュータ上でスクリプト又は他の種類のコードを実行させるコマンドをウェブページに含めることが一般的である。これは、しばしばコード又はソフトウェアのウェブページ内への「埋め込み」と呼ばれ、このウェブページ内では実際のコードが表示されていなくても、ウェブページ内のコマンドにより、閲覧過程の一部として、或いは何らかのユーザ行為に応答してコードが実行される。ＡｃｔｉｖｅＸ、Ｆｌａｓｈ、Ｓｈｏｃｋｗａｖｅ、Ｊａｖａｓｃｒｉｐｔ（登録商標）及びスタイルシートは全て、ウェブページの閲覧時にコンピュータ上で自動的に実行できる異なる種類の埋め込みコードの例である。
【０００２】
埋め込みコードは閲覧を行うコンピュータ上で実行されるため、これらの実行ファイルは、不正目的で他人のコンピュータへのアクセス権を得るために悪者に使用されることが多い。例えば、ＡｃｔｉｖｅＸ制御を使用して、コンピュータがウェブページを閲覧した時に、コンピュータユーザに知られずにコンピュータにダイヤラ、スパイウェア、又はトロイの木馬をインストールすることができる。（ページを作成するＨＴＭＬコードなどの）ウェブページのソースコードを調べなければ、閲覧者は、通常、どのような埋め込みコードが実行されるのかをウェブページの閲覧時に知ることになる。また、単にソースコードを見るだけでは、ユーザは、埋め込みコードの項目が悪意のあるものであるかどうかを判断できないことが多い。
【発明の概要】
【課題を解決するための手段】
【０００３】
この状況を踏まえて本発明を開発してきた。本発明は、ユーザが閲覧するウェブページをダウンロードする前に、ウェブページに含まれる埋め込みコードに関する情報をユーザに自動的に配信するためのシステム及び方法に関する。ある実施形態では、検索エンジンが、ユーザが要求する標準的な題材のワード検索を行うことに加え、以前に作成したウェブページのインデックス又は個々のウェブページを検索して、ウェブページに埋め込みコードが存在することを示す情報についての検索結果の一部としてユーザに表示する。ウェブページが埋め込みコードを含むと判断された場合、検索結果のグラフィカルユーザインタフェースに、結果としてどのウェブページが埋め込みコードを含むかをユーザに示す追加情報が与えられる。ウェブページが、悪意のあるものであると認知されている埋め込みコードを含む場合、ユーザに警告を行うこともでき、この結果、ウェブページの埋め込みコード情報に基づいて検索結果の順序が修正される。
【０００４】
１つの態様では、本発明は、ネットワーク上のウェブページなどのコンテンツ項目を検索するための方法であると考えることができる。この方法は、検索要求を受け取るステップと、検索要求に含まれる基準に適合する１又はそれ以上のウェブページを識別するステップとを含む。次に、検索要求に応答して検索結果が作成され、送信される。検索結果は、検索要求に含まれる基準に適合する１又はそれ以上のウェブページを識別する情報と、埋め込みコードを含む１又はそれ以上のウェブページの各々について埋め込みコードから得た情報とを含む。
【０００５】
別の態様では、本発明は、ユーザが提供する検索基準に適合するウェブページを検索するとともにユーザが提供する検索基準に適合するウェブページのリストを作成するようにされた検索エンジンを含むデジタル情報を求めてネットワークを検索するためのシステムであると考えることができる。検索エンジンはさらに、ウェブページが埋め込みコードを含むことを示すテキストを求めて、ユーザが提供する検索基準に適合する個々のウェブページを検索するようにされる。また、検索エンジンはさらに、ウェブページが埋め込みコードを含む旨をリストで示すようにされる。本システムはまた、少なくとも１つの埋め込みコードを悪意のあるものとして識別する検索エンジンと通信するデータベースを含むこともできる。
【０００６】
さらに別の態様では、本発明は、検索エンジンにより生成され、検索要求者に表示されるグラフィカルユーザインタフェースであると考えることができる。グラフィカルユーザインタフェースは、検索要求者により提供され、個々の項目に関連付けられた検索基準に適合する項目のリスト、関連する項目に含まれる埋め込みコードを記述する情報を含む埋め込みコード情報エリアを含む。
【０００７】
以下の詳細な説明を読み関連図面を参照することにより、本発明を特徴付けるこれらの及びその他の様々な特徴並びに利点が明らかになるであろう。以下の説明において本発明の追加の特徴を示し、その一部が説明から明らかになり、或いは本発明を実践することにより知ることができるであろう。本発明の利点及び特徴は、書面による説明及びその特許請求の範囲並びに添付図面に具体的に示す構造により完全に理解及び実現されるであろう。
【０００８】
前述の概要及び以下の詳細な説明は双方ともに例示的かつ説明的なものであり、これらは、特許請求の範囲に記載の本発明のさらなる説明を行うことを意図されたものであると理解されたい。
【０００９】
本出願の一部を形成する以下の図面は、本発明の実施形態を例示として示すものであり、本明細書に添付する特許請求の範囲に基づく本発明の範囲をいかなる方法によっても限定するものではない。
【図面の簡単な説明】
【００１０】
【図１】ＡｃｔｉｖｅＸ制御によるウェブページのソースコードの例を示す図である。
【図２】潜在的な埋め込みコードを求めてウェブページをスクリーニングし、この情報を検索結果の一部としてユーザに表示する方法の実施形態を示す図である。
【図３Ａ】ウェブページ内の埋め込みコードに関する警告を表示するグラフィカルユーザインタフェースの実施形態を示す図である。
【図３Ｂ】ウェブページ内の埋め込みコードに関する警告を表示するグラフィカルユーザインタフェースの実施形態を示す図である。
【図４】上述の検索早期警告システムを組み込むクライアントサーバのコンピューティングアーキテクチャの実施形態を示す図である。
【発明を実施するための形態】
【００１１】
図１は、ＡｃｔｉｖｅＸ制御を含むウェブページのソースコードの例である。ソースコード１００は、タイトル１０２とテキストを含む本体１０４とを含む。また、ソースコード１００は、埋め込みコードの項目を識別する埋め込みコード識別子要素１０８を含む。図示の実施形態では、ＨＴＭＬ要素「ＯＢＪＥＣＴ」を使用して、この場合ＡｃｔｉｖｅＸ制御である埋め込みコードの項目「ｙｉｎｓｔ３．ｃａｂ」を識別している。ＨＴＭＬ言語は、ウェブページにコードを埋め込むための多くの異なる手段、例えばほんの２、３例を挙げると、ＡＰＰＬＥＴ要素、図示のＯＢＪＥＣＴ要素、及びＥＭＢＥＤ、ＩＭＧ、及びＩＦＲＡＭＥ要素などを含む。
【００１２】
他の言語も、同様の埋め込みコード識別子要素を有する。例えば、Ｊａｖａｓｃｒｉｐｔ（登録商標）では、記述「ｖａｒ  ｏｂｊ＝ｎｅｗ  ＡｃｔｉｖｅＸＯｂｊｅｃｔ（ｐｒｏｇＩＤ）；」は、ジャバスクリプトによるコードをページに埋め込むための作成例である。別の例として、記述「Ｓｅｔ  ｓｗｏｂｊｅｃｔ＝ＣｒｅａｔｅＯｂｊｅｃｔ（”ＳｈｏｃｋｗａｖｅＦｌａｓｈ．ＳｈｏｃｋｗａｖｅＦｌａｓｈ．８”）」は、Ｆｒｉｅｎｄｌｙ  Ｎａｍｅを使用したＶＢＳｃｒｉｐｔによるＡｃｔｉｖｅＸ制御の作成例である。
【００１３】
上述した本文で通常発見される記述に加え、コードを埋め込む別の方法として、ＳＴＹＬＥ要素で指定したものなどの「スタイルシート」を使用する方法がある。スタイルシートは通常、テキスト及びグラフィクスをページ上に表示する方法を制御する一方で、埋め込みコードをスタイルシートに含め、或いはスタイルシートで示すことができる。
【００１４】
使用されるプログラミング言語に応じて、ウェブページ内にコードを埋め込むための多くの異なる方法が存在する。上述のものに加え、ウェブページに使用する言語は、コードを埋め込むための別の機能又は手段を有することができる。ウェブページにコードを埋め込むことは当業では周知である。
【００１５】
図１では、埋め込みコード識別子要素１０８が、埋め込みコード「ｙｉｎｓｔ３．ｃａｂ」を識別し、発見し、ダウンロードし、さらに実行するために、ウェブページ１００を表示しているコンピュータに必要な情報全てを含む。図示のＯＢＪＥＣＴ要素１０８では、ファイル「ｙｉｎｓｔ３．ｃａｂ」を取得できるネットワークの位置を識別するユニフォームリソースロケータ（ＵＲＬ）が与えられている。
【００１６】
位置に加え、埋め込みコード識別子要素は、多くの場合埋め込みコードの何らかの識別子を与える。例えば、ＡｃｔｉｖｅＸ制御の場合、識別子は、（第２の埋め込みコード識別子１０８に示すように）ＡｃｔｉｖｅＸ制御又はＡｃｔｉｖｅＸ制御の「フレンドリーネーム」に関連付けられたクラスＩＤであってもよい。与えられる識別子の種類は、使用される埋め込みコード識別子要素によって変わる可能性があり、またウェブページ設計者の設定に基づいて変わる可能性もある。埋め込みコードを使用してコンピュータのセキュリティを侵害しようとする悪者は、可能であれば識別子に誤報を与えることにより、しばしば全力で埋め込みコードの識別を難読化する。
【００１７】
にも関わらず、ウェブページのソースコードの単純な検査により、埋め込みコードの存在を判断することができる。また、この埋め込みコードの種類及び性質及びしばしば識別子を判断することもできる。
【００１８】
図２は、潜在的な埋め込みコードを求めてウェブページをスクリーニングし、この情報を検索結果の一部としてユーザに表示する方法の実施形態を示す図である。
【００１９】
図示の実施形態では、方法２００は、ユーザが検索エンジンにアクセスし、例えば検索要求受信動作２０２において「ベースボール」という語に関連するページに対する検索要求などの検索要求を入力することにより、検索を開始することから始まる。
【００２０】
次に検索エンジンは、テキスト検索動作２０４において、検索基準、すなわちベースボールに適合する全てのウェブページを求めてネットワークの検索を行うことができる。ある実施形態では、このテキスト検索２０４は、通常、以前に作成されたウェブページのインデックスをネットワーク上で検索するステップを含む。或いは、このテキスト検索２０４は、ネットワーク自体を検索するステップを含むことができる。しばしば、このような検索は、ウェブページのテキストの検査に関与して結果の組を返す。
【００２１】
図示の実施形態では、埋め込みコード検索動作２０６において、埋め込みコード識別子要素を求めて、結果の組に含まれるウェブページの各々も検索される。ある実施形態では、テキスト検索動作２０４及び埋め込みコード検索動作２０６を連続して行うことができる。或いは、テキスト検索動作２０４及び埋め込みコード検索動作２０６を、一つの統合した検索動作の一部として行うことができる。
【００２２】
埋め込みコード検索動作２０６は、ウェブページにコードが埋め込まれているという指標を求めて個々のウェブページを検索する。この検索は、ウェブページのソースコード内の任意の周知の埋め込みコード識別子要素の精査、或いは検索を含むことができる。例えば、システムは、埋め込みアプレット、ＡｃｔｉｖｅＸ制御、プラグイン、Ｊａｖａｓｃｒｉｐｔ（登録商標）などの指標を求めてページを精査することができる。この動作は、ウェブページのソースに実際に含まれている実行可能コードを検索するステップを含むことができる。ある実施形態では、ウェブページを閲覧することにより、ブラウザウィンドウにテキストを表示するのに必要なソフトウェア以外の任意のソフトウェアが閲覧を行うコンピュータ上で実行されることになる場合、埋め込みコード検索動作２０６において、このソフトウェアが検索エンジンにより識別される。
【００２３】
本明細書では、閲覧時に、閲覧を行うコンピュータにソフトウェアのダウンロード及び／又は実行を行わせるウェブページのことを、「埋め込みコードを含む」ウェブページと呼ぶ。読者は、このような埋め込みソフトウェアはウェブページのソースコードによって参照できるだけであり、実際にウェブページのソースコード内には存在しないということを理解するであろう。
【００２４】
検索動作２０６は、埋め込みコード識別子を求めてウェブページを単に精査することに加え、ウェブページを実際に表示するステップをさらに含むことができる。ウェブページを実際に表示することにより、通常の状況では潜在的な埋め込みコードのソースとは考えられない画像ファイル又は音声ファイルなどのダミーファイルを介して密かに埋め込まれたいくつかのオブジェクトを検出することができる。
【００２５】
埋め込みコード検索動作２０６により、ウェブページが埋め込みコードを含むと判断された場合、この埋め込みコードに関するウェブページ内で提供される情報が検査される。例えば、ＨＴＭＬの中のＥＭＢＥＤ要素は、埋め込みコードに関する情報を含むことができるＣＬＡＳＳ属性を含む。ウェブページにコードを埋め込む他の手段は、同様に、名前、識別子、（ＵＲＬアドレスなどの）位置、発行元などの少なくともいくつかの情報を提供する。にも関わらず、埋め込みコードに関するこの情報は検査され、埋め込みコード識別動作２０８において読み出される。
【００２６】
埋め込みコード識別動作２０８は、検索結果の中のウェブページを、個々のページ上で検出された埋め込みコード別にリストする適当な順序を決定するために、情報をカテゴリー化するステップを含むことができる。
【００２７】
図示の実施形態では、埋め込みコード検索動作２０６及び埋め込みコード識別動作２０８は、テキスト検索動作２０４の結果によりリストされたウェブページ上で行われる。しかしながら、別の実施形態では、埋め込みコード検索動作２０６はまた、或いは別様に、検索エンジンによりインデックス又はインデックスエントリが作成された時に生成されたフラグ、識別子、又は何らかの埋め込みコード情報などの埋め込みコード情報を求めて、以前作成されたインデックスを検索するステップを含むことができる。
【００２８】
例えば、多くの最新の検索エンジンは、ウェブクローラを使用して、インターネットを連続的に巡回し、ウェブページのインデックス又はその他のデータベースを作成する。ある実施形態では、個々のウェブページに遭遇し、これらがインデックスされる度に、埋め込みコード検索動作２０６及び埋め込みコード識別動作２０８が行われ、将来的な検索を容易にするために、埋め込まれたソフトウェアに関する情報が検索インデックスに追加される。従って、検索要求を受け取ったときに必要なことは、要求されるインデックスの検索動作２０４を行い、結果を表示すること、すなわち以前に識別され、カテゴリー化され、従って結果表示の一部としてユーザに容易に表示される個々のページに関する埋め込みコード情報を表示することである。
【００２９】
埋め込みコード識別動作２０８の後、ウェブページ内の個々の埋め込みコードについての情報を、比較動作２１０において既知の埋め込みソフトウェアのデータベースと比較する。比較動作２１０は、埋め込みコードに関して分かっている情報を既知の埋め込みソフトウェアと適合させて、埋め込みソフトウェアが正当なものであるか悪質なものであるかを判断するステップを含むことができる。データベースはすでに開発されてきており、以前の検索で検索エンジンに識別された全ての埋め込みコードを含むことができる。埋め込み要素が悪質なものであると判断された場合、データベースはこの新しい情報を反映するように更新される。また、コードの作成者又はウェブページの作成者によるその埋め込みコードの登録に基づいて、埋め込みコードが正当なものであることを知ることができる。これにより、正当な埋め込みコードの作成者は、ユーザがこの作成者のコードを悪質なコードと間違えないようにすることができる。
【００３０】
比較動作２１０は、埋め込みコードがデータベースに認知されているかどうか、及びデータベース内の情報に基づいてコードが正当な又は悪質なものであるということを認知されているかどうかを識別する。
【００３１】
次に、結果表示動作２１２において、検索を要求するユーザに検索結果が表示される。結果表示動作２１２は、要求された検索に基づいてウェブページのリスト又はその他の検索結果を含むグラフィカルユーザインタフェース（ＧＵＩ）を生成するステップと、ユーザの検索要求に応答してこのＧＵＩをユーザへ送信するステップとを含むことができる。次に、ＧＵＩがユーザのコンピュータ装置に表示される。例えば、ＧＵＩは、検索システムにより生成され、ユーザのコンピュータ装置上のブラウザへ送信される動的な．ＨＴＭＬページであってもよい。
【００３２】
ある実施形態では、ユーザが提供する検索基準に適合するウェブページが、個々のページへのリンクのリスト内などに表示される（図３Ａ及び図３Ｂを参照）。結果表示動作２１２は、例えばウェブページのソースコードのテキストから直接取り出される、ウェブページのコンテンツを記述する追加のテキストを表示することができる。
【００３３】
結果表示動作２１２は、検索結果にリストされたウェブページ上の埋め込みコードの存在に関する情報をユーザに表示するステップを含む。単純な実施形態では、表示する情報は、ウェブページが埋め込みコードを含む旨の表示であってもよい。別の実施形態では、表示する情報は、個々のウェブページに含まれる（単複の）埋め込みコードの種類（すなわち、ＡｃｔｉｖｅＸ制御、Ｆｌａｓｈ、Ｓｈｏｃｋｗａｖｅ、Ｊａｖａｓｃｒｉｐｔｓ（登録商標）など）を示すことができる。さらに別の実施形態では、表示する情報は、比較動作２１０の結果の表示（すなわち、ウェブページが、悪意のあるコード、登録された／既知の正当なコード、又は未知のコードを含む旨）を含むことができる。
【００３４】
表示された情報に基づいて、検索を要求したユーザは、ここで、検索結果リスト内の個々のウェブページに含まれる埋め込みコードに関する情報を有するようになる。これにより、ユーザは、個々のウェブページにアクセスするかどうか、及びこのようなアクセスの結果としてどのような潜在的埋め込みコードが実行され得るのかについて、詳細な情報を得たうえで判断できるようになる。
【００３５】
既知の悪意のあるコードをユーザに対して識別する用途に加え、大半の埋め込みコードのインストール及び実行は時間のかかる処理であるため、埋め込みコードが存在した場合、所定のウェブページの表示にどれだけの時間がかかるかについての表示が行われる。
【００３６】
方法２００の代替の実施形態も可能である。例えば、検索結果と同じ情報を依然としてユーザに提供しながら、動作の順序を変更することができる。ある実施形態では、テキスト検索動作２０４及び埋め込みコード検索動作２０６を、特定の検索要求の受け取りに応答してではなく、ネットワーク上のコンテンツの一般検索の一部として定期的に（又は連続的に）行うことができる。この時、取得した情報をインデックス、データベースなどの形で記憶することができ、その後、検索要求受信動作２０２が行われた際に、このデータベースが照会される。
【００３７】
さらに別の実施形態では、埋め込みコード検索動作２０６を、任意のテキスト検索とは無関係に、ネットワーク上のコンテンツの一般検索の一部として定期的に（又は連続的に）行うことができる。その後、悪意のあるコード、又は埋め込みコードを含むことがわかった任意のウェブページ又はコンテンツ項目のＵＲＬ又は他の識別子をデータベースに追加することができ、検索結果が生成される際には必ずこのデータベースが照会される。埋め込みコードの識別子、埋め込みコードの種類、埋め込みコードが悪意のあるものであると認知されているかどうかに関する情報、及び埋め込みコードのＵＲＬなどの埋め込みコードに関する他の情報をデータベースに追加することもできる。次に、検索を行い、検索結果の組を生成してユーザに表示するステップの一部として、検索結果の項目のいずれかが埋め込みコード又は悪意のあるソフトウェアを含むと以前に判断されていたかどうかを判定するための比較動作において、検索結果にリストされた項目がデータベースと相互参照される。この実施形態は、埋め込みコード又は悪意のあるウェブページに関する情報が、例えばコミュニティのメンバー又はセキュリティ組織などの、検索エンジン以外のソースにより提供されている場合に特に有用なものとなり得る。
【００３８】
図３Ａ及び図３Ｂは、ウェブページ内の埋め込みコードに関する警告を表示するグラフィカルユーザインタフェースの実施形態を示す図である。図示の実施形態では、グラフィカルユーザインタフェース３００は、ブラウザウィンドウ３０２のブラウザによって表示されるページ３０４に含まれ、このブラウザウィンドウ３０２は、モニタなどのディスプレイ装置上に表示される。ページ３０４は、検索基準ベースボールに適合するウェブページのリスト３０６を含む。
【００３９】
図示の実施形態では、リスト３０４内の個々のウェブページに関する埋め込みコード情報が、埋め込みコード情報エリア３０６に表示される。リスト３０４内の個々のウェブページエントリ３０８は、ウェブページに関連する埋め込みコード情報エリア３０６を含む。埋め込みコード情報エリア３０６は、関連するウェブページ上の埋め込みコードに関する情報をユーザに伝える（図示のような）アイコン、文字表示、又は他の表示を含むことができる。
【００４０】
表示される埋め込みコード情報の種類及び量は、検索エンジン設計者の設定によってのみ制限される。これらの情報を取り出すための検索エンジンの能力及びこのような表示に利用可能又は選択されるスペースに基づいて、より多くの又はより少ない情報を表示することができる。例えば、図示の実施形態では、関連するウェブページの埋め込みコードの存在及び種類を非常に小さなスペースで示すアイコン３１０、３１２、３１４、３１６が使用されている。個々のアイコン３１０、３１２、３１４、３１６は様々な情報をユーザに提供する。図示の実施形態では、第１のアイコン３１０は、関連するウェブページにＡｃｔｉｖｅＸ制御が埋め込まれている旨をユーザに示し、第２のアイコン３１２は、ウェブページにＳｈｏｃｋｗａｖｅ項目が埋め込まれている旨を示し、第３のアイコン３１４は、ウェブページにＦｌａｓｈ項目が埋め込まれている旨を示し、第４のアイコン３１６は、（比較動作２１０において、埋め込みコードが既知の悪意のあるコードとして識別されたような）安全でない埋め込みコードを示している。
【００４１】
このようなアイコン３１０、３１２、３１４、３１６は、ページへのアクセス時に、ユーザのコンピュータによりどのような埋め込みコードが自動的に実行されることになるかをユーザに示すことができる。或いは、このようなアイコン３１０、３１２、３１４は、例えばウェブページの全ての部分又は機能がアクセスを受けることによりウェブページの表示時には自動的に実行されない埋め込みコードの実行がトリガされると仮定した場合、ユーザのコンピュータによりどのような埋め込みコードが潜在的に実行され得るのかを、ページへのアクセス時にユーザに示すことができる。
【００４２】
図３Ａ及び図３Ｂに示す実施形態は、アイコンを利用してユーザに情報を伝える。読者は、文字、テーブル項目のチェックマーク、色などを介した方法を含む、同じ情報を示すための他の方法が存在することを理解するであろう。
【００４３】
また、上述のように、グラフィカルユーザインタフェース３００は、より多くの又はより少ない情報を要望通りに表示するよう修正することができる。例えば、個々のアイコン３１０、３１２、３１４、３１６の後に、ウェブページに含まれる埋め込みコードの異なる項目数を示す数字を表示することができる。この情報は、リスト３０４内の特定のウェブページのダウンロードに相対的にどれだけの時間がかかるかを判断する際に、何人かのユーザにとっては有用なものとなり得る。
【００４４】
本発明の実施形態により、ユーザは、ウェブページエントリ３０８内の埋め込みコードに基づいて検索結果がユーザに対してどのように提示されるかについての設定をさらに選択できるようになる。図示のグラフィカルユーザインタフェース３００の実施形態では、設定選択エリア３２０が提供され、ユーザはこのエリアを通じ、チェックボックスインタフェース要素を介して、どのウェブページを表示するかを選択することができる。例えば、ユーザは設定の選択を通じて、リストの終端に移動したリスト３０４から特定のタイプの埋め込みコードを含む全てのウェブページが削除されるように指示することができる。
【００４５】
別の実施例として、ユーザは設定の選択を通じて、悪意のあるものであると認知されている埋め込みコードを含む全てのウェブページを検索結果にリストしないように指示することができる。図３Ａ及び図３Ｂは、このシナリオを示したものである。図３Ａは、ユーザが設定選択エリア３２０において「安全でないコンテンツ」を含むウェブページが表示されないように選択した場合に表示されるリスト３０４を示している。図３Ｂは、ユーザが設定選択エリア３２０において「安全でないコンテンツ」を含むウェブページがリスト３０４に表示されるように選択した場合の同じ検索に関するリスト３０４を示している。この選択により、ウェブページにアクセスし、埋め込みコードをトリガする前であっても、ユーザが危険なコンテンツに対して警告を受けられるようにすることで、ユーザのコンピュータにインストールされているセキュリティレベルに加えて、ユーザに追加のセキュリティレベルが提供されることになる。
【００４６】
また、検索結果の個々のウェブページ内の埋め込みコードの種類及び／又は量に基づいてリスト３０４のエントリ３０８をソートするという設定を行うことができる。ユーザの設定の選択を通じてこのようなソートを制御することにより、ユーザは、埋め込みコードに基づいて結果がどのように提示されるかを修正できるようになる。これらの設定は、設定選択エリア３２０を介して、或いはドロップダウンボックス又は当業で公知の他の何らかの表示手段を通じ、アクセス可能な設定メニュー（図示せず）を介して制御することができる。
【００４７】
図４は、上述のような検索早期警告システムを組み込むクライアントサーバのコンピューティングアーキテクチャの実施形態を示す図である。図示のアーキテクチャ４００では、いくつかの（３つを図示している）クライアントコンピュータ装置４０２（又は、簡単にクライアント４０２）が、図示のようにインターネットなどのネットワーク４０４に接続されている。クライアント４０２は、パーソナルコンピュータ（ＰＣ）などのパーソナルコンピュータ装置又はスマートフォンなどのハンドヘルドコンピュータ装置であってもよい。クライアント４０２は、オペレーティングシステム及びブラウザを利用して、検索サーバ４１２及びウェブページサーバ４０８などの他のコンピュータ装置とネットワーク接続を通じてやりとりすることができる。クライアントサーバのアーキテクチャ及び構成要素は当業で知られており、任意の適当なコンピュータ装置をクライアント４０２として使用することができる。
【００４８】
アーキテクチャ４００は、検索エンジン４０６を含む検索サーバ４１２を含む。クライアント４０２は、検索エンジン４０６のＧＵＩであるウェブページを通じて検索エンジン４０６とやりとりすることができる。図示の実施形態では、検索エンジン４０６は、クライアント４０２が行う検索要求に応答して、ネットワーク４０４を介してアクセス可能なウェブページサーバ４０８上で、要求者が提供する検索基準に適合するウェブページを求めてウェブページの検索を行う。
【００４９】
検索エンジン４０６は、検索結果のリスト又はその他の表示を生成し、これらを要求側クライアント４０２へ送信することに加え、上述の方法などを介して埋め込みコードを求めてリスト内の個々のウェブページの検索も行う。この結果、要求者に送信される検索結果に埋め込みコードに関する情報が含まれるようになる。
【００５０】
検索エンジン４０６はさらに、悪意のあるものであると認知されている埋め込みコードのリストを含むデータベース４１０とやりとりするようにされる。データベース４１０は、安全であると認知されているか、或いは安全なものとして検索エンジン４０６に登録されているコードのリストを含むことができる。図示のように検索サーバ４１２上でデータベースを維持するか、或いは離れた位置で、データベース４１０を継続的に更新して新たに識別された埋め込みコードを含むようにするセキュリティオーソリティ（図示せず）などがデータベースを維持することができる。
【００５１】
ある実施形態では、データベース４１０は、埋め込みコードを含む既知のウェブページ又はコンテンツのリストを含むことができる。このリストには、上述のように要求者に送信するための検索結果を生成する処理の一部としてアクセスすることができる。ウェブページなどの、検索結果の中の項目がデータベースにおいて識別された場合、適当な情報又はアイコンで項目にフラグが立てられる。この結果、データベース４１０は、埋め込みコードを有する全ての既知のウェブページ又は項目のリストを含むことができるようになり、また埋め込みコードの種類を識別するリスト内の個々のエントリに関する情報及びウェブページが悪意のあるソフトウェアを含むことが認知されているかどうかに関する情報を含むことができるようになる。検索エンジン４０６及びコミュニティのメンバーが新しいウェブページを識別し、或いは新たな又は更新した情報を提供したときに、データベース４１０を最新の情報を反映するように更新又は修正することができる。
【００５２】
データベース４１０を、検索サーバ４１２に接続された大容量記憶装置（図示せず）に記憶することができ、或いはデータベース４１０をサーバ４１２の一部と見なすことができる。大容量記憶装置及びその関連するコンピュータ可読媒体により不揮発性記憶装置が提供される。本明細書に含まれるコンピュータ可読媒体についての説明は、ハードディスク又はＣＤ−ＲＯＭドライブなどの大容量記憶装置を示すものであるが、当業者であれば、コンピュータ可読媒体は、検索サーバ４１２がアクセスできる任意の利用可能な媒体であってもよいことを理解すべきである。
【００５３】
一例として、限定的な意味ではないが、コンピュータ可読媒体はコンピュータ記憶媒体と通信媒体とを含むことができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又はその他のデータなどの情報を記憶するための任意の方法又は技術において実現される揮発性及び不揮発性、取り外し可能及び取り外し不可能媒体を含む。コンピュータ記憶媒体は、以下に限定されるわけではないが、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ又はその他の固体メモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ、又はその他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又はその他の磁気記憶装置、或いは要求された情報の記憶に使用でき、コンピュータがアクセスできる任意の他の媒体を含む。
【００５４】
本発明が、上述の並びに本明細書に固有の目的及び利点を十分達成するようにされたものであることは明白であろう。当業者であれば、本明細書内の本発明の方法及びシステムを多くの態様で実現することができ、従ってこれらの方法及びシステムは、上述の例示の実施形態及び実施例によって限定されるものではないということを理解するであろう。換言すれば、ハードウェア及びソフトウェアの様々な組合せの形で、単一の又は複数の構成要素により実行される機能的要素、及び個々の機能を、クライアント又はサーバレベルのいずれかにおけるソフトウェアアプリケーション間で分散することができる。これに関して、本明細書で説明した様々な実施形態の任意の数の特徴を１つの実施形態に組み合わせることができ、本明細書で説明した特徴全てよりも少ない特徴又は多くの特徴を有する代替の実施形態を実現することが可能である。
【００５５】
本開示のために様々な実施形態について説明したが、本発明の範囲内に十分に収まる様々な変更及び修正を行うことができる。例えば、．ＨＴＭＬウェブページという観点から実施形態を説明したが、当業者であれば、本技術を使用して、ＸＭＬ、音楽、アートワーク又はムービーなどの別の言語で書かれたウェブページを含む任意の種類のデジタルコンテンツを検索できることを理解するであろう。
【００５６】
さらに、検索がどのように行われるか及び検索結果にリストされる項目が埋め込みコード又は潜在的に悪意のあるコードを含むものであるとどのように判断されるかに関わらず、本発明の実施形態は、埋め込みコード又は潜在的に悪意のあるコードの存在を識別する検索結果を検索結果にリストされた項目の形でユーザに配信するものである。このような存在をユーザにどのように示すかは、検索結果をユーザに提示する方法によって異なるものであってもよい。
【００５７】
当業者が容易に想起し、開示する本発明の思想に含まれ、添付の特許請求の範囲で定義される他の数多くの変更を行うことができる。
【符号の説明】
【００５８】
２００  方法
２０２  検索要求を受け取る
２０４  ネットワーク上でページのインデックスのテキスト検索を行う
２０６  埋め込みコードを検索
２０８  埋め込みコードを識別
２１０  埋め込みコードをデータベースと比較
２１２  埋め込みコード情報を含む結果を表示
【図１】
2009541822.tif 000003
【図２】
2009541822.tif 000004
【図３Ａ】
2009541822.tif 000005
【図３Ｂ】
2009541822.tif 000006
【図４】
2009541822.tif 000007
【国際調査報告】
2009541822.tif 000008
2009541822.tif 000009