JP2018526721A - フィッシングおよびブランド保護のためのシステムおよび方法 - Google Patents

フィッシングおよびブランド保護のためのシステムおよび方法 Download PDF

Info

Publication number
JP2018526721A
JP2018526721A JP2017567467A JP2017567467A JP2018526721A JP 2018526721 A JP2018526721 A JP 2018526721A JP 2017567467 A JP2017567467 A JP 2017567467A JP 2017567467 A JP2017567467 A JP 2017567467A JP 2018526721 A JP2018526721 A JP 2018526721A
Authority
JP
Japan
Prior art keywords
page
profile
baseline
temporary
web page
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017567467A
Other languages
English (en)
Other versions
JP6570663B2 (ja
Inventor
ハント、シモン
ラマナン サンバンダム、ヴェンカタ
ラマナン サンバンダム、ヴェンカタ
Original Assignee
マカフィー, エルエルシー
マカフィー, エルエルシー
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by マカフィー, エルエルシー, マカフィー, エルエルシー filed Critical マカフィー, エルエルシー
Publication of JP2018526721A publication Critical patent/JP2018526721A/ja
Application granted granted Critical
Publication of JP6570663B2 publication Critical patent/JP6570663B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • G06F21/645Protecting data integrity, e.g. using checksums, certificates or signatures using a third party
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2119Authenticating web pages, e.g. with suspicious links

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本開示は、模倣検知を介したフィッシングおよびブランド保護に関連するシステム、方法、およびコンピュータ可読媒体を説明する。いくつかの実施形態において、ウェブページと関連付けられた一時的ページプロファイルが生成されてよい。一時的ページプロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、およびリンクコンポーネントを含んでよい。1または複数のベースラインページプロファイルが、読み出されてよい。一時的ページプロファイル、および1または複数のベースラインページプロファイルが、比較されてよい。一時的ページプロファイルが、1または複数のベースラインページプロファイルと一致しないと判断されてよい。ウェブページに関して不正が検知されたことを示す、ユーザに表示する警告が生成されてよい。

Description

[関連出願の相互参照]
本願は、2015年8月5日に出願された米国特許出願第14/818,875号の利益を主張し、その開示は、全文が記載されているように参照により本明細書に引用される。
本開示は、概して、模倣検知を介する、ウェブサイトのフィッシングおよびブランド保護のためのシステムおよび方法に関する。
マルウェアの保護がより効果的になるにつれて、フィッシングおよび模倣ウェブサイトの使用が増加しており、ソーシャルエンジニアリングを使用して、これらの正当性をユーザに確信させ、ユーザから認証情報を捕捉し、不正取引を生み出している。現行の解決策は、潜在的に有害なウェブサイトを識別するために、ファジードメイン名マッチング、証明書およびセキュリティチェック、ドメイン/IPレピュテーション、ならびにユーザレポートリストに依存する。潜在的に有害なウェブサイトを識別するいくつかのメカニズムが、ウェブページを処理し得、ウェブページ上に表示される内容に基づいてウェブページを分類するコンテンツ分類エンジンを利用し得る。
添付図面を参照して、詳細な説明が記載されている。同一の参照番号の使用は、同様または同一のコンポーネントまたは要素を示すが、異なる参照番号が、同様または同一であり得るコンポーネントまたは要素を示すために同様に使用され得る。本開示の様々な実施形態は、図面で示されたもの以外の要素および/またはコンポーネントを利用してよく、いくつかの要素および/またはコンポーネントは、様々な実施形態において存在しなくてもよい。文脈に応じて、要素またはコンポーネントを説明するために使用される単数の用語は、複数のそのような要素またはコンポーネントを含んでよく、その逆もあり得る。
本開示の1または複数の実施形態に係る、フィッシングおよびブランド保護のためのシステムの例示的なシステムアーキテクチャの様々なコンポーネント間の例示的なデータフローを示す。
本開示の1または複数の実施形態に係る、図1に示されている例示的なシステムアーキテクチャの様々なハードウェアおよびソフトウェアコンポーネントを含むブロック図である。
本開示の1または複数の実施形態に係る、フィッシングおよびブランド保護のための、ウェブサイトのベースラインページプロファイルを生成する例示的な方法の処理フロー図である。
本開示の1または複数の実施形態に係る、フィッシングおよびブランド保護のためのシステムにおいて潜在的に有害なウェブサイトを識別する例示的な方法の処理フロー図である。
本開示は、とりわけ、ウェブサイトのフィッシングのような不正検知のシステムのためのシステム、方法、コンピュータ可読媒体、技術、および方法論に関する。例えば、銀行は、ユーザがオンラインバンキングのために頻繁に利用し得る正当なウェブサイトと関連付けられてよい。ウェブサイトは、ユーザが、彼らのアカウントにアクセスするために、認証クレデンシャル(例えば、ユーザ名およびパスワード)を提供することを必要としてよい。不正なウェブサイトは、銀行のウェブサイトをコピーして、ウェブサイトのルックアンドフィールを真似し得る。いくつかの実施形態において、認証クレデンシャルを受信するために指定されるサーバが異なり得ることを除いて、不正なウェブサイトは、正当なウェブサイトと全く同じであってよいことにより、認証クレデンシャルが捕捉され、許可されていないサーバに送信され得る。場合によっては、そのような不正なウェブサイトは、短期間(例えば、数時間、数日間)だけアクティブであり、従来技術を用いて検知することが困難である。本明細書に記載されているシステムおよび方法は、そのような不正なウェブサイトを検知し、ユーザが許可クレデンシャルのような機密情報を提供する前に、ユーザに警告することに関する。
いくつかの実施形態において、正当なウェブサイトは、固有のデジタルフィンガープリントをウェブサイトに関して生成するページプロファイラサーバによって、プロファイリングされてよい。固有のデジタルフィンガープリントは、ベースラインページプロファイルとして公知であってよい。ベースラインページプロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、および/またはリンクコンポーネントのような種々のコンポーネントを含んでよい。各コンポーネントは、処理されたウェブサイトから導出されてよい。例えば、画像コンポーネントは、ウェブサイトからロゴのような各画像を識別およびコピーし、画像にハッシュを適用し、ベースラインページプロファイルの画像コンポーネントとしてハッシュを格納することによって導出されてよい。ベースラインページプロファイルは、データストアに格納されてよく、または、不正検知処理で使用される1または複数のユーザデバイスに送信されてもよい。
いくつかの実施形態において、ユーザは、彼らのユーザデバイス上にページチェッカーコンポーネントを有してよい。ページチェッカーコンポーネントは、潜在的に不正なウェブサイトを検知するために使用され得る。ユーザは、ユーザデバイス上のブラウザとインターアクトし、ウェブページを要求する。ページチェッカーコンポーネントは、リストを読み出し、要求されたウェブページがリスト上にあるかを判断することによって、要求されたウェブページが不正を検知するべく、既に識別および処理されているかを判断してよい。ウェブページがリスト上にある場合、次に、ページチェッカーコンポーネントは、要求されたウェブページを読み出し、ウェブページをユーザに表示することをブラウザに許可してよい。しかしながら、要求されたウェブページがリスト上にない場合、ページチェッカーコンポーネントは、ウェブページをユーザに表示する前に不正を検知するためにウェブページを処理してよい。
ページチェッカーコンポーネントは、要求されたウェブページを読み出し、一時的ページプロファイルを生成してよい。一時的ページプロファイルは、ベースラインページプロファイルと同様の方式で生成され得、一時的ページプロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、および/またはリンクコンポーネントを含む。各コンポーネントは、要求されたウェブサイトを処理することによって導出されてよい。ページチェッカーコンポーネントは、次に、1または複数のベースラインページプロファイルを読み出してよく、要求されたウェブページの一時的ページプロファイルを1または複数のベースラインページプロファイルと比較してよい。いくつかの実施形態において、プロファイルは、ファジーマッチアルゴリズムを用いて比較されてよい。
ページチェッカーコンポーネントが、一時的ページプロファイルがベースラインページプロファイルと一致すると判断した場合、ページチェッカーコンポーネントは、要求されたウェブページに不正が検知されなかったと示してよく、ページチェッカーコンポーネントは、要求されたウェブページをユーザに表示することをブラウザに許可してよい。
ページチェッカーコンポーネントが、一時的ページプロファイルがベースラインページプロファイルと一致しないと判断する場合、ページチェッカーコンポーネントは、ウェブページが不正なものである可能性が高いと示してよい。ページチェッカーコンポーネントは、ユーザへの警告を生成し、表示してよい。警告は、いくつかの選択肢を含んでよい。選択肢は、ウェブページに進むこと、ウェブページをホワイトリストに追加すること、または、ウェブページをブラックリストに追加することを含んでよい。ホワイトリストは、ページチェッカーコンポーネントが不正の可能性が高いと判断したもので、不正検知にかかわらず、見ること、およびアクセスすることをユーザが要求しているウェブページのリストである。ブラックリストは、ページチェッカーコンポーネントが不正の可能性が高いと判断したもので、ユーザデバイスに表示されることからブロックされることをユーザが要求しているウェブページのリストである。
ページチェッカーコンポーネントは、次に、一時的ページプロファイルと関連付けられたドメインまたはURLを、不正検知のために識別および処理されているウェブサイトのリストに追加してよい。
いくつかの実施形態において、ページプロファイラサーバは、プロファイルのために1または複数のウェブページを受信してよい。ウェブページは、ユーザが遭遇するウェブページの処理に際して、ウェブサイトクローラ、または他のそのようなメカニズムを通じて、人気度によって受信または識別されてよい。ページプロファイラは、ページが既に識別およびプロファイリングされているかを判断してよい。ページが既にプロファイリングされていない場合、ページプロファイラサーバは、ウェブページを処理して、種々のコンポーネントを備えるベースラインページプロファイルを生成してよい。ベースラインページプロファイルを生成するべく、ページプロファイラは、画像(例えば、ロゴ)を識別し、ウェブページから画像を取得し、画像をハッシュしてよい。ページプロファイラサーバは、次に、ウェブページの形状を導出してよい。例えば、ページプロファイラサーバは、ウェブページを処理して、ウェブページのレイアウトを判断してよい。ページプロファイラサーバは、次に、ウェブページで使用される色およびフォント情報を取得してよい。ページプロファイラサーバは、ウェブページからリンク情報を取得してよい。いくつかの実施形態において、ページプロファイラサーバは、ウェブページの固有のプロファイルを生成するために使用され得る追加のメトリクスを取得してよい。ページプロファイラサーバは、取得した情報を使用して、ベースラインページプロファイルを生成し、格納してよい。ページプロファイラサーバは、ベースラインページプロファイルを格納のために1または複数のデータストアに送信してよい。
ページチェッカーコンポーネントは、例えば、モバイルデバイスのウェブブラウザと共に、モバイルデバイス上に格納されてよい。ユーザは、ブラウザを利用して、ウェブページにナビゲートされてよい。ページチェッカーコンポーネントは、ウェブページが、例えば、不正なまたは悪意のある、有害なものかを判断するために使用されてよい。例えば、ページチェッカーコンポーネントは、ウェブページが、既に識別および処理されているかを判断してよい。ページが、以前に、不正検知のために識別および処理されている場合、次に、ページチェッカーコンポーネントは、メッセージをユーザに表示してよい。ページが、以前に、識別または処理されていなかった場合、ページチェッカーコンポーネントは、ウェブページの一時的ページプロファイルを生成してよい。ページチェッカーコンポーネントは、次に、例えばデータストアから、以前に生成されたベースラインページプロファイルを読み出してよく、一時的ページプロファイルを以前に生成されたベースラインページプロファイルと比較して、一致があるかを判断してよい。一致がなかった場合、次に、ページチェッカーコンポーネントは、ブラウザが変更なく、ウェブページを継続して表示することを可能にし得る。ページチェッカーコンポーネントが、一致があると判断した場合、適切なメッセージがユーザに表示され得、結果がデータストアに格納されてよい。
様々な例示的な実施形態が上述されてきた。本開示のこれらおよび他の例示的な実施形態が、添付図面を参照して、以下により詳細に記載される。図面および対応する説明は、単に例示のために提供されており、決して、本開示を限定することを意図していない。多数の他の実施形態、変形例などが、本開示の範囲内であることが理解されるべきである。
[例示的な使用例およびシステムアーキテクチャ]
図1は、本開示の1または複数の実施形態に係る、フィッシングおよびブランド保護のためのシステムの例示的なシステムアーキテクチャの様々なコンポーネント間の例示的なデータフローを示す。
ユーザデバイス104は、タブレットコンピューティングデバイス、電子書籍(eブック)リーダ、ネットブックコンピュータ、ノートブックコンピュータ、ラップトップコンピュータ、Ultrabook(商標)コンピュータ、パーソナルデジタルアシスタント(PDA)、スマートフォン、ウェブ対応テレビ、ビデオゲームコンソール、セットトップボックス(STB)、デジタルビデオレコーダ(DVR)システム、これらの組合せ、または同様のものを含むが、これらに限定されない、WiFiおよび非WiFiアクセスが可能な任意の好適なプロセッサ駆動型コンピューティングデバイスを含んでよい。説明を簡単にするために、ユーザデバイス104は、単数で本明細書に記載され得るが、複数のユーザデバイス104が、提供されてもよいことが理解されるべきである。
ページプロファイラサーバ106は、デスクトップコンピューティングデバイス、ラップトップコンピューティングデバイス、サーバ、スマートフォン、タブレットなどを含むが、これらに限定されない、任意の好適なプロセッサ駆動型コンピューティングデバイスを含んでよい。説明を簡単にするために、ページプロファイラサーバ106は、単数で本明細書に記載され得るが、複数のページプロファイラサーバ106が提供されてもよいことが理解されるべきである。
データストア108は、ネットワークを介して1または複数のデバイスから受信され、ネットワークを介して1または複数のデバイスによってアクセスされ得る情報を格納することが可能な任意の好適なデータストアを含んでよい。説明を簡単にするために、データストア108は、単数で本明細書に記載され得るが、複数のデータストア108が提供されてもよいことが理解されるべきである。
いくつかの実施形態において、ユーザは、ユーザデバイス104とインターアクトしてよい。ユーザは、ブラウザを開始し、ウェブページを要求してよい。ページチェッキングエンジンのようなページチェッカーコンポーネントが、ユーザデバイス104上に存在してよく、トリガイベントが生じるときに開始されてよい。いくつかの実施形態において、トリガイベントは、ウェブページが、以前に、不正検知のために識別および処理されていないことを判断してよい。トリガイベントは、ウェブサイトまたはURLを、以前に識別および処理されている既知のウェブページのリストと比較することを含んでよい。既知のウェブページのリストは、ページチェッカーコンポーネントによってローカルに維持されてよく、またはリモートサーバ上に格納され、必要なときに読み出されてよい。ページチェッカーコンポーネントは、要求されたページを処理し、一時的ページプロファイルを生成してよい。ページチェッカーコンポーネントは、次に、1または複数の以前に生成されたベースラインページプロファイルをデータストア108から読み出し、その後、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較してよい。以前に生成されたベースラインページプロファイルは、ページプロファイラサーバ106によって生成されていてもよく、格納のためにデータストア108に送信されてもよい。ページチェッカーコンポーネントは、比較に基づいて、ウェブページが、不正なものである、有害なものである、または悪意のあるものであるかを判断してよく、警告110をユーザに生成し、表示してよい。
図2は、本開示の1または複数の実施形態に係る、図1に示されている例示的なシステムアーキテクチャの様々なハードウェアおよびソフトウェアコンポーネントを含むブロック図である。例示的なアーキテクチャ200は、複数のユーザデバイス104、1または複数のページプロファイラサーバ106、および/または1または複数のデータストア108を含んでよい。ユーザデバイス104、ページプロファイラサーバ106、および/またはデータストア108は、図1の参照を通じて説明される任意の種類のデバイスを含んでよい。
ユーザデバイス104、1または複数のページプロファイラサーバ106、および/または1または複数のデータストア108の何れかは、1または複数のネットワーク230を介して、互いに通信し、アーキテクチャ200の任意の他のコンポーネントと通信するように構成されてよい。ネットワーク230は、例えば、ケーブルネットワーク、パブリックネットワーク(例えば、インターネット)、プライベートネットワーク、無線ネットワーク、セルラネットワーク、または任意の他の好適なプライベートおよび/もしくはパブリックネットワークのような、好適な通信ネットワークの何れか1つ、または異なる種類の好適な通信ネットワークの組合せを含むが、これらに限定されない。さらに、ネットワーク230は、関連付けられる任意の好適な通信距離を有してよく、例えば、グローバルネットワーク(例えば、インターネット)、メトロポリタンエリアネットワーク(MAN)、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、無線パーソナルエリアネットワーク(WPAN)、またはパーソナルエリアネットワーク(PAN)を含んでよい。加えて、ネットワーク230は、同軸ケーブル、ツイストペアワイヤ、光ファイバ、混成光ファイバ・同軸ケーブル(HFC)媒体、地上マイクロ波トランシーバ、無線周波数通信媒体、衛星通信媒体、またはこれらの任意の組合せを含むが、これらに限定されない、ネットワークトラフィックが搬送され得る任意の種類の媒体を含んでよい。
ユーザデバイス104は、1または複数のプロセッサ232、および1または複数のメモリ236(本明細書で総称的にメモリ236と呼ばれる)を含んでよい。プロセッサ232は、デジタルデータを入力として受け取り、入力データを格納されたコンピュータ実行可能命令に基づいて処理し、出力データを生成することが可能な任意の好適な処理ユニットを含んでよい。コンピュータ実行可能命令は、例えば、データストレージ234に格納され得、とりわけ、オペレーティングシステムソフトウェア、およびアプリケーションソフトウェアを含んでよい。コンピュータ実行可能命令は、データストレージ234から読み出されてよく、実行のために、必要に応じてメモリ236へと読み込まれてもよい。プロセッサ232は、コンピュータ実行可能命令を実行して、様々な動作を行わせるように構成されてよい。プロセッサ232は、中央演算処理装置、マイクロプロセッサ、マイクロコントローラ、縮小命令セットコンピュータ(RISC)マイクロプロセッサ、複合命令セットコンピュータ(CISC)マイクロプロセッサ、特定用途向け集積回路(ASIC)、システムオンチップ(SoC)、フィールドプログラマブルゲートアレイ(FPGA)などを含むが、これらに限定されない、任意の種類の処理ユニットを含んでよい。
データストレージ234は、プロセッサ232によって読み込み可能で実行可能なプログラム命令、ならびに、プログラム命令の実行中に、プロセッサ232によって操作され、生成されるデータを格納してよい。プログラム命令は、実行のために、必要に応じてメモリ236へと読み込まれてもよい。ユーザデバイス104の構成および実装に応じて、メモリ236は、ランダムアクセスメモリ(RAM)のような揮発性メモリ(電源が供給されないとき、格納された情報を保持するように構成されないメモリ)、および/または、リードオンリメモリ(ROM)、フラッシュメモリなどのような不揮発性メモリ(電源が供給されないときであっても、格納された情報を保持するように構成されるメモリ)であり得る。様々な実装において、メモリ236は、様々な形式のスタティックランダムアクセスメモリ(SRAM)、様々な形式のダイナミックランダムアクセスメモリ(DRAM)、改変不能ROM、および/または、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、フラッシュメモリなどのようなROMの書き込み可能な変形例のような複数の異なる種類のメモリを含んでよい。
ユーザデバイス104は、磁気ストレージ、光ディスクストレージおよび/またはテープストレージを含むが、これらに限定されない、リムーバブルストレージおよび/または非リムーバブルストレージのような追加のデータストレージ234をさらに含んでよい。データストレージ234は、コンピュータ実行可能命令および他のデータの不揮発性ストレージを提供してよい。メモリ236、および/または、リムーバブルおよび/または非リムーバブルのデータストレージ234は、コンピュータ可読ストレージ媒体(CRSM)の例である。
ユーザデバイス104は、ユーザデバイス104と、例示的なシステムアーキテクチャ200の他のデバイスまたはアプリケーションソフトウェアとの間のネットワーク230を介する通信を容易にするネットワークインタフェース240をさらに含んでよい。ユーザデバイス104は、ユーザと、キーボード、マウス、ペン、ポインティングデバイス、音声入力デバイス、タッチ入力デバイス、ディスプレイ、スピーカ、カメラ、マイク、プリンタなどのような様々なI/Oデバイスとの間のインターアクションをサポートし得る、1または複数の入力/出力(I/O)インタフェース238(および、任意で、デバイスドライバのような関連するソフトウェアコンポーネント)を付加的に含んでよい。
データストレージ234を再度参照して、プロセッサ232によって実行されるとき、様々な動作を行わせるコンピュータ実行可能命令を含み得る様々なプログラムモジュール、アプリケーション、または同様のものが、データストレージ234に格納されてよい。メモリ236は、ユーザデバイス104上で実行される他のアプリケーションソフトウェア(例えば、専用アプリケーション、ブラウザアプリケーション、ウェブベースアプリケーション、分散型クライアントサーバアプリケーションなど)と、ユーザデバイス104のハードウェアリソースとの間のインタフェースを提供し得る1または複数のオペレーティングシステム(O/S)242をデータストレージ234から読み込んでいてもよい。より具体的には、O/S242は、ユーザデバイス104のハードウェアリソースを管理し、他のアプリケーションプログラムに共通のサービスを提供する(例えば、様々なアプリケーションプログラムの間でメモリ割当てを管理する)ためのコンピュータ実行可能命令のセットを含んでよい。O/S242は、任意のモバイルオペレーティングシステム、デスクトップもしくはラップトップのオペレーティングシステム、メインフレームオペレーティングシステム、または任意の他の独占もしくはオープンソースのオペレーティングシステムを含むが、これらに限定されない、現在公知であるまたは将来的に開発され得る任意のオペレーティングシステムを含んでよい。
データストレージ234は、1または複数のデータストア108に格納されるデータをアクセスする、読み出す、格納する、および/または操作するための1または複数のデータベース管理システム(DBMS)244をさらに含んでよい。DBMS244は、様々なデータベースモデル(例えば、リレーショナルモデル、オブジェクトモデルなど)のうちの何れかを使用してよく、様々な問合せ言語のうちの何れかをサポートし得る。データストレージ234は、様々な関連する機能をサポートするコンピュータ実行可能命令を含み得る様々な他のプログラムモジュールを付加的に含んでよい。例えば、データストレージ234は、1または複数のブラウザ246、および/または1または複数のページチェッキングエンジン248を含んでよい。
ブラウザ246は、プロセッサ232によって実行されることに応答して、1または複数のウェブサーバと通信して、ウェブページを取得し、それをユーザデバイス104上でユーザに表示することを含む動作を行わせるコンピュータ実行可能命令を含んでよい。
ページチェッキングエンジン248は、プロセッサ232によって実行されることに応答して、ウェブページが不正なものである、有害なものである、または悪意のあるものであると判断された場合、ユーザへの警告を表示し、一時的ページプロファイルをページプロファイルとして、不正のある、有害なまたは悪意のあるウェブページを識別する際の将来的な検討のために格納することを任意で容易にする一時的ページプロファイルを生成するべく、ウェブページを処理することによって、ブラウザ246によって要求されるウェブページが不正なものである、有害なものである、または悪意のあるものであるかを判断することを含む動作を行わせる、コンピュータ実行可能命令を含んでよい。いくつかの実施形態において、ページチェッキングエンジン248は、トリガイベントが生じたと識別または判断してよい。トリガイベントは、識別されたウェブページの一時的ページプロファイルの生成を開始するイベントであってよい。トリガイベントの一例は、ウェブページが不正なものである、有害なものである、または悪意のあるものであるかを判断するために、以前に処理されていないウェブページをユーザが要求すること含んでよい。
ページチェッキングエンジン248は、要求されたウェブページを読み出し得、ウェブページが、以前に識別および処理されていない場合、次に、ページチェッキングエンジン248は、ウェブページの一時的ページプロファイルを生成してよい。いくつかの実施形態において、一時的ページプロファイルは、ウェブページと関連付けられた固有の識別子として機能し得る。一時的ページプロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、およびリンクコンポーネントのような種々のコンポーネントを含んでよい。ページチェッキングエンジン248は、ページプロファイラモジュール266によって生成される1または複数のベースラインページプロファイル272を読み出して、ユーザによって要求されるウェブページが、ページプロファイラサーバ106によって生成される既知のベースラインページプロファイル272と同一かどうかを判断してよい。ウェブページが、既知のベースラインページプロファイル272と同一である場合、要求されたページは不正なものである、有害なものである、または悪意のあるものである可能性が低い。
一時的ページプロファイルの画像コンポーネントを生成するべく、ページチェッキングエンジン248は、ウェブページから1または複数の画像を識別および取得してよい。ページチェッキングエンジン248は、画像をハッシュし、画像のハッシュを一時的ページプロファイルの画像コンポーネントとして格納してよい。
一時的ページプロファイルの形状コンポーネントを生成するべく、ページチェッキングエンジン248は、ウェブページの形状を導出してよい。いくつかの実施形態において、ページチェッキングエンジン248は、ページソースから余分な項目を除去し、最小限のレイアウト情報を保持することによって、ウェブページの形状を導出してよい。例えば、ウェブページの基本レイアウトを判断するために、ページチェッキングエンジン248は、広告およびコンテンツを除去してよく、画像および入力ボックスの位置を注記してよい。ウェブページの形状の一例は、「画像1−左上、画像2−中央下、中央に位置合わせされ鉛直に離間された2つの入力ボックス」であってよい。
一時的ページプロファイルのスタイルコンポーネントを生成するべく、ページチェッキングエンジン248は、ウェブページから色およびフォント情報を取得してよい。例えば、ページチェッキングエンジン248は、ウェブページと関連付けられた階層式スタイルシート(CSS)を用いて、背景色、パレット、フォント、および他の情報のような情報を捕捉してよい。
一時的ページプロファイルのリンクコンポーネントを生成するべく、ページチェッキングエンジン248は、ウェブページからリンク情報を取得してよい。いくつかの実施形態において、ページチェッキングエンジン248は、ウェブページのページソースの1または複数のリンクを識別してよく、ウェブページ上のオフドメインリンクのリストを生成してよい。
いくつかの実施形態において、ページチェッキングエンジンは、ウェブページのコンテンツを解析してよい。例えば、ページチェッキングエンジン248は、ウェブサイトが捕捉するデータの種類を捕捉してよい。例えば、ウェブページは、ユーザの社会保障番号、クレジットカード番号、アドレスおよび他の個人識別情報についての要求および関連する入力フィールドを含んでよい。ページチェッキングエンジン248は、また、ウェブページ上に表示されるコンテンツを用いて、ウェブページを分類してよい。
いくつかの実施形態において、ページチェッキングエンジン248は、プラグインアプリケーションのように、ブラウザ246と一体化されてよい。いくつかの実施形態において、ページチェッキングエンジン248は、ユーザデバイス104上のデータストア234に別個のアプリケーションとして格納され、トリガされたときに開始されてよい。
ページプロファイラサーバ106は、1または複数のプロセッサ252、および1または複数のメモリ256(本明細書で総称的にメモリ256と呼ばれる)を含んでよい。プロセッサ252は、デジタルデータを入力として受け取り、入力データを格納されたコンピュータ実行可能命令に基づいて処理し、出力データを生成することが可能な任意の好適な処理ユニットを含んでよい。コンピュータ実行可能命令は、例えば、データストレージ254に格納され得、とりわけ、オペレーティングシステムソフトウェア、およびアプリケーションソフトウェアを含んでよい。コンピュータ実行可能命令は、データストレージ254から読み出されてよく、実行のために、必要に応じてメモリ256へと読み込まれてもよい。プロセッサ252は、コンピュータ実行可能命令を実行して、様々な動作を行わせるように構成されてよい。プロセッサ252は、中央演算処理装置、マイクロプロセッサ、マイクロコントローラ、縮小命令セットコンピュータ(RISC)マイクロプロセッサ、複合命令セットコンピュータ(CISC)マイクロプロセッサ、特定用途向け集積回路(ASIC)、システムオンチップ(SoC)、フィールドプログラマブルゲートアレイ(FPGA)などを含むが、これらに限定されない、任意の種類の処理ユニットを含んでよい。
データストレージ254は、プロセッサ252によって読み込み可能で実行可能なプログラム命令、ならびに、プログラム命令の実行中に、プロセッサ252によって操作され、生成されるデータを格納してよい。プログラム命令は、実行のために、必要に応じてメモリ256へと読み込まれてもよい。ブローカサーバ106の構成および実装に応じて、メモリ256は、ランダムアクセスメモリ(RAM)のような揮発性メモリ(電源が供給されないとき、格納された情報を保持するように構成されないメモリ)、および/または、リードオンリメモリ(ROM)、フラッシュメモリなどのような不揮発性メモリ(電源が供給されないときであっても、格納された情報を保持するように構成されるメモリ)であり得る。様々な実装において、メモリ256は、様々な形式のスタティックランダムアクセスメモリ(SRAM)、様々な形式のダイナミックランダムアクセスメモリ(DRAM)、改変不能ROM、および/または、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、フラッシュメモリなどのような、ROMの書き込み可能な変形例のような複数の異なる種類のメモリを含んでよい。
ページプロファイラサーバ106は、磁気ストレージ、光ディスクストレージおよび/またはテープストレージを含むが、これらに限定されない、リムーバブルストレージおよび/または非リムーバブルストレージのような追加のデータストレージ254をさらに含んでよい。データストレージ254は、コンピュータ実行可能命令および他のデータの不揮発性ストレージを提供してよい。メモリ256、および/または、リムーバブルおよび/または非リムーバブルのデータストレージ254は、コンピュータ可読ストレージ媒体(CRSM)の例である。
ページプロファイラサーバ106は、ページプロファイラサーバ106と、例示的なシステムアーキテクチャ200の他のデバイス(例えば、ユーザデバイス104など)またはアプリケーションソフトウェアとの間のネットワーク230を介する通信を容易にするネットワークインタフェース260をさらに含んでよい。ページプロファイラサーバ106は、ユーザと、キーボード、マウス、ペン、ポインティングデバイス、音声入力デバイス、タッチ入力デバイス、ディスプレイ、スピーカ、カメラ、マイク、プリンタなどのような様々なI/Oデバイスとの間のインターアクションをサポートしてよい、1または複数の入力/出力(I/O)インタフェース258(および任意で、デバイスドライバのような関連するソフトウェアコンポーネント)を付加的に含んでよい。
データストレージ254を再度参照して、プロセッサ252によって実行されるとき、様々な動作を行わせるコンピュータ実行可能命令を含み得る様々なプログラムモジュール、アプリケーション、または同様のものが、データストレージ254に格納されてよい。メモリ256は、ページプロファイラサーバ106上で実行される他のアプリケーションソフトウェア(例えば、専用アプリケーション、ブラウザアプリケーション、ウェブベースアプリケーション、分散型クライアントサーバアプリケーションなど)と、ページプロファイラサーバ106のハードウェアリソースとの間のインタフェースを提供し得る1または複数のオペレーティングシステム(O/S)262をデータストレージ254から読み込んでいてもよい。より具体的には、O/S262は、ページプロファイラサーバ106のハードウェアリソースを管理し、他のアプリケーションプログラムに共通のサービスを提供する(例えば、様々なアプリケーションプログラムの間でメモリ割当てを管理する)ためのコンピュータ実行可能命令のセットを含んでよい。O/S262は、任意のモバイルオペレーティングシステム、デスクトップもしくはラップトップのオペレーティングシステム、メインフレームオペレーティングシステム、または任意の他の独占もしくはオープンソースのオペレーティングシステムを含むが、これらに限定されない、現在公知であるまたは将来的に開発され得る任意のオペレーティングシステムを含んでよい。
データストレージ254は、1または複数のデータストアに格納されるデータをアクセスする、読み出す、格納する、および/または操作するための1または複数のデータベース管理システム(DBMS)264をさらに含んでよい。DBMS264は、様々なデータベースモデル(例えば、リレーショナルモデル、オブジェクトモデルなど)のうちの何れかを使用してよく、様々な問合せ言語のうちの何れかをサポートしてよい。
データストレージ254は、様々な関連する機能をサポートするコンピュータ実行可能命令を含み得る様々な他のプログラムモジュールを付加的に含んでよい。例えば、データストレージ254は、1または複数のページプロファイラモジュール266を含んでよい。
ページプロファイラモジュール266は、プロセッサ252によって実行されることに応答して、識別されたウェブページに関してベースラインページプロファイル272を生成することを含む動作を行わせる、コンピュータ実行可能命令を含んでよい。ベースラインページプロファイル272は、ページチェッキングエンジン248を使用して、ウェブページが不正なものである、有害なものである、または悪意のあるものであるかを判断してよい。
ページプロファイラモジュール266は、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、およびリンクコンポーネントのような種々のコンポーネントを含む、ベースラインページプロファイル272を生成してよい。ベースラインページプロファイルの画像コンポーネントを生成するべく、ページプロファイラモジュール266は、ウェブページから1または複数の画像を識別および取得してよい。ページプロファイラモジュール266は、画像をハッシュし、画像のハッシュを一時的ページプロファイルの画像コンポーネントとして格納してよい。
ベースラインページプロファイルの形状コンポーネントを生成するべく、ページプロファイラモジュール266は、ウェブページの形状を導出してよい。いくつかの実施形態において、ページプロファイラモジュール266は、ページソースから余分な項目を除去し、最小限のレイアウト情報を保持することによって、ウェブページの形状を導出してよい。ウェブページの形状の一例は、「画像1−左上、画像2−中央下、中央に位置合わせされ鉛直に離間された2つの入力ボックス」であってよい。
ベースラインページプロファイル272のスタイルコンポーネントを生成するべく、ページプロファイラモジュール266は、ウェブページから色およびフォント情報を取得してよい。例えば、ページプロファイラモジュール266は、ウェブページと関連付けられた階層式スタイルシート(CSS)を用いて、背景色、パレット、フォント、および他の情報のような情報を捕捉してよい。
ベースラインページプロファイル272のリンクコンポーネントを生成するために、ページプロファイラモジュール266は、ウェブページからリンク情報を取得してよい。いくつかの実施形態において、ページプロファイラモジュール266は、ウェブページのページソースにおける1または複数のリンクを識別してよく、ウェブページ上のオフドメインリンクのリストを生成してよい。
いくつかの実施形態において、ページプロファイラモジュール266は、ウェブページのコンテンツを解析してよい。例えば、ページプロファイラモジュール266は、ウェブサイトが捕捉するデータの種類を捕捉してよい。例えば、ウェブページは、ユーザの社会保障番号、クレジットカード番号、アドレスおよび他の個人識別情報についての要求を含んでよく、それらついての関連する入力フィールドを提供してよい。ページプロファイラモジュール266は、また、ウェブページ上に表示されるコンテンツを用いて、ウェブページを分類してよい。
ページプロファイラモジュール266は、生成されたベースラインページプロファイル272をユーザデバイス104、および/またはユーザデバイス104によってアクセスされ得るデータストアに送信してよい。
いくつかの実施形態において、アーキテクチャ200は、1または複数のデータストア108を含んでよい。1または複数のデータストアは、1または複数のユーザデバイス104、および/または1または複数のページプロファイラサーバ106からデータを受信してよい。いくつかの実施形態において、生成されたページプロファイル272は、格納のためにデータストア108に送信されてよく、ページチェッキングエンジン248によって、ページが有害なものまたは悪意のあるものであると判断されるときに読み出されてよい。データストア108は、また、生成されたプロファイル、およびユーザのインターアクションに基づいて、ウェブページのホワイトリスト274、および/またはブラックリスト276を格納してよい。ホワイトリスト274は、生成されたベースラインページプロファイル272に基づいて、有害なものまたは悪意のあるものであると分かったが、ウェブページにアクセスすることを望んでいるとユーザが示したウェブページを示すリストであってよい。ブラックリスト276は、生成されたベースラインページプロファイル272に基づいて、有害なものまたは悪意のあるものであると分かり、ブロックされるべきとユーザが示したウェブページを示すリストであってよい。
当業者であれば、本開示の範囲から逸脱することなく、アーキテクチャ200のコンポーネントの何れかが、記載されている、または示されているもの以外の代替的および/もしくは追加のハードウェア、ソフトウェア、またはファームウェアコンポーネントを含んでよいことを理解するであろう。より具体的には、様々な実施形態において、アーキテクチャ200の例示的なコンポーネントの何れかの一部を形成すると示され、または記載されている、ソフトウェア、ファームウェア、またはハードウェアコンポーネント、およびそのようなコンポーネントがサポートする関連する機能は、単なる例示であり、いくつかのコンポーネントは存在しなくてもよい、または追加のコンポーネントが提供されてもよいことが理解されるべきである。アーキテクチャ200の様々な例示的なコンポーネントに関して、様々なプログラムモジュールが示され、記載されている一方で、プログラムモジュールによってサポートされていると記載されている機能は、ハードウェア、ソフトウェア、および/またはファームウェアの任意の組合せによって可能になり得ることが理解されるべきである。上述されたモジュールの各々は、様々な実施形態において、サポートされた機能のロジカルパーティショニングを表してよいことがさらに理解されるべきである。このロジカルパーティショニングは、機能の説明を容易にするために示され、機能を実装するソフトウェア、ファームウェア、および/またはハードウェアの構造を表さなくてもよい。従って、特定のモジュールによって提供されると記載されている機能は、様々な実施形態において、1または複数の他のモジュールによって、少なくとも部分的に提供されてよいことが理解されるべきである。さらに、1または複数の示されているモジュールは、特定の実施形態において存在しなくてもよく、一方で、他の実施形態において、示されていない追加のモジュールが存在してもよく、説明されている機能の少なくとも一部、および/または追加の機能をサポートしてよい。さらに、特定のモジュールが、別のモジュールのサブモジュールとして示され、記載され得る一方で、特定の実施形態において、そのようなモジュールは、独立したモジュールとして提供されてよい。
当業者ならば、例示的なネットワークアーキテクチャ200が、単なる例として提供されていることを理解するであろう。多数の他の動作環境、システムアーキテクチャ、およびデバイス構成が、本開示の範囲内にある。本開示の他の実施形態は、より少ないもしくはより多くの数のコンポーネント、および/またはデバイスを含んでよく、例示的なアーキテクチャ200に関して記載されている機能のうちのいくつかもしくは全て、または追加の機能を組み込んでよい。
[例示的な処理]
図3は、本開示の1または複数の実施形態に係る、フィッシングおよびブランド保護のためにページプロファイラサーバ106によって、ウェブサイトのベースラインページプロファイルを生成する例示的な方法300の処理フロー図である。ブロック305において、ページプロファイラモジュール266は、識別されたウェブページが、以前に識別および処理されているかを判断してよい。例えば、ページプロファイラモジュール266は、識別されたウェブページのドメインを、関連するベースラインページプロファイル272がデータストア108に格納された既知のウェブサイトと比較してよい。ブロック305において、ウェブページが以前に識別および処理されているとページプロファイラモジュール266が判断した場合、次に方法は、終了に進んでよい。ブロック305において、ウェブページが以前に識別および処理されていないと、ページプロファイラモジュール266が判断した場合、方法は、段階310に進んでよい。ブロック310において、ページプロファイラモジュール266は、ウェブページから画像を取得し、ハッシュしてよい。ページプロファイラモジュール266は、ウェブページを処理して、画像(例えば、ロゴ)を識別し、画像の近似値またはハッシュを格納する。
ブロック315において、ページプロファイラモジュール266は、例えば、ページソースから余分な項目を除去し、最小限のレイアウト情報を保持することによって、ウェブページの形状を導出してよい。ウェブページの形状の一例は、「画像1−左上、画像2−中央下、中央に位置合わせされ鉛直に離間された2つの入力ボックス」であってよい。
ブロック320において、ページプロファイラモジュール266は、ウェブページから色およびフォント情報を取得してよい。例えば、ページプロファイラモジュール266は、ウェブページを処理することによって、背景色、パレット、フォント、および他の情報のような情報を捕捉してよい。いくつかの実施形態において、ページプロファイラモジュール266は、そのような情報をウェブページと関連付けられた階層式スタイルシート(CSS)のために取得してよい。
ブロック325において、ページプロファイラモジュール266は、ウェブページからリンク情報を取得してよい。いくつかの実施形態において、ページプロファイラモジュール266は、ページ上のオフドメインリンクのリストを生成してよい。ページプロファイラモジュール266は、リスト内のウェブサイトが通信しているサーバを捕捉し得る。
いくつかの実施形態において、ページプロファイラモジュール266は、ウェブページの処理中に他の情報を取得してよい。例えば、ページプロファイラモジュール266は、ウェブサイトが捕捉するデータの種類を捕捉してよい。例えば、ウェブページは、ユーザの社会保障番号、クレジットカード番号、アドレスおよび他の個人識別情報を取得してよい。ページプロファイラモジュール266は、また、ウェブページ上に表示されるコンテンツを用いて、ウェブページを分類してよい。
ブロック330において、ページプロファイラモジュール266は、ブロック310−325で取得したデータ、ならびにウェブページの処理中にページプロファイラモジュール266によって取得された任意の他のデータを用いて、ウェブページと関連付けられたベースラインページプロファイル272を生成してよい。ページプロファイラモジュール266は、ページフィンガープリントとしても知られる、ベースラインページプロファイル272を生成してよく、生成したベースラインページプロファイル272を1または複数のデータストア108に送信してよい。いくつかの実施形態において、ページプロファイラモジュール266は、生成したベースラインページプロファイル272を1または複数のユーザデバイス104に送信してよい。
いくつかの実施形態において、ページプロファイラモジュール266は、周期的な時間間隔(例えば、毎時、毎週、毎月、および毎年など)でベースラインページプロファイルを生成または再生成してよい。いくつかの実施形態において、ページプロファイラモジュール266は、イベントに応答して、ベースラインページプロファイルを生成してよい。例えば、ベースラインページプロファイル272は、以前に識別されたウェブページが、新しいコンテンツまたは新しいレイアウトに更新されているかを判断することに応答して生成されてよい。
いくつかの実施形態において、ベースラインページプロファイルを生成する際、一時的ページプロファイルは、ページプロファイラモジュール266と同様の技術および方法を用いて、ユーザデバイス104上で実行されるページチェッキングエンジン248によって生成されてよい。例えば、一時的ページプロファイルは、段階310−330に記載されているものと同様の技術を用いて生成されてよい。
図4は、本開示の1または複数の実施形態に係る、フィッシングおよびブランド保護のためのシステムにおいて、ユーザデバイス104によって、潜在的に有害なウェブサイトを識別する例示的な方法400の処理フロー図である。ブロック405において、ページチェッキングエンジン248は、ウェブページが既知であるか(例えば、不正検知のために以前に識別および処理されているか)を判断してよい。ページチェッキングエンジン248は、以前に識別および処理されている既知のウェブページのリストを読み出し、要求されたウェブページがリスト上にあるかを判断することによって、ウェブページが既知であるかを判断してよい。いくつかの実施形態において、リストは、ウェブページのホワイトリストおよびブラックリストの双方を含むリストであってよい。いくつかの実施形態において、リストは、ホワイトリストおよびブラックリストもチェックされるべきであると示してよい。ウェブページが既知である(例えば、リスト上にある)場合、次に方法は、ブロック410に進み得、そこで、ページチェッキングエンジン248は、ウェブページが既に処理されていることを示すメッセージをユーザに任意で表示してよい。例えば、ウェブページが既知であると判断され、ホワイトリスト上にある場合、ウェブページは、警告または任意の他の視覚もしくは音声指示なく、ユーザに表示され得る。ウェブページがブラックリスト上にある場合、ページチェッキングエンジン248は、要求されたページが、以前に処理され、不正であると判断されており、ブラックリスト上にあることをユーザに知らせる警告を生成してよい。警告は、ウェブページの指定を(例えば、ブラックリストからホワイトリストに)変更することをユーザに許可してよく、または、ウェブページをブラックリストから除去することなく、ユーザがウェブページに一度アクセスすることを可能にし得る。
ブロック405において、ウェブページが既知でないと判断された場合、次に方法は、ブロック415に進んでよい。ブロック415において、ページチェッキングエンジン248は、一時的ページプロファイルを生成してよい。例えば、一時的プロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、および/またはリンクコンポーネントを含んでよい。一時的ページプロファイルは、ベースラインページプロファイルを生成することに関して、図3に関連して記載されているものと同様の技術および方法を用いて生成されてよい。例えば、ページチェッキングエンジン248は、要求されたウェブページから画像を取得し、ハッシュしてよい。ページチェッキングエンジン248は、ウェブページを処理して、画像(例えば、ロゴ)を識別し、画像の近似値またはハッシュを格納してよい。ページチェッキングエンジン248は、例えば、ページソースから余分な項目を除去し、最小限のレイアウト情報を保持することによって、ウェブページの形状を導出してよい。ウェブページの形状の一例は、「画像1−左上、画像2−中央下、中央に位置合わせされ鉛直に離間された2つの入力ボックス」であってよい。ページチェッキングエンジン248は、ウェブページから色およびフォント情報を取得してよい。例えば、ページチェッキングエンジン248は、ウェブページを処理することによって、背景色、パレット、フォント、および他の情報のような情報を捕捉してよい。いくつかの実施形態において、ページチェッキングエンジン248は、そのような情報をウェブページと関連付けられた階層式スタイルシート(CSS)のために取得してよい。
ページチェッキングエンジン248は、ウェブページからリンク情報を取得してよい。いくつかの実施形態において、ページチェッキングエンジン248は、ページ上のオフドメインリンクのリストを生成してよい。ページチェッキングエンジン248は、リスト内のウェブサイトが通信しているサーバを捕捉してよい。
いくつかの実施形態において、ページチェッキングエンジン248は、ウェブページの処理中に他の情報を取得してよい。例えば、ページチェッキングエンジン248は、ウェブサイトが捕捉するデータの種類を捕捉してよい。例えば、ウェブページは、ユーザの社会保障番号、クレジットカード番号、アドレスおよび他の個人識別情報を取得してよい。ページチェッキングエンジン248は、また、ウェブページ上に表示されるコンテンツを用いて、ウェブページを分類してよい。
ページチェッキングエンジン248は、ウェブページの処理中に取得される種々の情報に基づいて、ウェブページと関連付けられた一時的ページプロファイルも生成してよい。例えば、ページチェッキングエンジン248は、また、ウェブページのコンテンツを解析してよく、そのコンテンツに基づいて、ウェブページを分類してよい。例えば、ページチェッキングエンジン248は、モバイルバンキングのウェブサイトが金融のウェブサイトであるのに対し、Amazon.comのようなウェブサイトは、小売ショッピングのウェブサイトであると判断してよい。
ブロック420において、ページチェッキングエンジン248は、ウェブページの一時的ページプロファイルをページプロファイラ106のページプロファイラモジュール266によって生成されたベースラインページプロファイルと比較してよい。いくつかの実施形態において、ページチェッキングエンジン248は、ファジーマッチアルゴリズムを用いて、ウェブページの一時的ページプロファイルを1または複数のベースラインページプロファイルと比較してよい。いくつかの実施形態において、ベースラインページプロファイルは、ユーザエクスペリエンスにおける不当な遅延を回避するため、実時間において、データストア108から読み出されてよい。いくつかの実施形態において、ユーザデバイス104は、ページプロファイラサーバ106からベースラインページプロファイルを以前に受信していてよく、それらをローカルストレージに格納していてよい。例えば、ページプロファイラサーバ106が、ベースラインページプロファイルが生成されると、それらをユーザデバイス104に送信することによって、ページチェッキングエンジン248は、要求されたウェブページを処理する間に、ローカルに格納されたベースラインページプロファイルを読み出し得、および/または一時的プロファイルを生成してよい。ローカルに格納されたベースラインページプロファイルを読み出すことは、あらゆる不必要な遅延(例えば、レイテンシ遅延)を低減し得、不正があるかを判断するために、要求されたウェブページが、すぐに処理されることを保証する。代替的に、ユーザデバイスによってアクセスされ得ると予測されたウェブページに基づいて、ユーザデバイス104の動作中に、ユーザデバイスは、ベースラインページプロファイルを動的に読み出してよい。
ブロック425において、ページチェッキングエンジン248は、ウェブページと関連付けられた一時的ページプロファイルが、任意のベースラインページプロファイルと一致するかを判断してよい。いくつかの実施形態において、ページチェッキングエンジン248は、近似アルゴリズム、またはMinHashアルゴリズムのようなファジーマッチングアルゴリズムを使用して、要求されたページが登録されたページの派生物であるかを判断してよい。例えば、近似アルゴリズムが、一時的ページプロファイルが登録されたページのページプロファイルとのパーセンテージによる一致を有すると判断し、パーセンテージによる一致が予め定められた閾値(例えば、80%)を超える場合、ページチェッキングエンジン248は、一致があると判断してよい。
ブロック425において、ページチェッキングエンジン248が一致がないと判断した場合、次に方法は、ブロック430に進んでよい。ブロック430において、ページチェッキングエンジン248は、ウェブページを変更なく継続して表示すること、またはメッセージをユーザに表示することをウェブブラウザに許可してよい。
ブロック425において、ページチェッキングエンジン248が一致があると判断した場合、次に方法は、ブロック435に進んでよい。ブロック435において、ページチェッキングエンジン248は、メッセージをユーザに表示してよい。いくつかの実施形態において、メッセージは、ウェブページが有害なもの、または悪意のあるものである可能性が高いことをユーザに警告してよい。いくつかの実施形態において、メッセージは、ユーザに提示され得る複数の選択肢を備えてよい。選択肢は、警告を無視し、ウェブページに進む選択肢、ウェブページをホワイトリスト274に追加する選択肢、および/またはウェブページをブラックリスト276に追加する選択肢を含んでよい。いくつかの実施形態において、ホワイトリスト274は、ウェブページが悪意のあるものまたは有害なものとして識別されているが、ウェブページへの将来的なアクセスを許可することをユーザが望んでいることを示してよい。ブラックリスト276は、ウェブページが悪意のあるもの、または有害なものとして識別されており、ブラウザ246が将来的にウェブページにアクセスすることを許可しないことを示してよい。
任意のブロック440において、ページチェッキングエンジン248は、将来使用するために、一時的ページプロファイルをベースラインページプロファイル272として、データストア108に格納してよい。いくつかの実施形態において、ページチェッキングエンジン248は、一時的ページプロファイルをベースラインページプロファイル272として、ユーザデバイス104のローカルストレージに格納してよい。
いくつかの実施形態において、ページチェッキングエンジン248は、ウェブページを不正なものとして、脅威アナライザにレポートし得る。レポートは、ベースラインページプロファイル272および一時的ページプロファイルを含んでよい。脅威アナライザは、悪意のあるアクティビティに関して、ウェブページをさらに解析し得、ウェブページは、ウェブページのコンテンツに基づいて分類されてよい。一度ウェブページが分類されると、カテゴライザは、ウェブサイトを識別することが可能であり得、その結果、他のユーザを脅威から防ぐ。
1つの実施形態において、コンピュータ可読媒体は、コンピュータ実行可能命令を格納してよく、命令はプロセッサによって実行されるとき、プロセッサに、ウェブページと関連付けられた一時的ページプロファイルを生成することであって、一時的ページプロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、およびリンクコンポーネントを含む、生成することと、1または複数のベースラインページプロファイルを読み出すことと、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較することと、一時的ページプロファイルが1または複数のベースラインページプロファイルと一致しないと判断することと、ウェブページに関して不正が検知されたことを示す、ユーザに表示する警告を生成することとを含む動作を行わせるコンピュータ実行可能命令を格納してよい。
一実施形態の1つの態様において、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較することは、ファジーマッチングアルゴリズムを用いて、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較することをさらに備える。一実施形態の1つの態様において、ファジーマッチングアルゴリズムは、MinHashアルゴリズムであってよい。一実施形態の1つの態様において、警告は、ユーザに表示される選択肢を含んでよく、動作は、ウェブページが表示されるべきである、ホワイトリストに追加されるべきである、またはブラックリストに追加されるべきであるかとのユーザからの指示を受信することをさらに備えてよい。一実施形態の1つの態様において、動作は、トリガイベントが生じたと判断することと、トリガイベントが生じたと判断することに応答して、ウェブページと関連付けられた一時的ページプロファイルを生成することとをさらに備えてよい。一実施形態の1つの態様において、動作は、一時的ページプロファイルをベースラインページプロファイルとして格納することをさらに備えてよい。一実施形態の1つの態様において、動作は、ウェブページが不正なものであることを示すレポートを脅威アナライザに送信することをさらに備えてよく、レポートは、一時的ページプロファイルおよびベースラインページプロファイルを含む。
1つの実施形態において、システムは、コンピュータ実行可能命令を格納する少なくとも1つのメモリと、少なくとも1つのプロセッサとを備え、少なくとも1つのプロセッサは、少なくとも1つのメモリにアクセスし、ウェブページと関連付けられた一時的ページプロファイルを生成することであって、一時的ページプロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、およびリンクコンポーネントを含むことと、1または複数のベースラインページプロファイルを読み出すことと、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較することと、一時的ページプロファイルは1または複数のベースラインページプロファイルと一致しないと判断することと、ウェブページに関して不正が検知されたことを示す、ユーザに表示する警告を生成することとを実行する、コンピュータ実行可能命令を実行するように構成される。
一実施形態の1つの態様において、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較するために、少なくとも1つのプロセッサは、ファジーマッチングアルゴリズムを用いて、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較するコンピュータ実行可能命令を実行するようにさらに構成されてよい。一実施形態の1つの態様において、ファジーマッチングアルゴリズムは、MinHashアルゴリズムであってよい。一実施形態の1つの態様において、警告は、ユーザに表示される選択肢を備えてよく、少なくとも1つのプロセッサは、ウェブページが表示されるべきである、ホワイトリストに追加されるべきである、またはブラックリストに追加されるべきであるかとのユーザからの指示を受信するコンピュータ実行可能命令を実行するようにさらに構成されてよい。一実施形態の1つの態様において、少なくとも1つのプロセッサは、トリガイベントが生じたと判断し、トリガイベントが生じたと判断することに応答して、ウェブページと関連付けられた一時的ページプロファイルを生成するコンピュータ実行可能命令を実行するようにさらに構成されてよい。一実施形態の1つの態様において、少なくとも1つのプロセッサは、一時的ページプロファイルをベースラインページプロファイルとして格納するコンピュータ実行可能命令を実行するようにさらに構成されてよい。一実施形態の1つの態様において、少なくとも1つのプロセッサは、ウェブページが不正なものであることを示すレポートを脅威アナライザに送信するコンピュータ実行可能命令を実行するようにさらに構成されてよく、レポートは、一時的ページプロファイルおよびベースラインページプロファイルを含む。
1つの実施形態において、方法は、ウェブページと関連付けられた一時的ページプロファイルを生成する段階であって、一時的ページプロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、およびリンクコンポーネントを含む、生成する段階と、1または複数のベースラインページプロファイルを読み出す段階と、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較する段階と、一時的ページプロファイルが、1または複数のベースラインページプロファイルと一致しないと判断する段階と、ウェブページに関して不正が検知されたことを示す、ユーザに表示する警告を生成する段階とを備えてよい。
一実施形態の1つの態様において、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較することは、ファジーマッチングアルゴリズムを用いて、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較することをさらに備える。一実施形態の1つの態様において、ファジーマッチングアルゴリズムは、MinHashアルゴリズムであってよい。一実施形態の1つの態様において、警告は、ユーザに表示される選択肢を備えてよく、方法は、ウェブページが表示されるべきである、ホワイトリストに追加されるべきである、またはブラックリストに追加されるべきであるかとのユーザからの指示を受信することをさらに備えてよい。一実施形態の1つの態様において、方法は、トリガイベントが生じたと判断する段階と、トリガイベントが生じたと判断することに応答して、ウェブページと関連付けられた一時的ページプロファイルを生成する段階とをさらに備えてよい。一実施形態の1つの態様において、方法は、一時的ページプロファイルをベースラインページプロファイルとして格納することをさらに備えてよい。方法は、ウェブページが不正なものであることを示すレポートを脅威アナライザに送信する段階であって、レポートは、一時的ページプロファイルおよびベースラインページプロファイルを含む、送信する段階をさらに備えてよい。
1つの実施形態において、装置は、コンピュータ実行可能命令を格納する少なくとも1つのメモリと、少なくとも1つのプロセッサとを備え、少なくとも1つのプロセッサは、少なくとも1つのメモリにアクセスし、ウェブページと関連付けられた一時的ページプロファイルを生成することであって、一時的ページプロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、およびリンクコンポーネントを含む、生成することと、1または複数のベースラインページプロファイルを読み出すことと、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較することと、一時的ページプロファイルが1または複数のベースラインページプロファイルと一致しないと判断することと、ウェブページに関して不正が検知されたことを示す、ユーザに表示する警告を生成することとを実行するコンピュータ実行可能命令を実行するように構成される。
一実施形態の1つの態様において、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較するために、少なくとも1つのプロセッサは、ファジーマッチングアルゴリズムを用いて、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較するコンピュータ実行可能命令を実行するようにさらに構成される。一実施形態の1つの態様において、ファジーマッチングアルゴリズムは、MinHashアルゴリズムであってよい。一実施形態の1つの態様において、警告は、ユーザに表示される選択肢を含み、少なくとも1つのプロセッサは、ウェブページが表示されるべきである、ホワイトリストに追加されるべきである、ブラックリストに追加されるべきであるかとのユーザからの指示を受信するコンピュータ実行可能命令を実行するようにさらに構成されてよい。一実施形態の1つの態様において、少なくとも1つのプロセッサは、トリガイベントが生じたと判断し、トリガイベントが生じたと判断することに応答して、ウェブページと関連付けられた一時的ページプロファイルを生成するコンピュータ実行可能命令を実行するようにさらに構成されてよい。一実施形態の1つの態様において、少なくとも1つのプロセッサは、一時的ページプロファイルをベースラインページプロファイルとして格納するコンピュータ実行可能命令を実行するようにさらに構成されてよい。一実施形態の1つの態様において、少なくとも1つのプロセッサは、ウェブページが不正なものであることを示すレポートを脅威アナライザに送信するコンピュータ実行可能命令を実行するようにさらに構成されてよく、レポートは、一時的ページプロファイルおよびベースラインページプロファイルを含む。
1つの実施形態において、システムは、ウェブページと関連付けられた一時的ページプロファイルを生成する手段であって、一時的ページプロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、およびリンクコンポーネントを含む、生成する手段と、1または複数のベースラインページプロファイルを読み出す手段と、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較する手段と、一時的ページプロファイルが1または複数のベースラインページプロファイルと一致しないと判断する手段と、ウェブページに関して不正が検知されたことを示す、ユーザに表示する警告を生成する手段とを備えてよい。
一実施形態の1つの態様において、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較する手段は、ファジーマッチングアルゴリズムを用いて、一時的ページプロファイルを1または複数のベースラインページプロファイルと比較する手段をさらに備えてよい。一実施形態の1つの態様において、ファジーマッチングアルゴリズムは、MinHashアルゴリズムであってよい。一実施形態の1つの態様において、警告は、ユーザに表示される選択肢を含んでよく、システムは、ウェブページが表示されるべきである、ホワイトリストに追加されるべきである、ブラックリストに追加されるべきであるかとのユーザからの指示を受信する手段をさらに備えてよい。一実施形態の1つの態様において、システムは、トリガイベントが生じたと判断する手段と、トリガイベントが生じたと判断することに応答して、ウェブページと関連付けられた一時的ページプロファイルを生成する手段とを備えてよい。一実施形態の1つの態様において、システムは、一時的ページプロファイルをベースラインページプロファイルとして格納する手段を備えてよい。一実施形態の1つの態様において、システムは、ウェブページが不正なものであることを示すレポートを脅威アナライザに送信する手段であって、レポートは、一時的ページプロファイルおよびベースラインページプロファイルを含む、手段を備えてよい。
[結論]
データストレージに格納されているとして本開示に示されている、プログラムモジュール、アプリケーション、コンピュータ実行可能命令、コード、または同様のものは、単なる例示であって、包括的なものでなく、任意の特定のモジュールによってサポートされていると記載されている処理は、代替的に、複数のモジュールにわたって分散されてよく、または異なるモジュールによって行われてよいことが理解されるべきである。加えて、様々なプログラムモジュール、スクリプト、プラグイン、アプリケーションプログラミングインタフェース(API)、または、デバイス(例えば、ユーザデバイス104、ブローカ106、インシデントレスポンスサーバ108)上にローカルにホスティングされる、および/または1または複数のネットワークを介してアクセス可能な他のコンピューティングデバイス上にホスティングされる任意の他の好適なコンピュータ実行可能コードが、本明細書に示されている、プログラムモジュール、アプリケーション、またはコンピュータ実行可能コードによって提供される機能、および/または追加的もしくは代替的な機能をサポートするべく、提供されてよい。さらに、本明細書に記載されている一群のプログラムモジュールによって、一括してサポートされていると記載されている処理が、より少ないもしくはより多くの数のモジュールによって行われるように、異なるように機能がモジュール化されてよい、または任意の特定のモジュールによってサポートされていると記載されている機能が、別のモジュールによって、少なくとも部分的にサポートされてよい。加えて、本明細書に記載されている機能をサポートするプログラムモジュールは、例えば、クライアント・サーバモデル、ピア・ツー・ピアモデルなどのような任意の好適なコンピューティングモデルに係る、任意の数のシステムまたはデバイスににわたって実行可能な1または複数のアプリケーションの一部を形成してよい。加えて、本明細書に記載されているプログラムモジュールの何れかによってサポートされると記載されている機能の何れかは、任意の数のデバイスにわたって、ハードウェアおよび/またはファームウェアで少なくとも部分的に実装されてよい。
デバイス(例えば、ユーザデバイス104、ブローカ106、インシデントレスポンスサーバ108など)は、本開示の範囲から逸脱することなく、記載されているまたは示されているもの以外の代替的および/または追加のハードウェア、ソフトウェア、またはファームウェアコンポーネントを含んでよいことがさらに理解されるべきである。より具体的には、様々な実施形態において、デバイス(例えば、ユーザデバイス104、ブローカ106、インシデントレスポンスサーバ108など)の一部を形成すると示されているソフトウェア、ファームウェア、またはハードウェアコンポーネントは、単なる例示であり、いくつかのコンポーネントは存在しない場合がある、または追加のコンポーネントが提供されてもよいことが理解されるべきである。様々な例示的なプログラムモジュールが、データストレージに格納されるソフトウェアモジュールとして示され、記載されている一方で、プログラムモジュールによってサポートされていると記載されている機能は、ハードウェア、ソフトウェア、および/またはファームウェアの任意の組合せによって可能になり得ることが理解されるべきである。上述されたモジュールの各々は、様々な実施形態において、サポートされた機能のロジカルパーティショニングを表してよいことがさらに理解されるべきである。このロジカルパーティショニングは、機能の説明を容易にするために示され、機能を実装するソフトウェア、ハードウェア、および/またはファームウェアの構造を表さなくてもよい。従って、特定のモジュールによって提供されていると記載されている機能は、様々な実施形態において、1または複数の他のモジュールによって少なくとも部分的に提供されてよいことが理解されるべきである。さらに、1または複数の示されているモジュールは、特定の実施形態において存在しなくてもよく、一方で、他の実施形態において、示されていない追加のモジュールが存在してもよく、説明されている機能の少なくとも一部、および/または追加の機能をサポートしてもよい。さらに、特定のモジュールが、別のモジュールのサブモジュールとして示され、および記載され得る一方で、特定の実施形態において、そのようなモジュールは、独立したモジュール、または他のモジュールのサブモジュールとして提供されてもよい。
方法300−400の1または複数の動作は、デバイスの1または複数のコンポーネントによって行なわれているとして、またはより具体的には、そのようなデバイス上で実行される1または複数のプログラムモジュールによって行なわれているとして、上述されていてよい。しかしながら、方法300−400の動作の何れかは、少なくとも部分的に、1または複数の他のデバイスもしくはシステムによって、または、より具体的には、そのようなデバイス上で実行される1または複数のプログラムモジュール、アプリケーション、または同様のものによって、分散方式で行われてよいことが理解されるべきである。加えて、アプリケーション、プログラムモジュール、または同様のものの一部として提供されるコンピュータ実行可能命令の実行に応答して行われる処理は、アプリケーションもしくはプログラムモジュール自体によって、またはアプリケーション、プログラムモジュール、または同様のものが実行されるデバイスによって行われているものとして、本明細書に相互に交換可能に記載され得ることが理解されるべきである。方法300の動作の何れかが、例示的なユーザデバイス400の文脈で記載され得る一方で、そのような動作は、多数の他のシステム構成と関連して実施されてよいことが理解されるべきである。
図3から図4の例示的な方法に記載されおよび示されている動作は、本開示の様々な例示的な実施形態において、任意の好適な順序で所望により実行され、または行われてよい。付加的に、特定の例示的な実施形態において、動作の少なくとも一部は、並行して実行されてよい。さらに、特定の例示的な実施形態において、図3から図4に示されているものより少ない、より多い、または異なる動作が、行われてよい。
本開示の具体的な実施形態が記載されてきたが、当業者であれば、多数の他の修正、および代替的な実施形態が本開示の範囲内であることを認識するであろう。例えば、特定のデバイスまたはコンポーネントに関して記載されている機能および/または処理能力の何れかは、任意の他のデバイスまたはコンポーネントによって行われてよい。さらに、様々な例示的な実装およびアーキテクチャが、本開示の実施形態に従って記載されているが、当業者であれば、本明細書に記載されている例示的な実装およびアーキテクチャへの多数の他の修正も、本開示の範囲内であることを理解するであろう。
本開示の特定の態様が、例示的な実施形態に係る、システム、方法、装置、および/またはコンピュータプログラム製品のブロック図およびフロー図を参照して上述されている。ブロック図およびフロー図の1または複数のブロック、およびブロック図およびフロー図のブロックの組合せは、それぞれ、コンピュータ実行可能プログラム命令の実行によって実施されてよいことが理解されるであろう。同様に、いくつかの実施形態によれば、ブロック図およびフロー図のいくつかのブロックは、必ずしも提示された順序で行われる必要がなく、またはそもそも、必ずしも行われる必要がない。さらに、ブロック図および/またはフロー図のブロックに示されているもの以外の追加のコンポーネントおよび/または動作が、特定の実施形態において存在してよい。
従って、ブロック図およびフロー図のブロックは、指定される機能が行われる手段の組合せ、指定される機能が行われる要素または段階の組合せ、および指定される機能が行われるプログラム命令の手段をサポートする。ブロック図およびフロー図の各ブロック、およびブロック図およびフロー図のブロックの組合せが、指定される機能、要素もしくは段階、または特定用途ハードウェアおよびコンピュータ命令の組合せを行う、特定用途のハードウェアベースコンピュータシステムによって実装され得ることも理解されるであろう。
本明細書に開示されているプログラムモジュール、アプリケーション、または同様のものは、例えば、ソフトウェアオブジェクト、方法、データ構造、または同様のものを含む、1または複数のソフトウェアコンポーネントを含んでよい。そのようなソフトウェアコンポーネントの各々は、実行に応答して、本明細書に記載されている機能(例えば、本明細書に記載の例示的な方法の1または複数の動作)の少なくとも一部を行わせるコンピュータ実行可能命令を含む。
ソフトウェアコンポーネントは、様々なプログラミング言語のうちの何れかでコード化されてよい。例示的なプログラミング言語は、特定のハードウェアアーキテクチャおよび/またはオペレーティングシステムプラットフォームと関連付けられたアセンブリ言語のような、より低レベルのプログラミング言語であってよい。アセンブリ言語命令を備えるソフトウェアコンポーネントは、ハードウェアアーキテクチャおよび/またはプラットフォームによる実行の前に、アセンブラによって実行可能なマシンコードへの変換を必要としてよい。
別の例示的なプログラミング言語は、複数のアーキテクチャにわたってポータブルであり得る、より高レベルのプログラミング言語であってよい。より高レベルのプログラミング言語命令を備えるソフトウェアコンポーネントは、実行の前に、インタープリタまたはコンパイラによる中間表現への変換を必要としてよい。
プログラミング言語の他の例は、マクロ言語、シェルもしくはコマンド言語、ジョブ制御言語、スクリプト言語、データベース質問もしくは探索言語、または報告書作成言語を含むが、これらに限定されない。1または複数の例示的な実施形態において、前述の例のうちの1つのプログラミング言語の命令を備えるソフトウェアコンポーネントは、まず、別の形へと変化させる必要がないオペレーティングシステムまたは他のソフトウェアコンポーネントによって、直接的に実行される。
ソフトウェアコンポーネントは、ファイルまたは他のデータストレージ構成物として格納されてよい。同様の種類の、または機能的に関連するソフトウェアコンポーネントは、例えば、特定のディレクトリ、フォルダ、またはライブラリなどに一緒に格納されてよい。ソフトウェアコンポーネントは、静的(例えば、事前に構築された、もしくは固定の)、または、動的(例えば、実行時に形成され、もしくは変更される)であり得る。
多種多様なメカニズムの何れかを通じて、ソフトウェアコンポーネントが他のソフトウェアコンポーネントを呼び出してよい、または他のソフトウェアコンポーネントによって呼び出されてよい。呼び出された、または呼び出されているソフトウェアコンポーネントは、他の特別に開発されたアプリケーションソフトウェア、オペレーティングシステム機能(例えば、デバイスドライバ、データストレージ(例えば、ファイル管理)ルーチン、他の共通ルーチン、およびサービスなど)、または第三者ソフトウェアコンポーネント(例えば、ミドルウェア、暗号化、または他のセキュリティソフトウェア、データベース管理ソフトウェア、ファイル転送もしくは他のネットワーク通信ソフトウェア、数学もしくは統計ソフトウェア、画像処理ソフトウェア、およびフォーマット変換ソフトウェア)を含んでよい。
特定のソリューションまたはシステムに関連付けられたソフトウェアコンポーネントは、単一のプラットフォームに存在し、単一のプラットフォームで実行され得、または複数のプラットフォームにわたって分散されてよい。複数のプラットフォームは、1より多くのチップ技術の基礎をなすハードウェアベンダ、またはオペレーティングシステムに関連付けられてよい。さらに、特定のソリューションまたはシステムに関連付けられたソフトウェアコンポーネントは、最初に1または複数のプログラミング言語で書かれてよいが、別のプログラミング言語で書かれたソフトウェアコンポーネントを呼び出してもよい。
コンピュータ、プロセッサ、または他のプログラム可能なデータ処理装置上の命令の実行が、フロー図で指定されている1または複数の機能または動作を行わせるように特定のマシンを製造するべく、コンピュータ実行可能プログラム命令は、特定用途コンピュータもしくは他の特定のマシン、プロセッサまたは他のプログラム可能なデータ処理装置に読み込まれてもよい。これらのコンピュータプログラム命令は、また、コンピュータ可読ストレージ媒体(CRSM)に格納されてよく、実行されると、コンピュータまたは他のプログラム可能なデータ処理装置は、コンピュータ可読ストレージ媒体に格納された命令が、フロー図で指定された1または複数の機能または動作を実施する命令手段を含む、製造品を製造するよう、特定の態様で機能するべく方向付けられてよい。コンピュータプログラム命令は、また、コンピュータによって実施される処理を生じさせるべく、コンピュータ、または他のプログラム可能装置上で一連の演算要素もしくは段階を行わせるコンピュータまたは他のプログラム可能なデータ処理装置に読み込まれてもよい。
本明細書に記載されているデバイスの何れかに存在し得る追加の種類のCRSMは、プログラム可能ランダムアクセスメモリ(PRAM)、SRAM、DRAM、RAM、ROM、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、フラッシュメモリ、または他のメモリ技術、コンパクトディスクリードオンリメモリ(CD−ROM)、デジタル多用途ディスク(DVD)、または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、または他の磁気ストレージデバイス、または情報を格納するために使用され得、アクセスされ得る任意の他の媒体を含んでよいが、これらに限定されない。上記の任意のものの組合せが、CRSMの範囲内にも含まれる。代替的に、コンピュータ可読通信媒体(CRCM)は、コンピュータ可読命令、プログラムモジュール、または搬送波のようなデータ信号内で、または他のトランスミッションで送信される他のデータを含んでよい。しかしながら、本明細書において使用されているように、CRSMはCRCMを含まない。
構造上の特徴および/または方法上の動作に特有の言語で実施形態が記載されているが、本開示は、記載されている特定の特徴または動作に必ずしも限定されないことが理解されるべきである。むしろ、特定の特徴および動作は、実施形態を実施する例示的な形で開示される。とりわけ、「can(〜できる)」、「could(〜できる)」「might(〜してよい)」または「may(〜してよい)」のような条件付き言語は、特に明記しない限り、または使用されている文脈で他の解釈がない限り、概して、特定の実施形態では特定の特徴、要素、および/または段階を含んでよく、一方で、他の実施形態では含まないことを伝えることを意図するものとする。従って、そのような条件付き言語は、概して、特徴、要素および/または段階が、1または複数の実施形態に多少なりとも必要とされる、または1または複数の実施形態が、ユーザ入力、またはこれらの特徴、要素および/または段階が、任意の特定の実施形態において含められる、または行われるかを促がすことの有無にかかわらず、決定するための論理を必ず含むことを示唆するように意図されるものではない。

Claims (21)

  1. コンピュータ実行可能命令を格納するコンピュータ可読媒体であって、前記命令は、プロセッサによって実行されるとき、前記プロセッサに、
    ウェブページと関連付けられた一時的ページプロファイルを生成することであって、前記一時的ページプロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、およびリンクコンポーネントを含む、生成することと、
    1または複数のベースラインページプロファイルを読み出すことと、
    前記一時的ページプロファイルを前記1または複数のベースラインページプロファイルと比較することと、
    前記一時的ページプロファイルが、前記1または複数のベースラインページプロファイルと一致しないと判断することと、
    前記ウェブページに関して不正が検知されたことを示す、ユーザに表示する警告を生成することと
    を備える動作を行わせる、コンピュータ可読媒体。
  2. 前記一時的ページプロファイルを前記1または複数のベースラインページプロファイルと比較することは、
    ファジーマッチングアルゴリズムを用いて、前記一時的ページプロファイルを前記1または複数のベースラインページプロファイルと比較することをさらに含む、請求項1に記載のコンピュータ可読媒体。
  3. 前記ファジーマッチングアルゴリズムは、MinHashアルゴリズムである、請求項2に記載のコンピュータ可読媒体。
  4. 前記警告は、前記ユーザに表示される選択肢を含み、前記動作は、
    前記ウェブページが、表示されるべきである、ホワイトリストに追加されるべきである、またはブラックリストに追加されるべきであるかとの前記ユーザからの指示を受信すること
    をさらに備える、請求項1に記載のコンピュータ可読媒体。
  5. 前記動作は、
    トリガイベントが生じたと判断することと、
    前記トリガイベントが生じたと判断したことに応答して、前記ウェブページと関連付けられた前記一時的ページプロファイルを生成することと
    をさらに備える、請求項1に記載のコンピュータ可読媒体。
  6. 前記動作は、
    前記一時的ページプロファイルをベースラインページプロファイルとして格納すること
    をさらに備える、請求項1から5の何れか一項に記載のコンピュータ可読媒体。
  7. 前記動作は、
    前記ウェブページが不正なものであることを示すレポートを脅威アナライザに送信することであって、前記レポートは、前記一時的ページプロファイルおよび前記ベースラインページプロファイルを含む、送信することをさらに備える、請求項1に記載のコンピュータ可読媒体。
  8. コンピュータ実行可能命令を格納する少なくとも1つのメモリと、
    少なくとも1つのプロセッサとを備え、
    前記少なくとも1つのプロセッサは、前記少なくとも1つのメモリにアクセスし、
    ウェブページと関連付けられた一時的ページプロファイルを生成することであって、前記一時的ページプロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、およびリンクコンポーネントを含む、生成することと、
    1または複数のベースラインページプロファイルを読み出すことと、
    前記一時的ページプロファイルを前記1または複数のベースラインページプロファイルと比較することと、
    前記一時的ページプロファイルが、前記1または複数のベースラインページプロファイルと一致しないと判断することと、
    前記ウェブページに関して不正が検知されたことを示す、ユーザに表示する警告を生成することと
    を実行する前記コンピュータ実行可能命令を実行するように構成される、システム。
  9. 前記一時的ページプロファイルを前記1または複数のベースラインページプロファイルと比較するために、前記少なくとも1つのプロセッサは、
    ファジーマッチングアルゴリズムを用いて、前記一時的ページプロファイルを前記1または複数のベースラインページプロファイルと比較する前記コンピュータ実行可能命令を実行するようにさらに構成される、請求項8に記載のシステム。
  10. 前記ファジーマッチングアルゴリズムは、MinHashアルゴリズムである、請求項9に記載のシステム。
  11. 前記警告は、前記ユーザに表示する選択肢を含み、前記少なくとも1つのプロセッサは、
    前記ウェブページが、表示されるべきである、ホワイトリストに追加されるべきである、またはブラックリストに追加されるべきであるかとの前記ユーザからの指示を受信する前記コンピュータ実行可能命令を実行するようにさらに構成される、請求項8に記載のシステム。
  12. 前記少なくとも1つのプロセッサは、
    トリガイベントが生じたと判断することと、
    前記トリガイベントが生じたと前記判断したことに応答して、前記ウェブページと関連付けられた前記一時的ページプロファイルを生成する前記コンピュータ実行可能命令を実行するようにさらに構成される、請求項8に記載のシステム。
  13. 前記少なくとも1つのプロセッサは、
    前記一時的ページプロファイルをベースラインページプロファイルとして格納する前記コンピュータ実行可能命令を実行するようにさらに構成される、請求項8に記載のシステム。
  14. 前記少なくとも1つのプロセッサは、
    前記ウェブページが不正なものであることを示すレポートを脅威アナライザに送信することであって、前記レポートは、前記一時的ページプロファイルおよび前記ベースラインページプロファイルを含む、送信することを実行する前記コンピュータ実行可能命令を実行するようにさらに構成される、請求項8から13の何れか一項に記載のシステム。
  15. ウェブページと関連付けられた一時的ページプロファイルを生成する段階であって、前記一時的ページプロファイルは、画像コンポーネント、形状コンポーネント、スタイルコンポーネント、およびリンクコンポーネントを含む、生成する段階と、
    1または複数のベースラインページプロファイルを読み出す段階と、
    前記一時的ページプロファイルを前記1または複数のベースラインページプロファイルと比較する段階と、
    前記一時的ページプロファイルが、前記1または複数のベースラインページプロファイルと一致しないと判断する段階と、
    前記ウェブページに関して不正が検知されたことを示す、ユーザに表示する警告を生成する段階と
    を備える方法。
  16. 前記一時的ページプロファイルを前記1または複数のベースラインページプロファイルと比較する段階は、
    ファジーマッチングアルゴリズムを用いて、前記一時的ページプロファイルを前記1または複数のベースラインページプロファイルと比較する段階
    をさらに含む、請求項15に記載の方法。
  17. 前記ファジーマッチングアルゴリズムは、MinHashアルゴリズムである、請求項16に記載の方法。
  18. 前記警告は、前記ユーザに表示される選択肢を含み、前記方法は、
    前記ウェブページが、表示されるべきである、ホワイトリストに追加されるべきである、またはブラックリストに追加されるべきであるかとの前記ユーザからの指示を受信する段階
    をさらに備える、請求項15に記載の方法。
  19. トリガイベントが生じたと判断する段階と、
    前記トリガイベントが生じたと前記判断する段階に応答して、前記ウェブページと関連付けられた前記一時的ページプロファイルを生成する段階と
    をさらに備える、請求項15に記載の方法。
  20. 前記一時的ページプロファイルをベースラインページプロファイルとして格納する段階
    をさらに備える、請求項15に記載の方法。
  21. 前記ウェブページが不正なものであることを示すレポートを脅威アナライザに送信する段階であって、前記レポートは、前記一時的ページプロファイルおよび前記ベースラインページプロファイルを含む、送信する段階
    をさらに備える、請求項15から20の何れか一項に記載の方法。
JP2017567467A 2015-08-05 2016-07-11 フィッシングおよびブランド保護のためのシステムおよび方法 Active JP6570663B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/818,875 US10200381B2 (en) 2015-08-05 2015-08-05 Systems and methods for phishing and brand protection
US14/818,875 2015-08-05
PCT/US2016/041739 WO2017023497A1 (en) 2015-08-05 2016-07-11 Systems and methods for phishing and brand protection

Publications (2)

Publication Number Publication Date
JP2018526721A true JP2018526721A (ja) 2018-09-13
JP6570663B2 JP6570663B2 (ja) 2019-09-04

Family

ID=57943459

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017567467A Active JP6570663B2 (ja) 2015-08-05 2016-07-11 フィッシングおよびブランド保護のためのシステムおよび方法

Country Status (4)

Country Link
US (2) US10200381B2 (ja)
JP (1) JP6570663B2 (ja)
CN (1) CN107852412B (ja)
WO (1) WO2017023497A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021033421A (ja) * 2019-08-19 2021-03-01 Kddi株式会社 解析装置、検出装置、システム及びプログラム
JP2022007278A (ja) * 2020-06-26 2022-01-13 Kddi株式会社 シグネチャ生成装置、検出装置、シグネチャ生成プログラム及び検出プログラム

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10200381B2 (en) 2015-08-05 2019-02-05 Mcafee, Llc Systems and methods for phishing and brand protection
US10262129B1 (en) * 2015-11-02 2019-04-16 Shanit Gupta Dynamic password generator with fuzzy matching
US11074434B2 (en) * 2018-04-27 2021-07-27 Microsoft Technology Licensing, Llc Detection of near-duplicate images in profiles for detection of fake-profile accounts
KR20210104152A (ko) * 2018-12-31 2021-08-24 구글 엘엘씨 베이지안 추론을 이용하여 정합 그래프에서 검토 결정들 예측
US10498760B1 (en) * 2019-07-16 2019-12-03 ALSCO Software LLC Monitoring system for detecting and preventing a malicious program code from being uploaded from a client computer to a webpage computer server
US11831419B2 (en) * 2019-09-27 2023-11-28 Mcafee, Llc Methods and apparatus to detect website phishing attacks
US10735436B1 (en) * 2020-02-05 2020-08-04 Cyberark Software Ltd. Dynamic display capture to verify encoded visual codes and network address information
RU2762241C2 (ru) * 2020-02-26 2021-12-16 Акционерное общество "Лаборатория Касперского" Система и способ выявления мошеннических активностей при взаимодействии пользователя с банковскими сервисами
CN111786781B (zh) * 2020-06-29 2021-03-26 友谊时光科技股份有限公司 一种ssl证书监控方法、系统、装置、设备及存储介质
CN112330347A (zh) * 2020-12-12 2021-02-05 国家计算机网络与信息安全管理中心江苏分中心 一种智能识别诈骗团伙的方法及系统
CN112291273B (zh) * 2020-12-24 2021-03-26 远江盛邦(北京)网络安全科技股份有限公司 基于多维向量比较的页面模糊匹配实现方法
NL2031940B1 (en) 2021-05-20 2023-06-13 Group Ib Ltd Method and device for clustering phishing web resources based on visual content image
US11882152B2 (en) * 2021-07-30 2024-01-23 Bank Of America Corporation Information security system and method for phishing website identification based on image hashing

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070067651A (ko) * 2007-05-09 2007-06-28 한재호 인터넷 사이트 패턴 분석을 통한 피싱방지 방법
JP2007310793A (ja) * 2006-05-22 2007-11-29 Matsushita Electric Ind Co Ltd 認証装置、認証方法および認証プログラム
JP2014102612A (ja) * 2012-11-19 2014-06-05 Mitsubishi Electric Corp 改竄検知装置及び改竄検知方法
JP2014197375A (ja) * 2013-03-04 2014-10-16 株式会社オプティム セキュリティサーバ、ユーザ端末、ウェブページ鑑定方法、セキュリティサーバ用プログラム

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060080735A1 (en) * 2004-09-30 2006-04-13 Usa Revco, Llc Methods and systems for phishing detection and notification
KR100723867B1 (ko) 2005-11-23 2007-05-31 한국전자통신연구원 피싱웹페이지 차단 장치 및 방법
US8640231B2 (en) * 2006-02-23 2014-01-28 Microsoft Corporation Client side attack resistant phishing detection
US20080046738A1 (en) 2006-08-04 2008-02-21 Yahoo! Inc. Anti-phishing agent
US20080219495A1 (en) * 2007-03-09 2008-09-11 Microsoft Corporation Image Comparison
US7698317B2 (en) * 2007-04-20 2010-04-13 Yahoo! Inc. Techniques for detecting duplicate web pages
KR20090019451A (ko) 2007-08-21 2009-02-25 한국전자통신연구원 피싱 및 파밍 알림 방법 및 장치
US8281394B2 (en) 2007-08-31 2012-10-02 Symantec Corporation Phishing notification service
US8055078B2 (en) * 2008-02-28 2011-11-08 Yahoo! Inc. Filter for blocking image-based spam
US8037069B2 (en) * 2008-06-03 2011-10-11 Microsoft Corporation Membership checking of digital text
GB2462456A (en) * 2008-08-08 2010-02-10 Anastasios Bitsios A method of determining whether a website is a phishing website, and apparatus for the same
US8060936B2 (en) * 2008-10-21 2011-11-15 Lookout, Inc. Security status and information display system
US8381292B1 (en) * 2008-12-30 2013-02-19 The Uab Research Foundation System and method for branding a phishing website using advanced pattern matching
US8448245B2 (en) * 2009-01-17 2013-05-21 Stopthehacker.com, Jaal LLC Automated identification of phishing, phony and malicious web sites
CN101826105B (zh) * 2010-04-02 2013-06-05 南京邮电大学 基于匈牙利匹配算法的钓鱼网页检测方法
GB2485156B (en) * 2010-11-02 2016-06-01 Ian Hawkes Michael Method and apparatus for securing network communications
CA2840992C (en) * 2011-07-08 2017-03-14 Brad WARDMAN Syntactical fingerprinting
CN102629261B (zh) * 2012-03-01 2014-07-16 南京邮电大学 由钓鱼网页查找目标网页的方法
CN103379110A (zh) * 2012-04-21 2013-10-30 中南林业科技大学 一种网络钓鱼主动防御系统
CN102769632A (zh) * 2012-07-30 2012-11-07 珠海市君天电子科技有限公司 钓鱼网站分级检测和提示的方法及系统
CN102932348A (zh) * 2012-10-30 2013-02-13 常州大学 一种钓鱼网站的实时检测方法及系统
US9621566B2 (en) * 2013-05-31 2017-04-11 Adi Labs Incorporated System and method for detecting phishing webpages
US9880983B2 (en) * 2013-06-04 2018-01-30 X1 Discovery, Inc. Methods and systems for uniquely identifying digital content for eDiscovery
US9124623B1 (en) * 2013-06-20 2015-09-01 Symantec Corporation Systems and methods for detecting scam campaigns
CN104090882B (zh) * 2013-11-14 2016-06-01 深圳市腾讯计算机系统有限公司 一种广告订单的快速聚类方法及系统、服务器
MX2016014234A (es) * 2014-04-29 2017-02-14 Wix Com Ltd Sistema y metodo para la creacion y uso de diseños dinamicos de calidad alta visualmente diversos.
US20160140626A1 (en) * 2014-10-12 2016-05-19 Atul Agarwal Web page advertisement configuration and optimization with visual editor and automatic website and webpage analysis
US10200381B2 (en) 2015-08-05 2019-02-05 Mcafee, Llc Systems and methods for phishing and brand protection

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007310793A (ja) * 2006-05-22 2007-11-29 Matsushita Electric Ind Co Ltd 認証装置、認証方法および認証プログラム
KR20070067651A (ko) * 2007-05-09 2007-06-28 한재호 인터넷 사이트 패턴 분석을 통한 피싱방지 방법
JP2014102612A (ja) * 2012-11-19 2014-06-05 Mitsubishi Electric Corp 改竄検知装置及び改竄検知方法
JP2014197375A (ja) * 2013-03-04 2014-10-16 株式会社オプティム セキュリティサーバ、ユーザ端末、ウェブページ鑑定方法、セキュリティサーバ用プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021033421A (ja) * 2019-08-19 2021-03-01 Kddi株式会社 解析装置、検出装置、システム及びプログラム
JP7069090B2 (ja) 2019-08-19 2022-05-17 Kddi株式会社 解析装置、検出装置、システム及びプログラム
JP2022007278A (ja) * 2020-06-26 2022-01-13 Kddi株式会社 シグネチャ生成装置、検出装置、シグネチャ生成プログラム及び検出プログラム
JP7293170B2 (ja) 2020-06-26 2023-06-19 Kddi株式会社 シグネチャ生成装置、検出装置、シグネチャ生成プログラム及び検出プログラム

Also Published As

Publication number Publication date
US20190173894A1 (en) 2019-06-06
CN107852412A (zh) 2018-03-27
US20170041330A1 (en) 2017-02-09
US10200381B2 (en) 2019-02-05
US10778704B2 (en) 2020-09-15
WO2017023497A1 (en) 2017-02-09
JP6570663B2 (ja) 2019-09-04
CN107852412B (zh) 2020-09-29

Similar Documents

Publication Publication Date Title
JP6570663B2 (ja) フィッシングおよびブランド保護のためのシステムおよび方法
JP7018920B2 (ja) 機密情報処理方法、装置、及び、サーバ、ならびに、セキュリティ決定システム
JP7055206B2 (ja) アセット管理システム、方法、装置、および電子デバイス
EP3345114B1 (en) Disabling malicious browser extensions
CN109074452B (zh) 用于生成绊网文件的系统和方法
US10621349B2 (en) Detection of malware using feature hashing
EP3029593B1 (en) System and method of limiting the operation of trusted applications in the presence of suspicious programs
US20150012924A1 (en) Method and Device for Loading a Plug-In
US20160004855A1 (en) Login using two-dimensional code
ES2728292T3 (es) Servidor y método para proporcionar un acceso seguro a servicios basados en la red
CN111163095B (zh) 网络攻击分析方法、网络攻击分析装置、计算设备和介质
JP6859518B2 (ja) サーバへの攻撃を防ぐ方法及びデバイス
Gurulian et al. You can’t touch this: Consumer-centric android application repackaging detection
CN107103243B (zh) 漏洞的检测方法及装置
CN107180194B (zh) 基于视觉分析系统进行漏洞检测的方法及装置
US11003746B1 (en) Systems and methods for preventing electronic form data from being electronically transmitted to untrusted domains
US11736512B1 (en) Methods for automatically preventing data exfiltration and devices thereof
Kywe et al. Dissecting developer policy violating apps: characterization and detection
US11057453B2 (en) Locking of client session using event listener
CN105359453B (zh) 基于匿名服务器的用户设置保护
CN112906045A (zh) 一种手机盾访问记录存证和告警方法及计算机系统
US11810117B1 (en) Systems and methods for protecting customer payment data against malware attacks on inline frame payment forms
CN111222130B (zh) 页面响应方法、页面请求方法及装置
US11240267B1 (en) Identifying and blocking fraudulent websites
US20230403298A1 (en) Systems and methods for utilizing user profile data to protect against phishing attacks

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180226

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190305

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20190604

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190624

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190709

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190806

R150 Certificate of patent or registration of utility model

Ref document number: 6570663

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250