IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ベイド セキュア インコーポレイテッドの特許一覧

特許7381341悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム
<>
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図1
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図2
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図3
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図4
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図5
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図6
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図7
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図8A
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図8B
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図8C
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図9A
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図9B
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図10
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図11
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図12
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図13
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図14
  • 特許-悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-07
(45)【発行日】2023-11-15
(54)【発明の名称】悪性URL検出のための、最適走査パラメータ計算方法、デバイス、およびシステム
(51)【国際特許分類】
   H04L 51/212 20220101AFI20231108BHJP
   H04L 67/2871 20220101ALI20231108BHJP
   G06F 16/28 20190101ALI20231108BHJP
【FI】
H04L51/212
H04L67/2871
G06F16/28
【請求項の数】 14
(21)【出願番号】P 2019537336
(86)(22)【出願日】2019-04-30
(65)【公表番号】
(43)【公表日】2022-06-29
(86)【国際出願番号】 US2019029822
(87)【国際公開番号】W WO2020197570
(87)【国際公開日】2020-10-01
【審査請求日】2022-02-18
(31)【優先権主張番号】16/368,537
(32)【優先日】2019-03-28
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】519077355
【氏名又は名称】ベイド ユーエスエー インコーポレイテッド
【氏名又は名称原語表記】Vade USA, Inc.
(74)【代理人】
【識別番号】100115738
【弁理士】
【氏名又は名称】鷲頭 光宏
(74)【代理人】
【識別番号】100121681
【弁理士】
【氏名又は名称】緒方 和文
(72)【発明者】
【氏名】グタール セバスチャン
(72)【発明者】
【氏名】マイヤー マキシム マーク
【審査官】岩田 玲彦
(56)【参考文献】
【文献】特開2007-133488(JP,A)
【文献】米国特許出願公開第2018/0375877(US,A1)
【文献】米国特許出願公開第2017/0063893(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 51/212
H04L 67/2871
G06F 16/28
(57)【特許請求の範囲】
【請求項1】
コンピュータネットワーク上でメッセージングサービスによって実行されるコンピュータ実施方法であって、
プロセッサおよびメモリを含むコンピューティングデバイスにおいて、前記コンピュータネットワーク上で元の電子メッセージを受信することと、
前記受信した元の電子メッセージを前記メモリに記憶することと、
前記プロセッサを使用して、前記受信した電子メッセージから、潜在的にフィッシングキットと関連付けられるため疑わしいと判断されるUniform Resource Locator(URL)を抽出することと、
前記受信した電子メッセージから特徴を抽出することと、
最適走査パラメータを判断するために決定木を使用する関数を呼び出すことであって、前記決定木は、前記抽出された特徴を受け入れるように構成される根ノード、前記抽出された特徴のサブセットを評価するように構成される少なくとも1つの内部ノード、および、前記最適走査パラメータを出力するように構成される少なくとも1つの終端ノードを含むものであり、
前記決定木の前記根ノードに前記抽出された特徴を入力し、前記少なくとも1つの内部ノードにおいて前記抽出された特徴のサブセットを評価し、前記少なくとも1つの終端ノードから出力された前記最適走査パラメータを前記メモリに記憶することと、
前記受信した元の電子メッセージを、修正されたURLを含む修正された電子メッセージと置き換えることであって、前記修正されたURLは、前記受信した元の電子メッセージにおいて疑わしいと判断された前記URLを、書き換えられたURLと置き換えたものであり、前記書き換えられたURLは、クリックされた時、前記最適走査パラメータを使用して前記疑わしいと判断されたURLを走査するためのURL走査サービスに対する前記コンピュータネットワーク上での要求を生成するように構成されたものであり、
前記置き換えられたURLを有する前記修正された電子メッセージをエンドユーザのメールボックスに送ることと、を含む、コンピュータ実施方法。
【請求項2】
前記受信した元の電子メッセージを前記修正された電子メッセージと置き換えることは、前記URL走査サービスの基本のURL、前記疑わしいと判断されたURLの符号化バージョンを含む第1のURLパラメータ、および前記記憶された最適走査パラメータの符号化バージョンを含む第2のURLパラメータを含むように、前記疑わしいと判断されたURLを書き換えることを含む、請求項1に記載のコンピュータ実施方法。
【請求項3】
前記抽出された特徴は、前記受信した電子メッセージの受信者の国コードトップレベルドメイン、および前記受信した電子メッセージの主要言語のうちの少なくとも1つを含む、請求項1に記載のコンピュータ実施方法。
【請求項4】
前記抽出された特徴は、前記受信した電子メッセージにおけるブランドロゴおよび商標のうちの少なくとも1つを含む、請求項1に記載のコンピュータ実施方法。
【請求項5】
前記受信した電子メッセージから抽出される前記特徴を、当該抽出された特徴から計算されるさらなる特徴で補足することをさらに含み、
前記さらなる特徴で補足することは、
前記電子メッセージのテキストのコンテンツを解析すること、
ドメインネームシステム(DNS)にクエリすること、
WHOISにクエリすること、
IPアドレスジオロケーションデータベースにアクセスしかつクエリすること、
前記電子メッセージにおいて使用される主要言語を特定するために自然言語処理を適用すること、および、
前記電子メッセージにおける画像としてレンダリングされる商標登録グラフィックスまたは他のブランド識別子を認識しかつ抽出するために特徴検出コンピュータビジョンアルゴリズムを適用することのうちの少なくとも1つによって行われる、請求項1に記載のコンピュータ実施方法。
【請求項6】
コンピュータネットワーク上でメッセージングサービスによって実行されるコンピュータ実施方法であって、
プロセッサおよびメモリを含むコンピューティングデバイスにおいて、疑わしいURLを含む元の電子メッセージを受信することと、
前記受信した元の電子メッセージを前記メモリに記憶することと、
前記記憶された元の電子メッセージから特徴を抽出することと、
前記記憶された元の電子メッセージから抽出された前記特徴から最適走査パラメータを選択するように構成される関数を使用し、かつ選択された前記最適走査パラメータを前記メモリに記憶することと、
前記受信した元の電子メッセージを、修正されたURLを含む修正された電子メッセージと置き換えることであって、前記修正されたURLは、前記受信した元の電子メッセージにおける疑わしい前記URLを、書き換えられたURLと置き換えたものであり、前記書き換えられたURLは、クリックされた時、前記最適走査パラメータを使用して前記疑わしいURLを走査するためのURL走査サービスに対する前記コンピュータネットワーク上での要求を生成するように構成されたものであり、
前記置き換えられたURLを有する前記修正された電子メッセージをエンドユーザのメールボックスに送ることと、を含む、コンピュータ実施方法。
【請求項7】
前記受信した元の電子メッセージを前記修正された電子メッセージと置き換えることは、前記URL走査サービスの基本のURL、前記疑わしいURLの符号化バージョンを含む第1のURLパラメータ、および記憶された前記最適走査パラメータの符号化バージョンを含む第2のURLパラメータを含むように、前記疑わしいURLを書き換えることを含む、請求項6に記載のコンピュータ実施方法。
【請求項8】
前記関数は、電子メッセージから抽出された特徴から最適走査パラメータを選択することをトレーニングされ、
当該トレーニングは、
それぞれが潜在的にフィッシングキットと関連付けられる少なくとも1つの疑わしいURLを含む複数の電子メッセージを収集しかつ記憶すること、
前記複数の電子メッセージから特徴のセットを抽出すること、
前記抽出された特徴のセットから、対応するフィッシングキットのソースコードをプログラムでまたは手動で検査することによって判断される所望の最適走査パラメータのセットを提供すること、および、
教師あり学習アルゴリズムおよび前記所望の最適走査パラメータのセットを使用して、電子メッセージから抽出された前記特徴から前記最適走査パラメータを選択する関数をトレーニングすることによって、行われる、請求項6に記載のコンピュータ実施方法。
【請求項9】
前記関数は、電子メッセージから抽出された特徴から最適走査パラメータを選択することをトレーニングされ、
当該トレーニングは、
それぞれが潜在的にフィッシングキットと関連付けられる疑わしいURLを含む、複数の電子メッセージを収集しかつ記憶すること、
教師あり学習アルゴリズムを使用して、前記複数の電子メッセージのそれぞれに対して最適走査パラメータを判断する関数をトレーニングすることによって行われ、
前記最適走査パラメータを判断する関数のトレーニングは、
前記プロセッサを使用して、前記電子メッセージから特徴のセットを抽出し、
前記疑わしいURLによって指し示されるウェブサイトが所定のHTTP状態コードを返さなくなるか、または所定のURLドメインにリダイレクトしなくなるまで、複数のHTTPプロキシを通してかつ複数のHTTPヘッダによって、前記ウェブサイトに対するHTTP GET要求を繰り返し行うことによって最適走査パラメータを選択し、
前記ウェブサイトが所定のHTTP状態コードを返さなくなるか、または所定のURLドメインにリダイレクトしなくなる原因となった、前記最適走査パラメータとしてのHTTP走査パラメータを前記メモリに記憶することによって、行われる、請求項6に記載のコンピュータ実施方法。
【請求項10】
前記抽出された特徴は、前記受信した元の電子メッセージの受信者の国コードトップレベルドメイン、および前記受信した元の電子メッセージの主要言語のうちの少なくとも1つを含む、請求項6に記載のコンピュータ実施方法。
【請求項11】
前記抽出された特徴は、前記受信した元の電子メッセージにおけるブランドロゴおよび商標のうちの少なくとも1つを含む、請求項6に記載のコンピュータ実施方法。
【請求項12】
前記受信した元の電子メッセージから抽出される前記特徴を、当該抽出された特徴から計算されるさらなる特徴で補足することをさらに含み、
前記さらなる特徴で補足することは、
前記電子メッセージのテキストのコンテンツを解析すること、
ドメインネームシステム(DNS)にクエリすること、
WHOISにクエリすること、
IPアドレスジオロケーションデータベースにアクセスしかつクエリすること、
前記受信した元の電子メッセージにおいて使用される主要言語を特定するために自然言語処理を適用すること、および、
前記受信した元の電子メッセージにおける画像としてレンダリングされる商標登録グラフィックスまたは他のブランド識別子を認識しかつ抽出するために特徴検出コンピュータビジョンアルゴリズムを適用することのうちの少なくとも1つによって行われる、請求項6に記載のコンピュータ実施方法。
【請求項13】
コンピュータネットワーク上で、元のUniform Resource Locator(URL)を含む前もって受信した元の電子メッセージの修正バージョンを受信することであって、前記前もって受信した電子メッセージの前記修正バージョンは、
URL走査サービスの基本のURL、
前記元のURLの符号化バージョンを含む第1のURLパラメータ、および、符号化された最適走査パラメータを含む第2のURLパラメータを含む修正されたURLを含む、受信することと、
ユーザが、前記受信した修正済み電子メッセージにおける前記修正されたURLをクリックしたことを指示する入力を受信することと、
前記受信した入力に応答して、前記第1のURLパラメータから符号化された前記URLを復号することによって前記元のURLを検索するように、前記第2のURLパラメータから前記符号化された最適走査パラメータを復号することによって前記最適走査パラメータを検索するように、および、フィッシングウェブサイトの存在を判断するために検索した前記最適走査パラメータを使用して、選択されたプロキシを通して、検索した前記元のURLを走査するように前記URL走査サービスに対する要求を送ることと、を含む、コンピュータ実施方法。
【請求項14】
コンピュータネットワーク上で、エンドユーザから生じる要求を受信することであって、前記要求は、符号化されたUniform Resource Locator(URL)を含む第1のURLパラメータ、および符号化された最適走査パラメータを含む第2のURLパラメータを含む、受信することと、
前記要求の受信に応答して、前記第1のURLパラメータからの前記符号化されたURLを復号し、かつ前記第2のURLパラメータからの前記符号化された最適走査パラメータを復号することと、
前記コンピュータネットワーク上でおよび選択されたプロキシを通して、悪性ネットワークリソースの存在を判断するために復号された前記最適走査パラメータを使用して復号された前記URLによって指し示されるネットワークリソースを走査することと、を含む、コンピュータ実施方法。
【発明の詳細な説明】
【背景技術】
【0001】
サイバー犯罪者にとって、電子メール、テキストメッセージ(SMS、MMS)、またはインスタントメッセージ(WhatsApp、WeChat、Line、Telegram…)などの悪意のある電子メッセージを犠牲者に送ることによって彼らを食い物にすることは、日常茶飯事である。例えば、フィッシング、ランサムウェア、またはcryptominerなどを用いる場合があるこのようなサイバー脅威は、電子メッセージに埋め込まれるUniform Resource Locator(URL)を含むことが多い。このような脅威に応答して、セキュリティベンダは、機械学習、テキストマイニング、サンドボックス化、および/またはコンピュータビジョン技法などの広範なアルゴリズムおよび技術を使用して、悪性URLを検出しかつブロックするためのURL走査技術を開発している。このようなURL走査技術は、これらのオンラインサイバー脅威を検出する際に非常にうまく機能している。その結果、サイバー犯罪者のボトムラインは悪影響を受けている。不法な収益源を保護するために、サイバー犯罪者は、これに呼応して、これらのセキュリティベンダのスキャナを特定しかつブロックするための機構を実装している。
【図面の簡単な説明】
【0002】
図1は、疑わしいIP範囲にHTTP404エラーコードを返すフィッシングキットにおいて見つけられたPHPコードの一例である。
【0003】
図2は、禁止ユーザエージェントヘッダにHTTP404エラーコードを返すPHPコードの一例である。
【0004】
図3は、別のフィッシングキットにおいて見つけられた.htaccessファイルの抜粋を示す。
【0005】
図4は、フランスのエンドユーザを対象設定しているフィッシングキットにおいて見つけられた.htaccessファイルの一例である。
【0006】
図5は、INPSフィッシング電子メールの実例を示す。
【0007】
図6は、接続用IPのジオロケーションを判断するためにジオロケーションサービスを呼び出すように構成される例示のPHPフィッシングキットコードを示す。
【0008】
図7は、1つの実施形態による、最適走査パラメータが選択可能である決定木である。
【0009】
図8Aは、1つの実施形態による決定木の一例である。
【0010】
図8Bは、1つの実施形態による決定木の一例である。
【0011】
図8Cは、1つの実施形態による決定木の一例である。
【0012】
図9Aは、1つの実施形態による、コンピュータ実施方法の態様を示す図である。
【0013】
図9Bは、1つの実施形態による、コンピュータ実施方法のさらなる態様を示す図である。
【0014】
図10は、1つの実施形態による、コンピュータ実施方法のなおさらなる態様を示す図である。
【0015】
図11は、1つの実施形態による、コンピュータ実施方法のフローチャートである。
【0016】
図12は、別の実施形態による、コンピュータ実施方法のフローチャートである。
【0017】
図13は、さらに別の実施形態による、コンピュータ実施方法のフローチャートである。
【0018】
図14は、なおさらなる実施形態による、コンピュータ実施方法のフローチャートである。
【0019】
図15は、一実施形態の態様が実践可能であるコンピューティングデバイスのブロック図である。
【発明を実施するための形態】
【0020】
フィッシングキットは、展開しやすいフォーマットの完全なフィッシングウェブサイトを含む電子パッケージである。フィッシングキットは、経時的に発達しており、ますます複雑になっている。最も高度なフィッシングキットは、URL走査技術を妨害する技法または任意の他の疑わしい着信ハイパーテキスト転送プロトコル(HTTP)接続を含む。典型的には、フィッシングキットが疑わしい着信HTTP接続を検出する場合、フィッシングウェブサイトコンテンツを返す代わりに、フィッシングキットは、潜在的に悪性URLから遠ざけるURL走査技術として何が考えられるか(事実上、例えば、「ここには見るものは何もないから立ち去りなさい!」)を誘導するための防御行動を取ることができる。本明細書では、防御行動は以下のうちの1つを含んでよい。
-HTTP 400 Bad Request、HTTP 401 Unauthorized、HTTP 403 Forbidden、またはHTTP 404 Not foundなどの無害のHTTP 4xxのクライアントエラーコードを返す。
-HTTP 500 Internal Server Errorなどの同様に無害のHTTP 5xxのサーバエラーコードを返す。
-着信HTTP接続を対象設定されたブランドの真正なURLにリダイレクトする。例えば、フィッシング対象のPayPalの場合、疑わしい着信HTTP接続は、本物のPayPalのサイトである、https://www.paypal.comにリダイレクトされる場合があり、または
-着信HTTP接続を問題のない無害のサイトにリダイレクトする。例えば、疑わしい着信HTTP接続は、https://www.google.comなどのサーチエンジンURLにリダイレクトされる場合がある。
【0021】
上記のリストは、網羅的ではなく、潜在的なURL走査技術が、不正なフィッシングウェブサイトの存在そのものに対するアクセスまたは学習を行わないようにするためにフィッシングキットによって行われる任意の他の防御行動を含んでもよい。
【0022】
フィッシングキットは、
-接続用IPアドレス、
-接続用IPアドレスの逆引きDNS、
-接続用IPアドレスのジオロケーション、
-ユーザエージェントヘッダ、
-Refererヘッダ、および/または
-Accept-Languageヘッダ
などの特徴を解析することによって着信HTTP接続を評価することができる。
【0023】
このリストも網羅的ではなく、詐欺師が、疑わしい(例えば、URL走査技術を含む)着信HTTP接続の評価と密接な関係があるとみなす場合がある着信HTTP接続に直接または間接的に関連している場合がある任意の他の特徴を含んでもよい。この場合、疑わしい着信HTTP接続は、セキュリティ会社の代わりに生じさせるまたは送られる接続である場合がある。これらのおよび他の技法を使用して、サイバー犯罪者は、それらのフィッシングウェブサイトへのアクセスを、専ら本物のマーク(実際の潜在的な犠牲者)および疑いを持たないマーク(悪意のある電子メッセージの対象受信者など)に限定しようと試み、かつ不正なフィッシングウェブサイトから離れるセキュリティ会社へのアクセスを拒否する、またはセキュリティ会社をリダイレクトすることを試みる。
【0024】
URL走査技術の着信HTTP接続を指示することができる、上で列挙された特徴は、ある防御行動を開始する目的で、セキュリティベンダまたはセキュリティ研究機関を特定するためにフィッシングキットを展開したサイバー犯罪者によって使用可能である。実際は、接続用IPアドレスは、セキュリティ会社のうちの1つに属する場合がある。例えば、このようなIPアドレスは、前述のセキュリティ会社に属する既知のIP範囲のリストに対して着信HTTP接続のIPアドレスを照合することによって特定されてよい。代替的には、このようなIPアドレスの識別は、接続用IPアドレスの逆引きDNSを、セキュリティ会社に属する、またはこれによって使用されることが既知であるドメインまたはサブドメインのリストと比較することによって行われてよい。
【0025】
ユーザエージェントヘッダは、インターネットロボット、スクリプト、および自動化ソフトウェアなどによって行われる接続を指示する場合があり、かつ、着信HTTP接続をセキュリティ会社によって生じたものとして与えることができる別の特徴である。
【0026】
図1は、セキュリティ機関によって使用されると思われるIPアドレス範囲にHTTP404を返すフィッシングキットにおいて見つけられたPHPコードの一例である。そこに示されるように、PHPコードには、セキュリティ機関によって使用されることが既知であるいくつかの禁止IP範囲が挙げられている。着信HTTP接続が(「*」の文字がワイルドカードである場合)禁止IP範囲のうちの1つから生じると判断される場合、フィッシングキットは(この例では)HTTP 404 Not Foundのエラーコードを返すことで、見たところ無害のエラーコードを返し、かつセキュリティ機関によって展開されたスキャナから、受信済み電子メッセージにおけるURLによって指し示される悪性ウェブサイトの存在そのものを隠す。例証の目的で、第1の範囲、81.161.59.*がBitDefenderセキュリティベンダに属することは留意されたい。従って、電子フィッシングメッセージに埋め込まれたURLによって指し示される悪性ウェブサイトをホストするフィッシングキットサーバが81.161.59.*のIPアドレス範囲内のIPアドレスから着信HTTP接続を受信したとしたら、フィッシングキットサーバは、フィッシングウェブサイトを返さず、代わりに、HTTP 404 Not Foundのエラー、またはその他の同等の無害のエラーコード、すなわち、実際にはその他の防御行動を返すことになる。
【0027】
図1のPHPコードを含むフィッシングキットはまた、図2に示されるように、同じHTTP 404 Not Foundのエラーコードを、禁止ユーザエージェントヘッダのうちの1つを含む着信HTTP接続に返すPHPコードを含む。そこに示されるように、着信HTTP接続が挙げられたユーザエージェントヘッダのうちの1つを含む場合、フィッシングキットはHTTP 404 Not Foundのエラーコードを返す。図2において、Googlebotは、Googleによって使用されるサーチボットである。従って、着信HTTP接続がGooglebotを特定するユーザエージェントヘッダを含む場合、コードとしてHTTP 404 Not Foundのエラーコードを返すことになり、それによって、Googleのサーチボットが不正ウェブページに対するアクセスおよびインデックス付けを行わないようにする。これによって、インデックス付けするサーチエンジンがこのような不正ウェブサイトをカタログ化しないようにし、かつ不正ウェブサイトがサーチ時に現れないようにする。
【0028】
図3は、別のフィッシングキットにおいて見つけられた.htaccessファイルの抜粋を示す。.htaccessファイルは、Apache Webサーバソフトウェアを実行するウェブサーバ上での使用のための構成ファイルである。図3では、.htaccessルールは、疑わしいIPアドレスから生じる着信HTTP接続トラフィックをスプーフィングされた(不正)ウェブサイトに対応する本物のウェブサイトにリダイレクトして、さらにまた、このような不正ウェブサイトの検出をより困難にする。実際は、図3に示されるように、着信HTTP接続が、挙げられた疑わしいIPアドレスのうちの1つから生じる場合、接続は、不正のものではなく対応する本物のウェブサイトにリダイレクトされることになり、それによって、正当性を持たせる。例えば、着信HTTP接続がセキュリティ会社のうちの1つと関連付けられた挙げられたIPアドレスのうちの1つから生じる場合、フィッシングキットサーバは、偽装されたPayPalのウェブサイトから離れて、対応する本物のウェブサイトである、https://www.paypal.comへと接続をリダイレクトし、さらにまた、フィッシング電子通信に埋め込まれたURL(複数可)によって指し示される不正ウェブサイトの秘匿性をもたらす。
【0029】
組み合わせると、これらの特徴は、サイバー犯罪者が固有のエンドユーザタイプを対象設定することを可能とするために使用される場合もある。このような対象設定は、悪性フィッシングウェブサイトコンテンツが(いくつかの基準を照合することによって特定可能である)意図した犠牲者にのみ返されるように徹底し、かつエラーコードが生成される、あるいは着信HTTP接続が本物のウェブサイトにリダイレクトされるように徹底することを目的とする。例えば、接続用IPアドレスの逆引きDNSを使用して、固有ISP(Comcast、Cox、British Telecomなどのインターネットサービスプロバイダ)インターネット接続と通信するエンドユーザを対象設定できる。実際に、このようなISPはほとんどの場合、セキュリティ会社などの営利企業ではなく消費者であるエンドユーザと関連付けられる。例えば、特徴の具体的な組み合わせは、着信HTTP接続がISP顧客である意図したフィッシング対象から生じたかのように見える確率を増大させるために使用可能である。このような、ISP顧客からの着信HTTP接続は、フィッシングウェブサイトへのアクセスが与えられる場合があるが、他全ては、リダイレクトするまたはエラーコードを返すことのどちらかによって、アクセスが拒否されることになる。
【0030】
接続用IPのジオロケーションを使用して、特定国から接続するエンドユーザを対象設定してもよい。IPアドレスジオロケーションデータは、国、地域、市、郵便番号、緯度、経度、および時間帯などの情報を含んでよい。データセットがより詳細になると、ドメイン名、接続速度、ISP、言語、プロキシ、会社名、米国指定市場地域(Designated Market Area)/大都市統計圏(DMA/MSA)、北米産業分類体系(NAICS)コード、および家庭/ビジネスなどの他のパラメータを判断できる。例えば、有意に実施形態に関して、日本の銀行のウェブサイトを偽造するフィッシングウェブサイトは、日本の銀行のほとんどの日本の顧客(フィッシャーの意図した犠牲者)が日本においてジオロケートされるIPアドレスから通例接続することになるため、日本外にジオロケートされたIPアドレスから生じるインターネットトラフィックを疑わしいとみなすことができる。
【0031】
ユーザエージェントヘッダは、特定デバイス、オペレーティングシステム、およびインターネットブラウザのユーザを、ユーザエージェント値が通例、この情報を含むため、対象設定するために使用されてもよい。例えば、ユーザエージェントヘッダは、iPhoneユーザのみを対象設定するフィッシングという文脈の中で使用されてよい。Accept-Languageヘッダはまた、特定言語を使用するエンドユーザを対象設定するために使用されてよい。例えば、日本の銀行のウェブサイトを偽造するフィッシングウェブサイトは、日本語を含まないAccept-Languageヘッダを含む着信HTTP接続を疑わしいとみなすことができ、かつ偽造ウェブサイトへアクセスするその着信接続を拒否することができる。
【0032】
図4は、フランスのエンドユーザを対象設定しているフィッシングキットにおいて見つけられた.htaccessファイルの一例である。このフィッシングキットにおいて、フィッシングウェブサイトは、フランスのISP(SFR、Numericable、Nordnet…)IPアドレスから接続するエンドユーザにのみ表示される。他のISPから接続するエンドユーザはアクセスが拒否される。
【0033】
ますます多くのサイバー犯罪者が、上で詳述されるように、URL走査技術を検出しかつ無効にする機構を実装しているため、これらの既存のURL走査技術を改善することで、サイバー脅威を検出しかつブロックすることによってエンドユーザを保護する効果を持続するようにすることが、大いに必要とされてきている。
【0034】
上記のように、サイバー脅威は、悪性URLを、潜在的な犠牲者に送られる、電子メール、テキストメッセージ、またはインスタントメッセージなどの電子メッセージに挿入することによって広がることが多い。1つの実施形態によると、電子メッセージおよびこのコンテンツは、本明細書では、含まれる疑わしいURL(複数可)の解析のための最適走査パラメータと称されるパラメータのセットを判断するために使用されてよい多くの有用な情報をもたらすために分解かつ解析されてよい。このような最適走査パラメータは、1つの実施形態によると、防御行動を生じさせずに、すなわち、フィッシングサイトの意図した犠牲者のうちの一人に見える間に、疑わしいURLを走査するためのURL走査サービスによって使用されてよい。
【0035】
図5に示されるフィッシング電子メールを考慮されたい。これはフィッシング電子メッセージの実例であるため、受信者は除去されている。1つの実施形態によると、電子メールの解析によって、最適走査パラメータを判断するために使用可能であるいくつかの重大な特徴が明らかになる。これらは、図5に示されるように、INPS<no.replys23@postacert.inps.gov.it>を含む、Fromのヘッダを含む。INPSは、イタリアにおける主要な政府機関であり、そのように、フィッシング偽造のINPSはイタリアではかなり一般的である。INPSがイタリアの背景に固有であることは留意されたい。よって、イタリア人ではないエンドユーザがこのフィッシング電子メッセージによって対象設定されるようになる可能性は非常に低い。電子メールアドレスの国コードトップレベルドメイン(ccTLD)が、イタリアを示すccTLDであるitであることも留意されたい。Toのヘッダは、プライバシーを理由に除去されている受信者の表示名および電子メールアドレスを含む。図5に示されるように、Subjectのヘッダにおいて使用される言語は、電子メールの本文で使用される言語と同様にイタリア語である。除去された電子メールアドレスのccTLDはitであり、かつ、ドメイン上のDNSクエリは、MXレコードに関連しているIPアドレスが全て、フランスにおいてジオロケートされていること、およびAレコードに関連しているIPアドレスが全て、イタリアにおいてジオロケートされていることを示すことに、留意されたい。mail exchangerレコード(MXレコード)は、受信者のドメインの代わりに電子メールメッセージを受け入れることを担うメールサーバ、および複数のメールサーバが利用可能である場合にメール配信に優先順位を付けるために使用される嗜好値を指定するドメインネームシステム(DNS)における一種の認定されかつ検証されたリソースレコードである。Aレコードは、最も基本的なタイプのDNSレコードであり、IPアドレスに対するドメインまたはサブドメインを指し示すために使用される。Aレコードに値を割り当てることは、ドメインまたはサブドメインが指し示すべきTTLおよびIPアドレスをDNS管理パネルに提供することを必要とする。
【0036】
先述によると、このフィッシングの試みは具体的にイタリア人のエンドユーザを対象設定した可能性がある。従って、1つの実施形態によると、この電子メールに埋め込まれたURL(複数可)をうまく走査するには、
-イタリアにおいてジオロケートされるIPアドレス(図10、URL走査サービスおよびHTTPプロキシを参照)、および
-少なくともit-ITを含むAccept-Languageヘッダ
を使用して行われる場合がある。
【0037】
言語を形式化して、Mが、少なくとも1つのURLを含む(電子メール、テキスト、インスタントメッセージなどを含むがこれらに限定されない)電子メッセージを示すようにする。それぞれのこのような電子メッセージMは、疑いを持たないエンドユーザを悪性URLに向けさせることができる1つまたは複数のURLを含む場合がある。これらの埋め込まれたURLの1つまたは複数は走査のために選択可能である。すなわち、埋め込まれたURLのうちの唯一つが走査のために選択可能である、複数ではあるが少数のURL全てが走査のために選択可能である、または電子メッセージに埋め込まれたURLの全てが走査のために選択可能である。式U={uM、1、…、uM、n}は、走査するためにメッセージMにおいて選択されたURLのリストを示す。このリストは、単集合であってよい、または複数のメンバを含んでよい。
【0038】
式U=SelectURLs(M)は、メッセージMを解析する関数を示し、MからURLを抽出し、抽出されたURLの中から走査するためのこのURL(複数可)を選択する。1つの実施形態では、選択されたURLは、Mに含有されるURLのサブセットであってよく、それによって、最も疑わしいURL(単数または複数)のみが走査の検討対象になる。その目的に向けて、疑惑スコアは、もっとも疑わしいURL(複数可)の選択を可能にするように計算されてよい。1つの実施形態によると、種々の特徴およびコンピュータ実施方法は、疑惑スコアの計算において使用されてよい。例えば、検討中のURLがクリッカブルであるかどうかは、より高い疑惑スコアと関連付けられてよい重大な特徴である。疑惑スコアは、例えば、可能なものをいくつか挙げると、異常検出アルゴリズム、教師あり学習アルゴリズム、自然言語処理アルゴリズム、および/またはコンピュータビジョンアルゴリズムを使用して、計算されてよい。高評価のドメインと関連付けられたURLは、ドメインが高評価であるURLが悪性である可能性が非常に低いため、無視されてよい、または低い疑惑スコアが割り当てられてよい。以下の(HighReputationDomains)を参照されたい。しかしながら、bit.lyまたはow.lyなどのURL短縮化サービスドメインは、周知でありおそらく高評価であるが、サイバー犯罪者によって頻繁に乱用されている。
【0039】
メッセージMから抽出されたpの特徴のリストは、F={fM、1、…、fM、p}として表されてよい。関数F=ComputeFeatures(M)は、Mの種々のコンポーネントから特徴Fを抽出し、必要に応じて、選択された方法に従って抽出されたデータを処理する。1つの実施形態によると、抽出の検討対象とされてよいMのコンポーネントは、例えば、Mの送信者、Mの受信者、Mのコンテンツ、および/またはMと関連付けられた任意の他のヘッダもしくはメタデータを含んでよい。
【0040】
特徴は、テキストコンテンツを解析すること、DNSにクエリすること、WHOISにクエリすること、IPアドレスジオロケーションデータベースにクエリすること、例えば、Mにおいて使用される主要言語を特定するために、自然言語処理を適用すること、および/または例えば、画像としてレンダリングされるMにおけるブランドロゴを認識しかつ抽出するために、Scale-Invariant Feature Transform(SIFT)または指向FASTなどのコンピュータビジョンアルゴリズム、および回転BRIEF(ORB)特徴検出アルゴリズムを適用することのうちの1つまたは複数によって、抽出されたデータから計算可能である。WHOISは、ドメイン名、IPアドレスブロック、または自律システムなどのインターネットリソースの登録されたユーザまたは割り当て先(assignee)を記憶するデータベースにクエリするために広く使用されるが、より広い範囲の他の情報にも使用されるクエリおよび応答プロトコルである。プロトコルは、人間にとって可読であるフォーマットでデータベースコンテンツを記憶しかつ配信する。
【0041】
図5の例を再び検討すると、計算されるカテゴリ別特徴のセットは以下を含んでよい。
-送信者表示名はINPSを含む
-送信電子メールアドレスはinpsを含む
-送信者電子メールアドレスccTLDはitである
-受信者電子メールアドレスccTLDはitである
-受信者電子メールアドレスドメインMXレコードはフランスにおいてジオロケートされる
-受信者電子メールアドレスドメインAレコードはイタリアにおいてジオロケートされる
-件名の主要言語はイタリア語である
-本文の主要言語はイタリア語である
-INPSが本文で見つかる
-INPSロゴが本文においてコンピュータビジョンによって見つかる
【0042】
カテゴリ値、離散値、および連続値を混合し、かつINPSを多くのイタリアブランドのうちの1つであるとみなす特徴の代替的なセットは以下を含んでよい。
-送信者フィールドはイタリアブランドへの2つの参照を含む
-送信者電子メールアドレスccTLDはitである
-受信者電子メールアドレスccTLDはitである
-件名の主要言語がイタリア語である確率は0.985であると計算される
-件名の主要言語がフランス語である確率は0.015であると計算される
-本文の主要言語がイタリア語である確率は1.000であると計算される
-イタリアブランドロゴが本文においてコンピュータビジョンによって見つかった確率は0.992であると計算される
【0043】
テキストメッセージおよびインスタントメッセージなどの他のタイプのメッセージに対して、これらのメッセージが、特徴の選択を行うようにすることができる異なるデータが利用可能であってよいため、特徴は異なっていてよい。カテゴリ別特徴、離散特徴、および連続特徴のこのセットは典型的には、特徴ベクトルによって表されてよい。
【0044】
最適走査パラメータがここで判断されてよい。1つの実施形態によると、最適走査パラメータSP={spM、1、…、spM、q}は、関数SP=DetermineSP(F)によって返されてよい。このような最適走査パラメータは、1つの実施形態によると、以下のパラメータ、
-走査に使用されるIPアドレス
-走査に使用されるIPアドレスのジオロケーション
-走査に使用されるIPアドレスの逆引きDNSに対する制約(例えば、逆引きDNSは所定の選択済みドメイン名のサブドメインであるものとする)
-走査に使用されるIPアドレスのWHOISに対する制約(例えば、WHOISレコードは所定の選択済みテンプレートに適合するものとする)
-HTTPユーザエージェントヘッダの値
-HTTP Refererヘッダの値、および
-HTTP Accept-Languageヘッダの値
などの1つまたは複数を含んでよい。IPアドレスがもとからジオロケーションを有することができ、関連した逆引きDNSをもとから有することができ、WHOIS情報をもとから有することができるため、いくつかのパラメータがその他に依存することは留意されたい。最適走査パラメータの上記のリストは、当業者には認識可能であるように、このような可能なパラメータの包括的なリストであることを意図するものではない。
【0045】
以下に、最適走査パラメータの一例を挙げる。
-イタリアにおいてジオロケートされるIPアドレス、および
-it-IT、it;q=0.9、en;q=0.8を含むAccept-Languageヘッダ
【0046】
この場合、最適走査パラメータは、IPアドレスがイタリアにおいてジオロケートされることを含む。さらには、HTTPクライアントは、各q値優先度が0.9および0.8であるように、コンテンツがイタリア語、あるいは英語で配信されるものとすることを、サーバにアドバタイズする。
【0047】
ここに、このような最適走査パラメータの別の例を挙げる。
-IPアドレス逆引きDNSはbbox.frのサブドメインである(図10、URL走査サービスおよびHTTPプロキシを参照)、
-Accept-Languageヘッダはfr-FR、fr;q=0.8、en-US;q=0.6、en;q=0.4を含む、および
-ユーザエージェントヘッダは、Mozilla/5.0を含む(Macintosh;Intel Mac OS X 10_13_6)、AppleWebKit/537.36(GeckoのようなKHTML)、Chrome/68.0.3440.106 Safari/537.36
【0048】
最適走査パラメータは、この場合、IPアドレス逆引きDNSがサブドメインbbox.frを含むこと、ユーザエージェントヘッダが、いくつかある詳細の中で特に、Intel Mac OS X 10.13.6のコンピュータ上で実行するChromeブラウザバージョン68.0.3440.106を指示することを含む。
【0049】
このように、関数SP=DetermineSP(F)は、1つの実施形態によると、メッセージMに対する最適走査パラメータを判断する。この関数は、入力としてF={fM、1、…、fM、p}の特徴を活用し、SP={spM、1、…、spM、q}の走査パラメータを返す。1つの実施形態によると、この関数は、例えば、決定木もしくは決定木の組み合わせ、および/またはニューラルネットワークもしくはニューラルネットワークの組み合わせなどのアルゴリズムまたはアルゴリズムの組み合わせであってよいまたはこれを含んでよく、例えば、教師あり学習方法によってトレーニングされてよい。決定木の一例に関しては図7を、決定木の組み合わせの一例に関しては図8A図8B、および図8Cを参照されたい。
【0050】
実施例1:決定木
1つの実施形態では、関数SP=DetermineSP(F)は、1つの実施形態によると、決定木または決定木の組み合わせを使用して最適走査パラメータを選択することができる。決定木は、入ってくるエッジを有さないルートと呼ばれるノードのある有向木である、根付き木を形成する、ノードNのセットおよびエッジEのセットから成る。全ての他のノードは、厳密には1つの入ってくるエッジを有する。出ていくエッジを有するノードは、内部ノードまたはテストノードと呼ばれる。全ての他のノードは、葉、または終端ノードと呼ばれる。決定木は、1つの実施形態によると、入力としてFの特徴またはFの特徴のサブセットを活用するように構成可能であることで、それぞれのテストノードがFの特徴のサブセットとみなされ、それぞれの終端ノードは1つまたは複数のspM、i走査パラメータを出力する。決定木は手動で構成されてよい。代替的には、決定木は、教師あり学習の文脈の中でプログラムで構成されてよい。図7は、
-2つのFの入力特徴は、1)受信者電子メールアドレスの国コードトップレベルドメインccTLD、および2)電子メール本文における主要言語であり、かつ
-単一の出力SP走査パラメータはIPアドレスジオロケーションである、
という、決定木の一例である。示されるように、ccTLDがイタリアであり、かつ電子メール本文における主要言語がイタリア語である場合、SP走査パラメータIPアドレスジオロケーションはイタリアである。電子メール本文における主要言語がイタリア語以外である場合、IPアドレスジオロケーションは、この例示の実装形態では、デフォルトのUSAになる。同様に、ccTLDがフランスであり、かつ電子メール本文における主要言語がフランス語である場合、SP走査パラメータIPアドレスジオロケーションはフランスである。電子メール本文における主要言語がフランス語以外である場合、IPアドレスジオロケーションは、この決定木では、デフォルトのUSAになる。同様に、ccTLDがイタリアまたはフランス以外であり、かつ電子メール本文における主要言語がイタリア語である場合、SP走査パラメータIPアドレスジオロケーションはイタリアである。ccTLDがイタリアまたはフランス以外であり、かつ電子メール本文における主要言語がフランス語である場合、SP走査パラメータIPアドレスジオロケーションはフランスである。ccTLDがイタリアまたはフランス以外であり、かつ電子メール本文における主要言語がイタリア語またはフランス語以外である場合、IPアドレスジオロケーションはこの例ではデフォルトのUSAになる。
【0051】
図8A図8B、および図8Cは、1つの実施形態による、決定木の組み合わせの例である。それぞれの決定木は出力を生じさせ、これらの出力は、収集されかつ組み合わせられて、共同決定を出力してよい。すなわち、1つの実施形態によると、それぞれの決定木出力は、最終出力を生じさせるとみなされてよい。方策の一例は、決定木の大部分によって活用された決定を選択することであってよい。図8Aに示されるように、受信者の電子メールアドレスのccTLDがイタリアである場合、決定木は、IPアドレスがイタリアにおいてジオロケートされるように出力する。同様に、受信者の電子メールアドレスのccTLDがフランスである場合、図8Aの決定木は、IPアドレスがフランスにおいてジオロケートされるように出力する。受信者の電子メールアドレスのccTLDがイタリアでもフランスでもない場合、決定木は(この例では)、IPアドレスがデフォルトとして米国においてジオロケートされることになる。
【0052】
図8Bに示されるように、電子メール本文における主要言語がイタリア語である場合、決定木は、IPアドレスがイタリアにおいてジオロケートされるように出力する。同様に、受信者の電子メールアドレスのccTLDがフランスである場合、図8Bの決定木は、IPアドレスがフランスにおいてジオロケートされるように出力する。電子メール本文における主要言語がイタリア語でもフランス語でもない場合、図8Bの決定木は、この例では、IPアドレスがデフォルトとして米国においてジオロケートされることになる。
【0053】
図8Cは、ブランドロゴ、商標、または他の特定可能な特性の認識に基づいてIPアドレスジオロケーションを選択するように構成される決定木である。電子メールの本文において認識されるブランドロゴがない場合、1つの実施形態では、木は、IPアドレスがデフォルトとして米国においてジオロケートされることになる。そこに示されるように、ブランドロゴが電子メールの本文において認識される場合、そのブランドが既知でありかつジオロケーションと関連付けられているかどうかが判断されてよい。例えば、ブランドロゴが、例えば、INPS、Poste Italiane、Bank of Italy、または別のイタリアブランドとして認識されかつ特定される場合、IPアドレスジオロケーションはイタリアであると判断される。同様に、ブランドロゴが、例えば、BNP Paribas、Societe Generale、または別のフランスブランドとして認識されかつ特定される場合、IPアドレスジオロケーションはフランスであると判断される。全ての他の場合では、決定木は、IPアドレスがデフォルトとして米国においてジオロケートされることになる。
【0054】
図8A図8B、および図8Cが簡略化された決定木の例でもあり、かつ使用時に、このような決定木がはるかに大きくかつ詳細なものになり得ることは、理解されたい。
【0055】
実施例2:フィッシングキットのリバースエンジニアリングによる教師あり学習アルゴリズム
1つの実施形態では、関数SP=DetermineSP(F)は、1つの実施形態によると、フィッシングキットのリバースエンジニアリングによる教師あり学習アルゴリズムを使用して最適走査パラメータを選択することができる。PMがフィッシングメッセージであり、PKがPMに含まれる悪性URLと関連付けられたフィッシングキットである、ペア(PM、PK)を考慮されたい。n個のこのようなペアのセット{(PM、PK)、…、(PM、PK)}がさらにまた収集される。ここで、教師あり学習アルゴリズムを考慮されたい。それぞれのペア(PM、PK)について、教師あり学習アルゴリズムでは、
-入力特徴ベクトルとしてのFPMi=ComputeFeatures(PM)、および
-所望の出力ベクトルとしてのSPPKiであって、PKのフィッシングキットの手動または自動化リバースエンジニアリングによって判断されてよい走査パラメータのセットである、SPPKiが考慮される。教師あり学習アルゴリズムのタスクは、入力空間X={FPM1、…、FPMn}を所望の出力空間Y={SPPK1、…、SPPKn}にマッピングする最適関数g:X→Yをシークすることである。
【0056】
例えば、
-PM図5の例示のINPSフィッシングメッセージにおいて提示されるフィッシングメッセージであり、かつ
-PKがPMに含まれる悪性URLに関連付けられたフィッシングキットである、
ペア(PM、PK)を考慮する。フィッシングキットのソースコードの手動またはプログラムによるリバースエンジニアリングは、
-接続用IPアドレスがイタリアにおいてジオロケートされる時、フィッシングキットが、HTTP 200 OK、およびフィッシングウェブページコンテンツを返すこと、
-その他の場合、フィッシングキットがいずれのコンテンツもない、HTTP 404 Not Foundのエラーコードを返すこと、
を示す。
【0057】
図6は、接続用IPのジオロケーションを判断するためにジオロケーションサービスを呼び出すように構成される例示のPHPフィッシングキットコードを示す。
【0058】
ペア(PM、PK)について、教師あり学習アルゴリズムでは以下を検討する。
-入力特徴ベクトルとしてFPM1=ComputeFeatures(PM)である。特徴の例には、
-受信者電子メールアドレスccTLDはitであること、
-本文における主要言語はイタリア語であること、
-イタリアのブランドロゴが見つかったこと、
-所望された出力ベクトル、すなわち、IPがイタリアにおいてジオロケートされるという、走査パラメータの所望のセットとしてのSPPK1
が含まれてよい。教師あり学習アルゴリズムを精確にトレーニングしかつテストするために、さらに多くの(PM、PK)ペアを収集することが望ましい。
【0059】
実施例3:TestScanURLによる教師あり学習アルゴリズム
1つの実施形態では、関数SP=DetermineSP(F)は、教師あり学習モデルの基礎となるDetermineSPのトレーニングのための最適走査パラメータがTestScanURL(SP、mu)関数を使用して判断される教師あり学習アルゴリズムを使用して、最適走査パラメータを選択してよい。TestScanURL(SP、mu)関数は、1つの実施形態によると、最適走査パラメータを選択するDetermineSP関数のトレーニング中に使用されてよい。TestScanURL(SP、mu)関数は、1つの実施形態によると、下記により詳細に論じられるように、その目的が、DetermineSP関数をトレーニングすることに限定されるため、電子メールが受信される時、いずれのURL走査技術においても、またはいずれのメッセージサービスコンテキストにおいても、使用されない。
【0060】
Mが悪性URL、muを含むメッセージであり、SPが、TestScanURL(SP、mu)が1を返すような走査パラメータである、ペア(M、SP)を考慮する。メッセージのnのトレーニングペアおよび最適走査パラメータのセット{(M、SPM1)、…、(M、SPMn)}が収集される。ここで、それぞれのペア(M、SPMi)について、
-入力ベクトルとしてのFMi=ComputeFeatures(M)、および
-所望の出力ベクトルとしてのSPMi
を考慮する教師あり学習アルゴリズムを考慮する。教師あり学習アルゴリズムのタスクは、入力空間X={FM1、…、FMn}を所望の出力空間Y={SPM1、…、SPMn}にマッピングする最適関数g:X→Yをシークすることである。
【0061】
例えば、以下の場合のペア(M、SPM1)を考慮する。
-M図5において提示されるフィッシングメッセージ、(INPSフィッシングメッセージ)であり、muM1がMに含まれる悪性URLであり、かつ
-SPM1が、TestScanURL(SPM1、muM1)が1を返すような走査パラメータのセットである。SPM1はTestScanURLのおかげで発見可能である。
【0062】
例えば、走査パラメータの全数探索は、SPM1を見つけるためにTestScanURLによって行われてよい。接続用IPのジオロケーションと関連付けられた国である単一の走査パラメータIPCountryの場合を考えてみる。1つの実施形態によると、ステップは以下を含む。
-ステップ1:HTTP 404 Not Foundのエラーコードが返されるため、TestScanURL(IPUSA、muM1)は0を返し、
-ステップ2:HTTP 404 Not Foundのエラーコードが返されるため、TestScanURL(IPFrance、muM1)は0を返し、
-ステップ3:HTTP 200 OK状態コードがフィッシングウェブページコンテンツと共に返されるため、TestScanURL(IPItaly、muM1)は1を返す。よってSPM1=IPItalyである。
【0063】
代替的な方法を使用してよい。例えば、探索空間を絞り込むためにFM1=ComputerFeatures(M)を使用することができる。
【0064】
関数res=TestScanURL(SP、uM、i)は、1つの実施形態によると、SP走査パラメータを有するURL、uM、iによって指し示されるウェブリソースに対するデータを要求するためにSP走査パラメータを有するURL、uM、iに対するHTTP GET要求を行う関数である。この関数は、1つまたはいくつかのリダイレクトがある場合があるため、直面するいずれのリダイレクトにも従うことができることに留意されたい。種々のやり方でリダイレクトを行うことができる(HTTP 301 Moved Permanently、HTML meta refreshリダイレクト、JavaScriptリダイレクトなどのHTTP 3xxリダイレクト)。このTestScanURL(SP、URL、uM、i)関数は,走査されるURLのサーバ側での防御行動が疑わしい時に0のres値を返し、その他の場合は1を返す。防御行動は、1つの実施形態によると、URLに対するHTTP GET要求が以下の結果のうちの1つをもたらす時かつその時に限り、疑わしい。
-HTTP 400 Bad Request、HTTP 401 Unauthorized、HTTP 403 Forbidden、またはHTTP 404 Not foundなどのHTTP 4xxクライアントエラーコード、または
-HTTP 500 Internal Server ErrorなどのHTTP 5xxサーバエラーコード、または
-さらに以下に論じられる、ドメインがHighReputationDomainsに属するURLへのリダイレクト。
【0065】
ドメインがHighReputationDomainsに属するURLへのリダイレクト
上記のように、いくつかのリダイレクトがあってよく、リダイレクトは種々のやり方で行われ得る(HTTP 301 Moved Permanently、HTML meta refreshリダイレクト、JavaScriptリダイレクトなどのHTTP 3xxリダイレクト)。HighReputationDomainsの構成は、高い評価を受け、周知であり、一般的に信頼されているドメイン名のリストを含んでよい。高評価のドメイン名には、例えば、サーチエンジンドメイン、ソーシャルネットワークドメイン、金融サービスドメイン、電子商取引企業ドメイン、およびISPドメインなどが挙げられ得る。それに応じて、HighReputationDomainsの例には、google.com、facebook.com、linkedin.com、wellsfargo.com、chase.com、paypal.com、amazon.com、orange.frが挙げられる。一般的に、フィッシングおよびランサムウェアなどによってサイバー犯罪者によって規則的に対象設定されかつ偽造される機関に属するドメインは、HighReputationDomainsリストに表されることになる。このリストが、例えば、GoogleのPageRankなどの技術を使用して自動的に生成されてよいことは留意されたい。
【0066】
URL書き換え
M'=RewriteURLs(M、USS、U、SP)は、1つの実施形態では、メッセージMにおけるURL、U={uM、1、…、uM、n}を書き換える関数である。URL書き換えは、メッセージMにおける選択されたURL、uM、iを書き換えられたURL、u'M、iに変換する。この書き換えられたURL、u'M、iは、自分のメールボックスから書き換えられたメッセージを検索し、書き換えられたメッセージを開き、そこに含まれる書き換えられたURLをクリックする時にエンドユーザにもたらされることになる危険性は低い。実際は、書き換えられたURLはここで、URL走査サービスを指し示し、メッセージMに元々含まれていた潜在的悪性URLを指し示さない。この関数は以下の入力パラメータ、
-メッセージM、
-URL走査サービスの基本のURLであるUSS、
-U=SelectURLs(M)であるU={uM、1、…、uM、n}を書き換えるためのURL、および
-SP={spM、1、…、spM、q}走査パラメータを用いる。それぞれのURL、uM、iについて、RewriteURLs(M、USS、U、SP)関数は、
-USSはu'M、iに対する基本のURLとしての役割を果たす、
-uM、iは、符号化され、かつURLパスまたはクエリ文字列に記憶される第1のURLパラメータとして渡され、
-SP={spM、1、…、spM、q}は、符号化され、かつURLパスまたはクエリ文字列に記憶される1つまたはいくつかの第2のURLパラメータとして渡される、
など、書き換えられたURL、u'M、iを計算する。さらにまた、RewriteURLs(M、USS、U、SP)関数は、それぞれのURL、uM、iを書き換えられたURL、u'M、iに置き換える。最後に、RewriteURLs(M、USS、U、SP)関数は、書き換えられた{u'M、1、…、u'M、n}URLを含む更新されたメッセージM'を返し、このメッセージM'はさらにまた、さらなる使用のためにエンドユーザのメールボックスに記憶されてよい。
【0067】
URL書き換え例
ここで、1つの実施形態による、実行中のRewriteURLs(M、USS、U、SP)の一例を示す。下記の例示の値を考えてみる。
-URL走査サービスに対する基本のURLとしてのUSS=http://urlscanningservice.com
-uM、i=http://www.unknown.com/index.html
-SP={IP geolocated in USA}
M、iの書き換えは、
u'M、i=http://urlscanningservice.com/url/aHR0cDovL3d3dy51bmtub3duLmNvbS9pbmRleC5odG1s/geoip/dXNhであってよい。この例では、uM、iおよびSPは、符号化され、かつURLパスにおけるパラメータとして記憶されている。
-「aHR0cDovL3d3dy51bmtub3duLmNvbS9pbmRleC5odG1」のパラメータ値は、Base64におけるhttp://www.unknown.com/index.htmlの符号化から生じる。パラメータ値はurlパラメータキーが先行する。パラメータキーおよび値は、前方のスラッシュによって分離される。
-dXNhパラメータ値は、Base64における文字列usaの符号化から生じる。パラメータ値はgeoipパラメータキーが先行する。ここでも、パラメータキーおよび値は、前方のスラッシュによって分離される。
【0068】
Base64は、URL書き換えの文脈の中でパラメータが符号化可能である多くの可能なフォーマットのうちの1つのみであることに留意されたい。URL書き換えは、悪性リンクに対してエンドユーザを保護するためのメッセージセキュリティの文脈の中での一般的技法である。Microsoft Office 365 ATP Safe Links、Mimecast URL Protect、およびProofpoint URL Defenseは、このような実装形態の例である。
【0069】
図9Aは、1つの実施形態による、コンピュータ実施方法のフローチャートである。ここに示されるように、ブロックB902は、受信した電子メッセージMから1つまたは複数のURL、U={uM、1、…、uM、n}を抽出しかつ選択することを求める。メッセージMにURLが存在しない(Uが空である)場合、このコンピュータ実施方法は終了する。1つの実施形態において、選択されたURLはMに含まれるURLのサブセットであってよく、それによって、最も疑わしいURLのみが走査の検討対象になる。上記のように、その目的に向けて、疑惑スコアは、Mに含まれるURLの感知した不審度を判断し、かつこれにランクスコアを割り当てるために計算されかつ使用されてよい。疑惑スコアは、例えば、可能なものをいくつか挙げると、異常検出アルゴリズム、教師あり学習アルゴリズム、自然言語処理アルゴリズム、および/またはコンピュータビジョンアルゴリズムを使用して、計算されてよい。高評価のドメインと関連付けられたURLは、ドメインが高評価であるURLが悪性ものである可能性が非常に低いため、無視されてよい、または低い疑惑スコアが割り当てられてよい。
【0070】
図9Aに示されるように、1つまたは複数のURLが存在し、かつメッセージMにおいて選択されている(Uは空ではない)と想定すると、ブロックB904では、関数F=ComputeFeatures(M)によってF={fM、1、…、fM、p}として表される、メッセージMから抽出されるp個の特徴fのリストを求めることが実行されてよい。特徴Fは、Mの種々のコンポーネントからデータを抽出することによって、かつ1つまたは複数の選択された方法に従って抽出されたデータを処理することによって、計算されてよい。1つの実施形態によると、抽出の検討対象とされてよいMのコンポーネントは、例えば、Mの送信者、Mの受信者、Mのコンテンツ、および/または電子メッセージMと関連付けられた任意の他のヘッダもしくはメタデータを含んでよい。特徴は、テキストのコンテンツを解析すること、DNSにクエリすること、WHOISにクエリすること、コンピュータネットワーク上でアクセスし、かつIPアドレスジオロケーションデータベースにクエリすること、例えば、Mにおいて使用される主要言語を特定するために、自然言語処理を適用すること、および/または画像としてレンダリングされるMにおける商標登録グラフィックスまたは他のブランドロゴを認識しかつ抽出するためにコンピュータビジョンアルゴリズムを適用することのうちの1つまたは複数によって抽出されたデータから計算可能である。他の特徴も、前述の特徴に加えてまたはこれの代わりに抽出されてよい。
【0071】
ブロックB906は、B904のF出力、すなわち、電子メッセージMから抽出された特徴を用い、かつ1つの実施形態によると、関数SP=DetermineSP(F)を使用して最適走査パラメータを計算する。この関数は、入力としてF={fM、1、…、fM、p}の特徴を用い、かつ電子メッセージにおける1つまたは複数の選択されたURLを走査するために使用可能である、SP={spM、1、…、spM、q}の最適走査パラメータを返すことによって、メッセージMに対する最適走査パラメータを判断する。すなわち、疑わしい悪性または偽造されたウェブサイトの走査が前述の最適走査パラメータを使用して行われたとしたら、当該ウェブサーバは、防御行動を取る可能性は低くなり、かつフィッシングウェブサイトまたはウェブページを送り返す可能性が高くなり、それによって、この識別が可能になり、かつセキュリティ会社がそれに対する防御をその顧客にもたらすことを可能にする。1つの実施形態によると、このようなパラメータは、例えば、走査に使用されるIPアドレス、走査に使用されるIPアドレスのジオロケーション、走査に使用されるIPアドレスの逆引きDNSに対する制約、走査に使用されるIPアドレスのWHOISに対する制約、HTTP RefererヘッダのHTTPユーザエージェントヘッダの値、および/またはHTTP Accept-Languageヘッダの値を含んでよい。他のカテゴリ値、離散値、および連続値の特徴は、本明細書に開示されるように送り返されてよい。上記のように、SP=DetermineSP(F)関数は、決定木技法、ニューラルネットワーク技法、およびこれらの組み合わせを活用してよく、例えば、教師あり学習技法によってトレーニングされてよい。TestScanURL(SP、mu)関数は、1つの実施形態によると、教師あり学習モデルの基礎となるDetermineSP(F)関数をトレーニングするために使用される最適走査パラメータを判断するために前もって使用されていてよい。
【0072】
B908に示されるように、メッセージM、1つまたは複数の抽出されかつ選択されたURL、U、DetermineSP(F)関数によって出力される最適走査パラメータ、および書き換えられるURLに対する基本のURL、USSを使用して、RewriteURLs(M、USS、U、SP)関数は、メッセージMにおけるそれぞれの疑わしいURL、uM、iを書き換え、かつこれをメッセージM'において書き換えられたURL、u'M、iと置き換える。ここでの書き換えられたURL、u'M、iを有するメッセージM'は、図9AにおけるブロックB910に示されるように、エンドユーザのメールボックスに記憶されてよい。この時点で、メッセージサービスにおいて実行されたコンピュータ実施方法は終了する。メッセージM'におけるそれぞれの書き換えられたURL、u'M、iは、1つの実施形態によると、指し示すウェブリソースが解決可能となる前にURL走査サービスによって最初に復号されなければならないため、ユーザがクリックしても安全である。
【0073】
図9Bは、1つの実施形態による、書き換えられたURLを復号し、かつ復号されたURLを走査するコンピュータ実施方法のフローチャートである。B920に示されるように、関数uM、i、SP=DecodeRewrittenURL(u'M、i)は、1つの実施形態によると、エンドユーザが自分のメールボックスにおいてメッセージM'における任意の書き換えられたURL、u'M、iをクリックする時に呼び出されるURL走査サービスによって実行されてよい。書き換えられたURL、u'M、iをクリックする、あるいは選択する行為によって、USSがu'M、iの基本のURLであるため、URL走査サービスによる、生成、受信、および処理を行わせる要求が生じる。そのように、関数DecodeRewrittenURL(u'M、i)はu'M、iからuM、iをおよびSPを抽出することで、ここで復号される、書き換えられたURL、uM、i(元のメッセージMに含まれていたのと同じである)が、抽出されかつ復号されたSP走査パラメータによって安全に走査可能とされる。関数ScanURL(SP、uM、i)は、ブロックB922に示されるように、前もって判断された最適走査パラメータSPによる現時点で復号されたURL、uM、iの走査を行う。適したURL走査技術は、2018年11月27日出願の、共同所有される米国特許第9,398,047号および米国特許第10,423,366号に開示されており、これらは両方とも全体が参照により本明細書に組み込まれている。
【0074】
図10は、URLを走査する際のHTTPプロキシの使用を含む、1つの実施形態のさらなる態様を示す図である。ここに示されるように、URL走査サービス1002は、図9BのブロックB920およびB922の機能性を組み込むように構成されてよい。すなわち、エンドユーザが書き換えられたURLをクリックする時、クリックする行為は、B920に示されるように、符号化されたURLパラメータとして渡された書き換えられたURLを復号する、および、図9BにおけるブロックB922に示されるように、符号化されたURLパラメータとしてURL走査サービスに渡された、前もって判断されかつ現時点で復号される最適走査パラメータSPを使用して、復号されたURLを走査するための、URL走査サービスへの要求として動作する。
【0075】
図10に示されるように、1つの実施形態によると、一実施形態の態様を組み込むURL走査サービス1002は、フィッシングキットのHTTPサーバ1010との通信、走査、あるいは対話を行わない。代わりに、このような走査は、選択されたHTTPプロキシによるURL走査技術の指針で生じる。1つの実施形態によると、選択されたHTTPプロキシは、悪性メッセージの意図した受信者の国(1004に示されるような米国、1006に示されるようなイタリア、または1008に示されるようなフランス)などの選択された国においてジオロケートされてよい。選択されたHTTPプロキシ1004、1006、1008、またはその他(図示せず)は、1つの実施形態によると、いくつかある可能な要件の中で特に、IPアドレス、IPアドレスの前述のジオロケーション、IPアドレスの逆引きDNS、IPアドレスに関連しているWHOIS情報などの走査パラメータの要件に配慮する場合がある。HTTPプロキシはまた、選択された国においてジオロケートされてよく、図10における1008に示されるように、ドメインbbox.fr(実例)などの選択されたドメインのサブドメインであるIPアドレスを有してよい。これによって、フィッシングキットのHTTPサーバが疑わしい着信接続を検出する際に防御行動を取る可能性が低減する。有意には、選択されたHTTPプロキシ1004、1006、または1008からのHTTP着信接続は、一実施形態に従って選択された最適なパラメータを使用して、セキュリティ会社からではなく、対象の国に位置する本物のエンドユーザ(すなわち、意図したフィッシングの犠牲者)から生じたかのようにフィッシングキット1010のHTTPサーバに現れることになる。選択されたHTTPプロキシによって、メッセージMの選択された1つまたは複数のURLは、前もって判断された最適走査パラメータを使用して、コンピュータネットワーク1012上で走査される。
【0076】
図11は、1つの実施形態による、コンピュータ実施方法のフローチャートである。ここに示されるように、ブロックB1102は、プロセッサおよびメモリを含むコンピューティングデバイスにおいてコンピュータネットワーク上で電子メッセージMを受信することを求める。受信した電子メッセージはさらにまた、メモリに記憶されてよい。B1103に示されるように、プロセッサを使用して、1つまたは複数のURLは次いで、受信した電子メッセージから抽出されてよい。1つまたは複数の(潜在的に)悪性または疑わしいURLはさらにまた、抽出されたURLの中から選択されてよい。ブロックB1104において、データは受信した電子メッセージから抽出され、特徴は抽出されたデータから計算される。B1105において、(上述されるDetermineSP(F)関数などの)関数は呼び出されてよく、この関数は、図7図8A図8B、および図8Cに対して論じられるように、1つまたは複数の決定木を含んでよい。1つの実施形態によると、決定木は、計算された特徴を受け入れるように構成される根ノード、それぞれが計算された特徴のサブセットを評価するように構成される少なくとも1つの内部ノード、および1つまたは複数の走査パラメータを出力するように構成される少なくとも1つの終端ノードを含んでよい。
【0077】
B1106において、計算された特徴は、決定木(複数可)の根ノードに入力されてよく、計算された特徴の対応するサブセットは内部ノード(複数可)において評価されてよく、決定木(複数可)の終端ノード(複数可)の出力から生じる最適走査パラメータはメモリに記憶されてよい。
【0078】
B1107に示されるように、メッセージM、1つまたは複数の抽出されかつ選択されたURL、U={uM、i、…、uM、n}、DetermineSP(F)関数によって出力される最適走査パラメータ、および書き換えられるURLに対する基本のURL、USSを使用して、メッセージMにおける疑わしいURL、{uM、i、…、uM、n}は(1つの実施形態において、上述されるRewriteURLs(M、USS、U、SPを使用して)書き換えられてよく、修正されたメッセージM'における書き換えられたURL、{u'M、i、…、u'M、n}と置き換えられてよい。この書き換えられたURLは、URL走査サービスの基本のURL、第1のURLパラメータとしての元のURL、uM、iの符号化バージョン、および第2のURLパラメータとしての最適走査パラメータの符号化バージョンを含む。他のパラメータは、前述の第1のURLパラメータおよび第2のURLパラメータに加えてまたはこれらの代わりに含まれてよい。B1108に示されるように、符号化された最適走査パラメータを含む書き換えられたURL、{u'M、i、…、u'M、n}を有するメッセージM'はここで、エンドユーザのメールボックス(自身のMicrosoft 365受信トレイ、GoogleのGmail受信トレイなど)に安全に記憶可能である。この時点で、メッセージサービスにおいて実行されたコンピュータ実施方法は終了する。メッセージM'における書き換えられたURL、{u'M、i、…、u'M、n}は、1つの実施形態によると、これらのURLが(フィッシングウェブサイトなどのいくつかの潜在的な悪性ネットワークリソースとは対照的に)URL走査サービスを指し示し、かつ指し示す元のネットワークリソースが解決可能となる前にURL走査サービスによって復号されなければならないため、ユーザがクリックしても安全である。しかしながら、復号および走査はどれも、メッセージングサービスにおいて生じない、またはユーザの秘密の個人情報を危険にさらさない。
【0079】
図12は、メッセージサービスの視点から、1つの実施形態によるコンピュータ実施方法のフローチャートである。ブロックB1202に示されるように、疑わしいURLを含む元の電子メッセージ(例えば、1つの実施形態における電子メール)が受信される。ブロックB1202は、例えば、エンドユーザでも、電子メッセージの意図した受信者でもなく、メッセージングサービスによって実行可能である。特徴はさらにまた、B1204に示されかつ上述されるように、そこから抽出可能である。その後、B1206に示されるように、関数が呼び出されてよく、この関数は、前もって抽出された特徴から最適走査パラメータを選択するように構成されてよい。当業者には理解されるであろうが、ブロック、ステップ、および上述した機能性の1つまたは複数は、機能的に等価のプロセスによって全体または一部においてサブプロセスに組み合わせ、分解、および/または置き換え可能である。ブロックB1208は、受信した元の電子メッセージMを、受信した元の電子メッセージMにおける疑わしい元のURL、uM、iを、最適走査パラメータを使用して疑わしいURLを走査するためのURL走査サービスに対するコンピュータネットワーク上での要求を、クリックした時に生成するように構成される書き換えられたURLと置き換える、修正されたURL、u'M、iを含む修正された電子メッセージM'と置き換えることを求める。1つの実施形態では、修正されたURL、u'M、iは、URL走査サービスの基本のURL、疑わしいURLの符号化バージョンを含む第1のURLパラメータ、および記憶された最適走査パラメータの符号化バージョンを含む第2のURLパラメータを含んでよい。B1210に示されるように、書き換えられたURL、u'M、iを有する修正された電子メッセージM'はさらにまた、エンドユーザ(通常は、電子メッセージの意図した受信者)のメールボックスに送られてよい。
【0080】
図13は、1つの実施形態による、エンドユーザ(電子メッセージの意図した受信者)の視点からのコンピュータ実施方法のフローチャートである。B1302に示されるように、方法は、コンピュータネットワーク上で、元のUniform Resource Locator(URL)を含む前もって受信した元の電子メッセージの修正バージョンを受信することを含んでよい。前もって受信した電子メッセージの修正バージョンは、1つの実施形態によると、URL走査サービスの基本のURL、元のURLの符号化バージョンを含む第1のURLパラメータ、および符号化された最適走査パラメータを含む第2のURLパラメータを含む修正されたURLを含んでよい。B1304に示されるように、ユーザが受信した修正済み電子メッセージにおける修正されたURLをクリックしたことを指示する入力が受信可能である。実際は、ユーザは、書き換えられたURL、u'M、iを含む書き換えられた電子メッセージM'を受信しかつ開いていてよい。この電子メッセージはここで、もはや、潜在的悪性フィッシングキットHTTPサーバのURLを含むことはないため、URLが符号化された、ひいては無害の形式に書き換えられていることを知っている(または幸いにもこの事実が明らかである)ため、書き換えられた修正済みURLを安全にクリックすることができる。ブロックB1304において、従って、ユーザは、その通りに行い、かつ受信した修正済みメッセージM'における書き換えられかつ修正されたURLをクリックする。
【0081】
書き換えられた修正済みURLをクリックすることによって、符号化されたURL、および前もって判断され、現時点で符号化された最適走査パラメータを含む符号化されたURLパラメータと共に、要求がURL走査サービスに送られる。この要求は、URL走査サービスに、B1308に示されるように第1のURLパラメータから符号化されたURLを復号することによって元のURLを検索することを求める。B1310に示されるように、要求はまた、URL走査サービスに、第2のURLパラメータから符号化された最適走査パラメータを復号することによって渡される最適走査パラメータを検索することを求める。最終的に、B1312において、エンドユーザがメッセージM'において修正されたURLをクリックすることによって開始された要求は、URL走査サービスに、フィッシングウェブサイトまたは他の悪性ネットワークリソースの存在を判断するために検索した最適走査パラメータを使用して、選択されたプロキシを通して、検索した元のURLを走査することを求める。
【0082】
図14は、1つの実施形態によるコンピュータ実施方法のフローチャートである。図14のフローチャートはURL走査サービスの視点からのものである。ここに示されるように、URL走査サービスは、B1402において、例えば、エンドユーザから生じる要求を受信する。要求は、符号化されたURLを含む第1のURLパラメータ、および1つまたは複数の符号化された最適走査パラメータを含む第2のURLパラメータを含む。この要求に応答して、第1のURLパラメータからの符号化されたURLは復号されてよく、同様に、第2のURLパラメータからの符号化された最適走査パラメータは復号されてよい。例えば、第1のURLパラメータおよび第2のURLパラメータは、Base64文字列として符号化されていてよいが、当業者には認識可能であるように、他の符号化が利用されてよい。ここで、URL走査サービスは疑わしいHTTPサーバの復号されたURLを有し、かつ復号された最適走査パラメータを持っているが、B1406に示されるように、最適走査パラメータを使用して悪性ウェブサイトまたは他のネットワークリソースを走査することができる。1つの実施形態では、このような走査は、選択された国においてジオロケートされたプロキシを通して実行されてよく、それによって、走査されたHTTPサーバは防御行動を起こす可能性が低くなる。
【0083】
復号されたURL(複数可)によって指し示されるウェブサイト(複数可)からのデータの走査および要求は、最適走査パラメータを使用して、復号されたURLのそれぞれによって指し示されるウェブサイトに対する対応するHTTP GET要求を行うことを含んでよい。URL走査サービスはさらにまた、走査されたサーバが本物である、またはフィッシングキットのHTTPサーバである可能性があるかどうかを判断してよい。例えば、データは、復号されたURL(複数可)によって指し示されるウェブサイト(複数可)から要求されてよく、この要求されたデータは、防御行動がそこから返されるかどうかを判断するために解析されてよい。
【0084】
図15は、実施形態が実装される、クライアントコンピューティングデバイスなどのコンピューティングデバイス、電子メール(電子メッセージ)サーバのブロック図を示す。図15のコンピューティングデバイスは、情報を通信するためのバス1501または他の通信機構、および情報を処理するためにバス1501と結合される1つまたは複数のプロセッサ1502を含んでよい。コンピューティングデバイスは、プロセッサ(複数可)1502によって実行される情報および命令を記憶するためにバス1501に結合されるランダムアクセスメモリ(RAM)または他の動的記憶デバイス1504(メインメモリと称される)をさらに含むことができる。メインメモリ(有形かつ非一時的であり、これらの用語は、本明細書では、信号それ自体および波形を除外する)1504は、プロセッサ1502によって命令の実行中に一時的な変数または他の中間情報を記憶するために使用されてもよい。図15のコンピューティングデバイスは、プロセッサ(複数可)1502に対する静的情報および命令を記憶するためにバス1501に結合される読み出し専用メモリ(ROM)および/または他の静的記憶デバイス1506を含んでもよい。磁気ディスクおよび/またはソリッドステートデータ記憶デバイスなどのデータ記憶デバイス1507は、図1図14に対して示されかつ開示される機能性の一部または全てを実行することを要求されることになるといった、情報および命令を記憶するためにバス1501に結合されてよい。コンピューティングデバイスは、コンピュータのユーザに情報を表示するためにバス1501を介してディスプレイデバイス1521に結合されてもよい。英数字および他のキーを含む英数字入力デバイス1522は、情報およびコマンド選択をプロセッサ(複数可)1502に通信するためにバス1502に結合されてよい。別のタイプのユーザ入力デバイスは、方向情報およびコマンド選択をプロセッサ(複数可)1502に通信するための、およびディスプレイ1521上のカーソル移動を制御するための、マウス、トラックボール、またはカーソル方向キーなどのカーソル制御1523である。図15のコンピューティングデバイスは、通信インターフェース(例えば、モデム、ネットワークインターフェースカード、またはNIC)1508を介してネットワーク1526に結合されてよい。
【0085】
示されるように、記憶デバイス1507は、磁気ディスク1530、不揮発性半導体メモリ(EEPROM、フラッシュなど)1532、および1531に示唆されるように、磁気ディスクおよび不揮発性半導体メモリの両方を含むハイブリッドデータ記憶デバイスなどのダイレクトアクセスデータ記憶デバイスを含んでよい。参照記号1504、1506、および1507は、1つまたは複数のコンピューティングデバイスによって実行される時、本明細書に説明されかつ示される最適走査パラメータ方法を実行する命令のシーケンスを表すデータが記憶されている、有形の非一時的なコンピュータ可読媒体の例である。これらの命令のいくつかは、クライアントコンピューティングデバイスにローカルに記憶されてよく、これらの命令のその他は、リモートに記憶され(および/または実行され)かつネットワーク1526上でクライアントコンピュータに通信されてよい。他の実施形態では、これらの命令の全ては、クライアントまたは他のスタンドアローンのコンピューティングデバイスにローカルに記憶されてよく、さらに他の実施形態では、これらの命令の全ては(例えば、1つまたは複数のリモートサーバにおいて)リモートに記憶されかつ実行され、その結果はクライアントコンピューティングデバイスに通信される。なお別の実施形態では、命令(処理論理)は、1528などに示される、有形の非一時的なコンピュータ可読媒体の別の形態に記憶されてよい。例えば、参照記号1528は、光(またはその他の記憶技術)ディスクとして実装されてよく、この光ディスクは、適したデータキャリアを構成して、記憶されている命令を1つまたは複数のコンピューティングデバイスにロードすることによって、このコンピューティングデバイス(複数可)を本明細書に説明されかつ示される実施形態の1つまたは複数に再構成することができる。他の実装形態では、参照記号1528は暗号化ソリッドステートドライブとして具現化されてよい。他の実装形態が可能である。
【0086】
本発明の実施形態は、最適走査パラメータの選択によってフィッシングキットをホストするHTTPサーバの新規の走査を実行するためのコンピューティングデバイスの使用に関連している。実施形態によって、URL走査技術を検出しかつ無効にするためにサイバー犯罪者によって実行される機構を無効にすることによってコンピュータシステムの機能に対する具体的な改善をもたらす。このような改善されたコンピュータシステムを使用して、URL走査技術は、サイバー脅威を検出しかつブロックすることによってエンドユーザを保護する効果を持続するようにすることができる。1つの実施形態によると、本明細書に説明される方法、デバイス、およびシステムは、メモリ1504に含まれる、本明細書に示されかつ説明されるコンピュータ実施方法の態様を具現化する、命令のシーケンスを、プロセッサ(複数可)1502が実行することに応答して、1つまたは複数のコンピューティングデバイスによって提供されてよい。このような命令は、1528などに示されるように、データ記憶デバイス1507または別の(光、磁気など)データキャリアなどの別のコンピュータ可読媒体からメモリ1504に読み出されてよい。メモリ1504に含まれる命令のシーケンスの実行によって、プロセッサ(複数可)1502は、本明細書に説明されるステップを行いかつ機能性を有する。代替的な実施形態では、ハードワイヤード回路構成は、説明した実施形態を実装するためにソフトウェア命令の代わりにまたはこれと組み合わせて使用可能である。よって、実施形態は、ハードウェア回路構成およびソフトウェアの任意の具体的な組み合わせに限定されない。実際は、任意の適したコンピュータシステムが本明細書に説明される機能性を実装することができることは、当業者には理解されるべきである。コンピューティングデバイスは、所望の機能を実行するように機能する1つまたは複数のマイクロプロセッサを含んでよい。1つの実施形態では、マイクロプロセッサ(単数または複数)によって実行される命令は、マイクロプロセッサ(複数可)に、本明細書に説明されるステップを行わせるように動作可能である。命令は、任意のコンピュータ可読媒体に記憶されてよい。1つの実施形態では、これら命令は、マイクロプロセッサに外付けの、またはマイクロプロセッサと一体化した不揮発性半導体メモリに記憶されてよい。別の実施形態では、命令は、ディスクに記憶され、かつ、マイクロプロセッサによる実行前に揮発性半導体メモリに読み出されてよい。
【0087】
上記の詳細な説明の一部分には、ローカル処理ユニット、ローカル処理ユニット用のメモリ記憶デバイス、ディスプレイデバイス、および入力デバイスを含むコンピュータコンポーネントを含んでよいコンピューティングデバイスによるプロセスおよび動作の記号表現が説明されている。また、このようなプロセスおよび動作は、例えば、リモートファイルサーバ、コンピュータサーバ、およびメモリ記憶デバイスを含む、不均一に分布したコンピューティング環境におけるコンピュータコンポーネントを利用することができる。これらの分布したコンピューティングコンポーネントは、通信ネットワークによってローカル処理ユニットにアクセス可能としてよい。
【0088】
コンピュータによって行われるプロセスおよび動作は、ローカル処理ユニットおよび/またはリモートサーバによるデータビットの操作、およびローカルまたはリモートメモリ記憶デバイスの1つまたは複数に常駐しているデータ構造内のこれらのビットのメンテナンスを含む。これらのデータ構造は、物理編成をメモリ記憶デバイス内に記憶されたデータビット群に与え、かつ電磁スペクトル素子を表す。
【0089】
本明細書に説明されかつ示される最適走査パラメータ方法のコンピュータ実施選択などのプロセスは、一般に、所望の結果をもたらすコンピュータ実行ステップのシーケンスであると定義されてよい。これらのステップは、一般に、物理量の物理的操作を必要とする。通常、必然ではないが、これらの量は、記憶、転送、組み合わせ、比較、あるいは操作が可能である電気、磁気、または光信号の形態を取ることができる。当業者が、これらの信号を、ビットもしくはバイト(これらが二値論理レベルを有する時)、画素値、仕事、値、エレメント、記号、文字、項、数、点、レコード、オブジェクト、画像、ファイル、ディレクトリ、またはサブディレクトリなどに言及することは、従来的である。しかしながら、これらのおよび同様の用語がコンピュータ動作に適切な物理量と関連付けられるものとし、これらの用語が単に、コンピュータの動作の範囲内かつ間に存在する物理量に適用される従来のラベルであることは留意されるべきである。
【0090】
コンピュータ内の操作が、追加する、比較する、移動する、位置付ける、配置する、照明する、除去する、および改変するなどの用語で称されることが多いことも理解されるべきである。本明細書に説明される動作は、コンピュータと対話する人間のもしくは人工知能エージェントのオペレータまたはユーザによって提供されるさまざまな入力と併せて行われる機械動作である。本明細書に説明される動作を行うために使用される機械は、ローカルもしくはリモートの汎用デジタルコンピュータまたは他の同様のコンピューティングデバイスを含む。
【0091】
さらに、本明細書に説明されるプログラム、プロセス、方法などが、いかなる特定のコンピュータまたは装置にも関連しておらずまたは限定されるものではないし、いかなる特定の通信ネットワークアーキテクチャにも関連しておらずまたは限定されるものではないことは理解されるべきである。もっと正確に言えば、本明細書に説明される教示に従って構成されるプログラムモジュールと共に、さまざまなタイプの汎用ハードウェア機が使用可能である。同様に、読み出し専用メモリなどの不揮発性メモリに記憶されたハードワイヤード論理またはプログラムを有する固有のネットワークアーキテクチャにおける専用のコンピュータシステムによって本明細書に説明される方法ステップを行うための専門の装置を構成することが有利であることが証明され得る。
【0092】
ある特定の例示の実施形態が説明されているが、これらの実施形態は例としてのみ提示されており、本明細書に開示される実施形態の範囲を限定することは意図されていない。よって、先述の説明において、任意の特定の特徴、特性、ステップ、モジュール、またはブロックが必要であるまたは不可欠であると含意することはどこにも意図されていない。実際は、本明細書に説明される新規の方法およびシステムは、さまざまな他の形態で具現化されてよく、さらに、本明細書に説明される方法およびシステムの形態におけるさまざまな省略、代用、および変更は、本明細書に開示される実施形態の趣旨から逸脱することなくなされてよい。
図1
図2
図3
図4
図5
図6
図7
図8A
図8B
図8C
図9A
図9B
図10
図11
図12
図13
図14
図15