JP2010182293A - マン・イン・ザ・ブラウザ攻撃を検出するための方法およびシステム - Google Patents

マン・イン・ザ・ブラウザ攻撃を検出するための方法およびシステム Download PDF

Info

Publication number
JP2010182293A
JP2010182293A JP2009286419A JP2009286419A JP2010182293A JP 2010182293 A JP2010182293 A JP 2010182293A JP 2009286419 A JP2009286419 A JP 2009286419A JP 2009286419 A JP2009286419 A JP 2009286419A JP 2010182293 A JP2010182293 A JP 2010182293A
Authority
JP
Japan
Prior art keywords
website
user input
computer
user
transaction
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
JP2009286419A
Other languages
English (en)
Other versions
JP5588665B2 (ja
Inventor
William E Sobel
イー ソーベル ウィリアム
Sourabh Satish
サティッシュ ソウラブ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NortonLifeLock Inc
Original Assignee
Symantec Corp
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 Symantec Corp filed Critical Symantec Corp
Publication of JP2010182293A publication Critical patent/JP2010182293A/ja
Application granted granted Critical
Publication of JP5588665B2 publication Critical patent/JP5588665B2/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/1441Countermeasures against malicious traffic
    • H04L63/1466Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Abstract

【課題】マン・イン・ザ・ブラウザ攻撃を検出する。
【解決手段】ウェブサイトに関連するトランザクションフィンガープリントを識別するステップを有する。さらに、ウェブサイトに対するユーザー入力を追跡する追跡ステップを有する。このユーザー入力はウェブブラウザを経て受信されるものとする。さらに、前記ウェブサイトへの外部送出を傍受するステップを有する。さらに、前記トランザクションフィンガープリントに照らし合わせて、前記ユーザー入力が前記外部送出を生成したか否かを決定するステップを有する。
【選択図】図2

Description

消費者および企業は、取り扱いに慎重を要するトランザクションをインターネット経由で行うことが増加している。このようなトランザクションは、認証プロトコルにより保護され、取引が認証されることを確実にすることができる。例えば、ウェブサイトが顧客にパスワードの送信を要求し、認証セッションを確立することができる。認証セッションで行われるトランザクションを許可し、またそれ以外の全てのトランザクションを拒絶することができる。
攻撃者は、認証要求にも拘わらず、ウェブサイトで不正トランザクションを行うことができる。例えばマン・イン・ザ・ブラウザ攻撃では、ユーザーシステムにおけるマルウェアは、ユーザーがウェブサイト用の認証セッションを生成するのを待機する。つぎに、この認証セッション内でトランザクション要求を送出することができる。
ウェブサイトサーバーは、不正トランザクションを検出することを試みることができる。しかし、サーバーには、認証セッション内で行われた違法トランザクションは、認証セッション内で行われた正当トランザクションと全く同じに見える。
本発明は、マン・イン・ザ・ブラウザ攻撃を検出するための方法およびシステムを意図する。様々な実施例は、フィンガープリントモジュール、ユーザーインタラクションモジュール、およびウェブリクエストモジュールの作用について説明する。例えば、フィンガープリントモジュールは、ウェブサイトに関連したトランザクションフィンガープリントを識別することができる。トランザクションフィンガープリントとしては、ウェブサイトへの送出の期待回数、ウェブサイトへの送出の期待順序、または、ウェブサイトへの送出が正当であるか否かを決定するのに関連する任意な他の情報がある。ある実施例では、フィンガープリントモジュールは、セキュリティベンダーからトランザクションフィンガープリントを受け取ることができる。他の実施例では、ウェブサイトに対する過去のユーザー入力に基づいて、フィンガープリントモジュールがフィンガープリントを生成することができる。
ユーザーが、あるウェブサイトをウェブブラウザで閲覧するとき、ユーザーインタラクションモジュールは、ウェブブラウザへの入力イベントを監視することにより、ウェブサイトへのユーザー入力を追跡することができる。これら入力イベントは、マウス、キーワード、または、ウェブブラウザに用いられ得る任意な他の入力デバイスからのイベントとすることができる。その間、ウェブリクエストモジュールは、ウェブサイトに対して出力されるあらゆる外部送出を傍受することできる。このときウェブリクエストモジュールは、ユーザー入力を外部送出と比較することができる。ウェブリクエストモジュールは、トランザクションフィンガープリントに照らし合わせて、ユーザー入力が外部送出を生成したのかを決定することができる。
ウェブリクエストモジュールは、外部送出の個数を、ユーザー入力によって示された意図した送出の個数、およびトランザクションフィンガープリントによって示された予期された送出の個数と比較することにより、ユーザー入力が外部送出を生成したのか否かを決定することができる。ウェブリクエストモジュールは、ユーザー入力が外部送出を生成したことを決定するとき、その送出をウェブサイトへ中継する(伝える)ことができる。それ以外では、ウェブリクエストモジュールは、例えば、送出が意図されたものであるかを確認するようユーザーに促すなどの、セキュリティアクションを実施することができる。
上述の任意な実施例における特徴を、本明細書に記載する一般原理に基づいて、互いに組合せて用いることができる。本発明の実施例は、先行技術よりもさまざまな利点をもたらすことができる。例えば、本明細書に記載の方法は、ユーザーシステムがウェブサイトへの不正トランザクションを検出することを可能にする(ウェブサイトサーバーが検出できなくとも)。これら、および他の実施例、特徴、および利点は、添付図面および特許請求の範囲と併せて以下の発明を実施するための形態を読むことにより、より完全に理解されるであろう。
添付図面は多くの例示的な実施例を示し、これらは明細書の一部である。以下の説明とともに、これら図面は本発明の様々な原理を提示し、かつ説明する。
ある実施例による例示的なホストコンピュータのブロック図である。 マン・イン・ザ・ブラウザ攻撃を検出することをコンピュータで実現する方法のフローチャートである。 正当および不正の送出を処理することをコンピュータで実現する方法のフローチャートである。 本明細書に記載および/または示した実施例のうち1つ以上を実現できる例示的なコンピューティングシステムのブロック図である。 本明細書に記載および/または示した実施例のうち1つ以上を実現できる例示的なコンピューティングネットワークのブロック図である。
図面にわたり、同一の参照符号および説明は類似のものを示し、同一である必要はない。本明細書に記載した例示的実施例は、様々な変更形態および代替形態をとり得るが、特定の実施例を図面の例によって示し、ここに詳述する。しかし、本明細書に記載した例示的な実施例は、開示した特定形態に限定することを意図しない。むしろ、本発明は、添付した特許請求の範囲に属する変更形態、等価形態、および代替形態の全てをカバーする。
本発明の実施例は、マン・イン・ザ・ブラウザ攻撃を検出するための様々な方法およびシステムを提供する。上述したように、ウェブリクエストモジュールは、送出を様々な他のデータと比較することにより、ウェブサイトへの送出が正当であるか否かを決定することができる。添付図面は、このことを行うシステムおよび方法を示す。図1は、フィンガープリントモジュール、ユーザーインタラクションモジュール、ウェブリクエストモジュールを有するコンピューティングシステムを示す。図2および図3は、コンピューティングシステムにおけるこれらモジュールによって実施することができるスッテプを示す。
図1は、例示的なシステム100を示す。システム100は、任意の適切なコンピューティングデバイスとすることができる。例えば、システム100は、図4に示すコンピューティングデバイス410とする、および/または図5に示すネットワークデバイスのうちの何れかによって実現することができる。システム100は、多数のモジュール、例えばフィンガープリントモジュール104、ユーザーインタラクションモジュール106、およびウェブリクエストモジュール108を有するものとすることができる。これらモジュールは、本明細書に記載するステップの1つ以上を実行できる、任意のモジュール、アプリケーション、または、コンピュータ実行可能コードとすることができる。
フィンガープリントモジュール104は、ウェブサイトに関連したトランザクションフィンガープリントを識別することができる。トランザクションフィンガープリントは、セキュリティベンダーからのもの、またはフィンガープリントモジュール104が、ウェブサイトとの先行するユーザーインタラクションに基づいて生成したものとすることができる。例えば、ユーザーインタラクションモジュール106は、ウェブサイトへのユーザー入力を追跡し、フィンガープリントモジュール104は、その入力を分析し、また入力結果としての送出についての情報を記憶することができる。例えば、フィンガープリントモジュール104は、トランザクションに伴って生ずる送出の個数、どのようにしてその送出が通常のトランザクションフローに納まっているか(すなわち送出が発生する順序)、または送出の他の目立った特徴を記録することができる。
ある実施例では、トランザクションフィンガープリントは、ウェブサイトへの送出の予期された個数を含むことができる。例えば、あるウェブサイトは、トランザクションを完了させるために、3個のフォーム(形式)の送出を要求する場合がある。ある実施例では、トランザクションフィンガープリントは、ウェブサイトへの送出の予期された順序を含むことができる。例えば、ウェブサイトは、あるフォームを送出するよう提示してから、別のフォームを送出するよう提示する場合がある。トランザクションフィンガープリントは、さらに、トランザクションが正当であるか否かを決定するのに役立つ任意な他の適切な情報を含むことができる。
ユーザーインタラクションモジュール106は、ウェブサイトへのユーザー入力を追跡することができる。ユーザー入力はウェブブラウザから入力することができる。この入力は、マウス、キーボード、または任意な他の入力装置、例えばウェブブラウザで用いることができる入力装置428によって生成することができる。ある実施例では、ユーザー入力を追跡するステップは、ウェブブラウザでユーザーが生成する送出の個数を追跡するスタックを有するものとすることができる。言い換えると、ユーザーインタラクションモジュール106は、ユーザー入力に基づいて、ウェブサイトに対してどのくらい多くの個数のデータ送出をユーザーが意図したかを決定することができる。例えばユーザーは、キーボードを用いて第1フォームにデータを入力し、またこの第1フォームを送出するようマウスでボタンをクリックし、その後、キーボードを用いて第2フォームにデータを入力しまた第2フォームを送出するようマウスでボタンをクリックかもしれない。ユーザーインタラクションモジュール106は、これら入力行為に基づいて、ユーザーがウェブサイトに2つのフォームを送出することを意図したと決定することができる。
ある実施例では、ユーザー入力を追跡するステップは、ウェブブラウザでユーザーが生成する送出の順序を追跡するステップを有するものとすることができる。ある実施例では、ユーザーインタラクションモジュール106は、ユーザー入力に基づいて、何のフォームをユーザーがウェブサイトへ送出することを意図したのか、およびどの順番であるかを、決定することができる。例えば上述の実施例におけるのと同様に、ユーザーは、キーボードおよびマウスを用いて2つのフォーム(つまり送出)を送出することができる。この実施例では、ユーザーインタラクションモジュール106は、ユーザーが第1フォームをまず送出し、そして第2フォームを2番目に送出したことを記録することができる。ある実施例では、ユーザーインタラクションモジュール106は、この入力を後でトランザクションフィンガープリントとして使用するために、分析および/または記憶することができる。例えば、ユーザーはキーボードおよびマウスを用いて、ウェブサイト上でトランザクションを実施する過程で、第1フォームおよびその後の第2フォームの記入および送出を行う。ユーザーインタラクションモジュールは、将来のセッションにおけるトランザクションフィンガープリントとして用いるために、実施した送出の個数および/または順序を記憶することができる。
ウェブリクエストモジュール108は、ウェブサイトへの外部送出を傍受することできる。つぎに、実際の送出をユーザーインタラクションモジュールによって追跡したユーザー入力と比較することができる。ある実施例では、ウェブリクエストモジュール108は、実際の送出個数を、ユーザー入力により決定される意図した個数の送出と比較することができる。他の実施例では、ウェブリクエストモジュール108は、送出の実際の順序を、ユーザー入力により決定される送出の意図した順序と比較することができる。
ウェブリクエストモジュール108が送出データを比較した後、トランザクションフィンガープリントに照らし合わせて、ユーザー入力が外部送出を生成したのかを決定することができる。ある実施例では、ウェブリクエストモジュール108は、ウェブサイトへの予期した個数の送出が、ウェブブラウザでユーザーが生成したウェブサイトへの意図した送出個数、およびウェブサイトへの実際の送出個数の双方と一致するか否かを決定することができる。言い換えると、ウェブリクエストモジュール108は、フィンガープリントモジュール、ユーザーインタラクションモジュール、およびウェブリクエストモジュールの全てが、ウェブサイトへの送出個数について一致しているか否かを決定することができる。
例えば、フィンガープリントモジュール104は、2つの送出がウェブサイトにとって予期されたものであることを示し、ユーザーインタラクションモジュール106は、ユーザーがウェブサイトへの2つの送出を作り出すのを意図したことを示し、また、ウェブリクエストモジュール108は、4つの送出がウェブサイトへ実際に送信されたこと示すとする。この例では、ウェブリクエストモジュール108は、ユーザー入力が外部送出の全てを生成したのではないこと示すことができる。
ある実施例では、ウェブリクエストモジュール108は、ウェブサイトへの予期された送出順序が、ウェブサイトへの送出の実際の順序に一致するかを決定することにより、ユーザー入力が外部送出を生成したのかを決定することができる。例えば、ウェブリクエストモジュール108は、ユーザー入力および/またはトランザクションフィンガープリントに基づいて、第1送出の後に第2送出が続くことを予期する。ウェブリクエストモジュール108によって検出された実際の順序は、第2送出後に第1送出が続いたとする。その結果、ウェブリクエストモジュール108は、ユーザー入力が外部送出を生成したのではない、またはマルウェアが外部送出を不正に行ったことを決定することができる。
外部送出がユーザー入力によって生成されたものではないとウェブリクエストモジュール108が決定するとき、ウェブリクエストモジュール108はセキュリティアクションを実施することができる。ある実施例では、ウェブリクエスト108が、ユーザーに外部送出を中継するか否かを問い合わせることによりセキュリティアクションを実施することができる。他の実施例では、ウェブリクエストモジュール108は、ユーザーに問い合わせることなく中継しないよう送出を防止することによりセキュリティアクションを実施することができる。ある実施例では、ウェブリクエストモジュール108は、セキュリティベンダーに事件報告を送信することによりセキュリティアクションを実施することができる。この事件報告は、ウェブサイトの場所、外部送出の内容、ユーザーを識別する情報、および/または外部送出に付随する日時情報を含むことができる。
外部送出がユーザー入力によって生成されたものとウェブリクエストモジュール108が決定するとき、ウェブリクエストモジュール108はウェブサイトへの外部送出を中継することができる。言い換えると、ウェブリクエストモジュール108は、外部送出を傍受したのちに、それを保留しておくことができる。そしてユーザーが実際に送出を意図したことを決定したのちに、ウェブリクエストモジュール108はウェブサイトへの外部送出を中継することができる。
図2は、例えばフィンガープリントモジュール104などのフィンガープリントモジュール、例えばユーザーインタラクションモジュール106などのユーザーインタラクションモジュール、例えばウェブリクエストモジュール108などのウェブリクエストモジュールのうち1つ以上によって実施することができるステップを示す。フィンガープリントモジュールは、ウェブサイトに関連したトランザクションフィンガープリントを識別することができる(ステプ202)。トランザクションフィンガープリントは、ウェブサイトのトランザクションに関連した任意のデータとすることができる。例えば、トランザクションフィンガープリントは、ウェブサイトとのトランザクション中に、予期された送出の個数、タイプおよび/または内容を識別することができる。トランザクションフィンガープリントは、送出内のフォームまたは他のデータの個数、タイプおよび/または内容を識別することもできる。フィンガープリントモジュールは、トランザクションフィンガープリントのデータベースにアクセスすることによって、トランザクションフィンガープリントを識別することができる。トランザクションフィンガープリントのデータベースは、ユーザーがウェブサイトで行う1つ以上のトランザクションを監視することによって生成されたトランザクションフィンガープリントを含むことができる。他の実施例では、トランザクションフィンガープリントのデータベースを、ウェブサイトとの検査(テスト)トランザクションを監視することによって生成することもできる。
ある実施例では、トランザクションフィンガープリントのデータベースは、セキュリティソフトウェア会社のウェブサーバー上で遠隔的にアクセスすることができる。他の実施例では、トランザクションフィンガープリントのデータベースはローカルに記憶する、またはトランザクションのウェブサイトに関連するウェブサーバー上で遠隔的にアクセスすることができる(例えば、ウェブサイトを所有する会社がトランザクションフィンガープリントを提供する)。
ユーザーインタラクションモジュールは、ウェブブラウザによるウェブサイトへのユーザー入力を追跡することができる(ステップ204)。例えば、ユーザーインタラクションモジュールは、入力に関してウェブブラウザを監視し、またその後の送出の正当性を決定するのに関連する入力を記録することができる。入力は、キーボードからの入力、マウスからの入力、または任意な他の適切なデバイスからの入力とすることができる。
ある実施例では、トランザクションフィンガープリントは、ユーザー入力の追跡の後に識別される(例えば、ステップ202はステップ204の後に実施することができる)。フィンガープリントモジュールはユーザー入力を使用して、どのトランザクションフィンガープリントを使うかを決定することができる。フィンガープリントモジュールは、ユーザーがユーザーウェブサイトで行うトランザクションが何のタイプかを識別することができ、またこの後フィンガープリントモジュールはトランザクションのタイプに関連したトランザクションフィンガープリントを識別することができる。例えば、トランザクションがウェブサイトでの支払いトランザクションであるとき、フィンガープリントモジュールは、ウェブサイト用の支払いトランザクションフィンガープリントを識別することができる。トランザクションがユーザー設定の変更であるとき、フィンガープリントモジュールは、ウェブサイト用の設定変更フィンガープリントを識別することができる。トランザクションの他のさまざまな分類を使用して、トランザクションフィンガープリントを識別することができる。
ユーザーインタラクションモジュールがユーザー入力を追跡した後に、ウェブリクエストモニタはウェブサイトへの外部送出を傍受することできる(ステップ206)。ウェブサイトへの外部送出を傍受するために、ウェブリクエストモニタはウェブブラウザからの外部通信を保留することができる。例えば、ウェブリクエストモニタはウェブブラウザをフック(横取り)し、ウェブブラウザからウェブサイトへ送信されるすべてのフォーム送出を傍受することできる。あるいは、ウェブリクエストモニタは、全ての外部ネットワーク通信を傍受するユーザーシステム上の傍受プロキシを含み、ウェブ送出をフィルタ処理にかけることができる。
ウェブリクエストモニタは、トランザクションフィンガープリントと照らし合わせて、ユーザー入力が外部送出を生成したのかを決定することができる(ステップ208)。ウェブリクエストモニタは、トランザクションフィンガープリントを用いて外部送出を解釈し、外部送出がユーザー入力に一致するか否かを決定することができる。例えば、ウェブリクエストモニタはトランザクションフィンガープリントを用いて、外部送出がユーザー入力に対応するか否かを決定することができる(例えば、ユーザー入力に照らし合わせて予期する)。
図2に示したプロセスの例のように、ユーザーは、ウェブサイト(例えば、PAYPAL.com)へナビゲートするのにウェブブラウザを用いることができる。フィンガープリントモジュールは、ウェブブラウザをフック(横取り)し、訪問しようとしているウェブサイトが何かを監視し、またユーザーがPAYPAL.comを訪れているか否かを決定することができる。つぎに、フィンガープリントモジュールは、PAYPAL.comに関連するトランザクションフィンガープリントにアクセスすることができる。例えば、フィンガープリントモジュールは、例えば、ハードドライブなどのローカル記憶デバイス上のデータベースにおけるトランザクションフィンガープリントを調べる、またはリモートサーバーと通信し、PAYPAL.comに関連するトランザクションフィンガープリントを送信するようリモートサーバーに要求することができる。ある実施例では、多数のトランザクションフィンガープリントが、PAYPAL.comに関連する場合があり(例えば、異なるタイプのトランザクションに関する異なるトランザクションフィンガープリントがある)、またフィンガープリントモジュールは、トランザクションフィンガープリントを選択する前に、PAYPAL.comでユーザーが行っているトランザクションのタイプを識別することができる。ある実施例では、フィンガープリントモジュールは、PAYPAL.comでユーザーが行っているトランザクションのタイプに基づいて、トランザクションフィンガープリントを選択することができる。
ユーザーは、送金トランザクションを行うために記入するフォームを有するPAYPAL.comのウェブページへナビゲートすることができる。この例では、ユーザーインタラクションモジュールはウェブブラウザをフックし、ウェブブラウザへの入力イベントを監視することができる。ユーザーはキーボードを用いて銀行口座番号をフォームのフィールド(領域)にタイプ入力し、またユーザーインタラクションモジュールはその入力を記録することができる。この後、ユーザーは、マウスを用いて銀行口座番号を送出するボタンをクリックし、ユーザーインタラクションはこの入力を記録することができる。つぎに、ウェブブラウザは、異なるフォームを有する別のページを読み込むことができる。ユーザーはキーボードを用いてトランザクション送金額をこのフォームのフィールドに入力し、またユーザーインタラクションモジュールはその入力を記録することができる。この後、ユーザーはマウスを用いてトランザクション送金額を送出するボタンをクリックし、またユーザーインタラクションモジュールはこの入力を記録することができる。ユーザーがフォームを送出するボタンをクリックする度毎に、ウェブブラウザはPAYPAL.comのサーバーへの通信を送ることができる。ウェブリクエストモニタはこれら通信を傍受することができる。ある実施例では、ウェブリクエストモニタは、通信を保存し、これら通信が送出されるのを後の段階まで阻止することができる。
PAYPAL.comとのトランザクション用に識別されたトランザクションフィンガープリントは、トランザクション中に予期される送出の個数および順序を識別することができる。ウェブリクエストモニタは、PAYPAL.comへのユーザートランザクションが正当であるかを、トランザクションフィンガープリントと照らし合わせて決定することができる。この決定を行うために、ウェブリクエストモニタは、PAYPAL.comへ予期された順番で予期された個数の送出をユーザーのウェブブラウザが送出するかを決定することができる。
もし、ユーザーシステムにおけるマルウェアがPAYPAL.comへ追加のトランザクションフォームを送出しようと試みる場合、ウェブリクエストモニタはこの送出が不正であると決定することができ、すなわちこの理由として、ユーザーには(ユーザー入力に基づいて)PAYPAL.comへ2つのフォームだけ送出するように見えるのに、全部で3つのフォームが送出されるからである。代案として、ウェブリクエストモニタは、第3の送出がPAYPAL.comトランザクションの通常トランザクションフロー外から来たという理由で、その送出が不正であることを決定することができる。例えば、ウェブリクエストモニタは、マルウェアによって送信されたフォームが、他のフォームが最初に送出されない限りウェブブラウザから送信されるべきでないフォームであることを決定することができ、また、ウェブリクエストモニタは、ウェブブラウザが他のフォームを最初に送出しなかったことを決定することができる。
図3は、本明細書に記載した他のモジュールのうち1つ以上における機能を提供する、セキュリティモジュールによって実施することができるステップを示す。セキュリティモジュールは、ウェブサイトに関連したトランザクションフィンガープリントを識別することができる(ステップ302)。セキュリティモジュールは、ウェブサイトへのユーザー入力を追跡することができる(ステップ304)。ユーザー入力はウェブブラウザを経由して受信することができる。セキュリティモジュールは、さらに、ウェブブラウザからウェブサイトへ送信される外部送出を傍受することもできる(ステップ305)。セキュリティモジュールは、トランザクションフィンガープリントに照らし合わせて、ユーザー入力が外部送出を生成したのかを決定することができる(ステップ306)。もし、ユーザー入力が外部送出を生成した場合、ウェブリクエストモジュールはウェブサイトへの外部送出を中継することができる(ステップ308)。言い換えると、ウェブリクエストモジュールは、ウェブブラウザであるかのようにウェブサイトへの送出を送信することができる。例えば、ウェブリクエストモジュールは、ネットワークインタフェースカードにアクセスし、また傍受したウェブフォームデータをウェブサイトのサーバーに伝送することができる。
しかし、ユーザー入力が外部送出を生成しない場合、ウェブリクエストモジュールはセキュリティアクションを実施することができる(ステップ310)。例えば、ウェブリクエストモジュールは、送出が意図したものであることをユーザーに確認するよう促すことができる。ウェブリクエストモジュールは、試みた送出についての情報を、ユーザーが転送または終了のいずれかを選択するようクリックするボダンと共に、ダイアログボックス、または任意な他の適切なユーザーインタフェースオブジェクトを表示することによって、ユーザーに促すことができる。他の実施例では、ウェブリクエストモジュールは、潜在的マルウェア問題のレポートをセキュリティソフトウェアベンダーまたはセキュリティソフトウェアプログラムに送信することができる。
図4は、本明細書に記載および/または示した実施例の1つ以上を実現できる、例示的なコンピューティングシステム410のブロック図である。コンピューティングシステム410は、コンピュータ読取り可能命令を実行できる、マルチプロセッサのコンピューティング装置またはシステムを広義に表す。コンピューティングシステム410の例としては、以下のものに限定しないが、ワークステーション、ラップトップ、クライアント側端末、サーバー、分散コンピューティングシステム、携帯端末、または、任意な他のコンピューティングシステムまたは装置がある。多くの基本的構成では、コンピューティングシステム410は、少なくとも1個のプロセッサ414およびシステムメモリ416を備えることができる。
プロセッサ414は、データ処理し、または命令を機械言語翻訳して実行することができる任意なタイプまたは形式の処理ユニットを全般的に表す。ある実施例では、プロセッサ414は、ソフトウェアアプリケーションまたはモジュールから命令を受信することができる。これら命令は、本明細書に記載および/または示した例示的実施例の1つ以上における機能をプロセッサ414に実施させることができる。例えば、プロセッサ414は、本明細書に記載した、識別、追跡、傍受、比較、決定、中継、実施、送出、および/または生成というステップのうち1つ以上を実施する、および/または単独または他の素子と組合せて、実施する手段とすることができる。プロセッサ414は、さらに、本明細書に記載および/または示した、任意の他のステップ、方法、またはプロセスを実施する、および/または実施手段とすることができる。
システムメモリ416は、データおよび/またはコンピュータ読取り可能命令を記憶できる揮発性もしくは不揮発性の、任意のタイプもしくは形式の記憶装置または媒体を全般的に表す。システムメモリ416の例としては、以下のものに限定しないが、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、フラッシュメモリー、または任意な他の適切なメモリデバイスがある。必須要件ではないが、ある実施例では、コンピューティングシステム410は、揮発性メモリユニット(例えばシステムメモリ416)および不揮発性記憶デバイス(例えば以下に説明するような主記憶装置432など)の双方を備えることができる。
ある実施例では、代表的なコンピューティングシステム410は、プロセッサ414およびシステムメモリ416の他に、1つ以上のコンポーネントまたは素子を備えることができる。例えば、図4に示すように、コンピューティングシステム410は、メモリコントローラ418、入出力(I/O)コントローラ420、および、通信インタフェース422を備え、これらは通信インフラ(基盤)412を介して相互接続することができる。通信インフラ412は、コンピューティング装置における1つ以上のコンポーネント間での通信を容易化することができる、任意なタイプまたは形式のインフラ(基盤)を全般的に表す。通信インフラ412の例としては、以下のものに限定しないが、通信バス(例えばISA,PCI,PCIeまたは同様のバスなど)およびネットワークがある。
メモリコントローラ418は、コンピューティングシステム410のメモリもしくはデータを取り扱い、または1つ以上のコンポーネント間における通信を制御することができる、任意のタイプまたは形式のデバイスを全般的に表す。例えば、ある実施例では、メモリコントローラ418は、通信インフラ412を介して、プロセッサ414、システムメモリ416、およびI/Oコントローラ420間の通信を制御することができる。ある実施例では、メモリコントローラ418は、本明細書に記載および/または示したステップまたは特徴、例えば識別、追跡、傍受、比較、決定、中継、実施、送出、および/または生成のうち1つ以上を実施する、および/または単独または他の素子と組合せて、実施する手段とすることができる。
I/Oコントローラ420は、コンピューティング装置の入出力機能を調和および/または制御できる、任意のタイプまたは形式のモジュールを全般的に表す。例えば、ある実施例では、I/Oコントローラ420は、コンピューティングシステム410の1つ以上の素子、例えばプロセッサ414、システムメモリ416、通信インタフェース422、ディスプレイアダプタ426、入力インタフェース430、および記憶インタフェース434間におけるデータの転送を制御または容易化することができる。I/Oコントローラ420は、本明細書に記載した、例えば識別、追跡、傍受、比較、決定、中継、実施、送出、および/または生成というステップを実行する、および/または実施手段とすることができる。I/Oコントローラ420は、本明細書に説明された他のステップおよび特徴を実施する、および/または実施手段とすることができる。
通信インタフェース422は、例示的なコンピューティング装置410と1つ以上の追加デバイスとの間における通信を容易化できる、任意のタイプもしくは形式の通信デバイスまたはアダプタを広義に表す。例えば、ある実施例では、通信インタフェース422は、コンピューティング装置410と追加のコンピューティングシステムを備えるプライベートまたは公共のネットワークとの間における通信を容易化することができる。通信インタフェース422の例としては、以下のものに限定しないが、有線ネットワークインタフェース(例えばネットワークインタフェースカード)、無線ネットワークインタフェース(例えば、無線ネットワークインタフェースカード)、モデムおよび、任意な他の適切なインタフェースがある。少なくとも1つの実施例では、通信インタフェース422は、例えばインターネットなどのネットワークに直接リンクを介してリモートサーバーに直接接続を行うことができる。通信インタフェース422は、さらに、例えば、ローカルエリアネットワーク(例えばイーサネット(登録商標)またはIEEE802.11無線ネットワーク)、パーソナルエリアネットワーク(例えばBLUETOOTH(登録商標)またはIEEE規格802.15−2002ネットワーク)、電話網、携帯端末接続、衛星データ接続、または、他のあらゆる接続を経由した接続を間接的に行うこともできる。
ある実施例では、通信インタフェース422は、さらに、外部バスまたは通信チャネルを介して、コンピューティングシステム410と1つ以上の追加ネットワークまたは記憶装置との間における通信を容易化するよう構成したホストアダプタを表すこともできる。ホストアダプタの例としては、以下のものに限定しないが、SCSIホストアダプタ、USBホストアダプタ、IEEE1394ホストアダプタ、SATAおよびeSATAホストアダプタ、ATAおよびPATAホストアダプタ、ファイバーチャネルインタフェースアダプタ、イーサネット(登録商標)アダプタ、等がある。通信インタフェース422は、コンピューティング装置410が分散またはリモートコンピューティングに従事することを可能にする。例えば、通信インタフェース422は、リモートデバイスから命令を受信する、またはリモートデバイスに実行のための命令を送信することができる。ある実施例では、通信インタフェース422は、本明細書に開示した識別、追跡、傍受、比較、決定、中継、実施、送出、および/または生成というステップのうち少なくとも1つを実施する、および/または単独または他の素子と組合せて実施する手段とすることができる。通信インタフェース422は、本明細書で説明した他のステップおよび特徴を実施するのに用いる、および/または実実施手段とすることができる。
図4に示すように、コンピューティング装置410は、ディスプレイアダプタ426を介して通信インフラ412に結合する少なくとも1つのディスプレイ装置424を備えることもできる。ディスプレイデバイス424は、ディスプレイアダプタ426によって転送される視覚的に情報表示できる、任意のタイプまたは形式のデバイスを全般的に表す。同様に、ディスプレイアダプタ426は、通信インフラ412(または従来既知のようなフレームバッファ)からの、グラフィックス、テキスト、および他のデータを、ディスプレイデバイス424上に表示するために転送するよう構成した、任意のタイプまたは形式のデバイスを全般的に表す。
図4に示すように、例示的なコンピューティングシステム410は、さらに、入力インタフェース430を介して通信インフラ412に結合した少なくとも1つの入力装置428を備えることもできる。入力装置428は、例示的なコンピューティングシステム410に、コンピュータ生成または人間が行う入力を供給できる、任意のタイプまたは形式の入力デバイスを全般的に表す。入力装置428の例としては、以下のものに限定しないが、キーボード、ポインティングデバイス、音声認識デバイス、または、任意な他の入力デバイスがある。少なくとも1つの実施例では、入力装置428は、本明細書に記載した識別、追跡、傍受、比較、決定、中継、実施、送出、および/または生成というステップのうち1つ以上を実施する、および/または単独または他の素子と組合せて実施する手段とすることができる。入力装置428は、本明細書に説明した他のステップおよび特徴を、実施するのに使用する、または実施手段とすることができる。
図4に示すように、例示的なコンピューティングシステム410は、さらに、記憶インタフェース434を介して通信インフラ412に結合した、主記憶装置432およびバックアップ記憶装置433を備えることもできる。記憶装置432,433は、データおよび/または他のコンピュータ読取り可能命令を記憶できる、任意のタイプもしくは形式の記憶デバイスまたは媒体を全般的に表す。例えば、記憶装置432、433は、磁気ディスクドライブ(例えば、いわゆるハードドライブ)、フロッピー(登録商標)ディスクドライブ、磁気テープドライブ、光学ディスクドライブ、フラッシュドライブ、等とすることができる。記憶インタフェース434は、記憶装置432,433とコンピューティングシステム410の他のコンポーネントとの間でデータ転送する、任意のタイプもしくは形式のインタフェースまたはデバイスを表す。
ある実施例では、記憶装置432,433は、コンピュータソフトウェア、データ、または、コンピュータ読取り可能情報を記憶するよう構成した取り外し可能記憶ユニットから読み出しおよび/または書き込みするよう構成することができる。適切な取り外し可能記憶ユニットとしては、以下のものに限定しないが、フロッピー(登録商標)ディスク、磁気テープ、光学ディスク、フラッシュメモリデバイス、等がある。記憶装置432,433は、コンピュータソフトウェア、データ、または、コンピュータ読取り可能命令をコンピューティングシステム410にロードすることを可能にする、同様の構造またはデバイスとすることもできる。例えば、記憶装置432,433は、ソフトウェア、データ、または、他のコンピュータ読取り可能情報を読み出しまた書き込むよう構成することもできる。記憶装置432,433は、コンピューティングシステム410の一部とする、または他のインタフェースシステムを経由してアクセスする別個のデバイスとすることもできる。
例えば、ストレージデバイス432,433は、本明細書に記載した識別、追跡、傍受、比較、判断、中継、実施、送出、および/または生成というステップのうち1つ以上を実施するのに使用する、および/または単独または他の素子と組合せて、実施する手段とすることもできる。記憶装置432,433は、本明細書に記載した他のステップおよび特徴を実施するのに使用する、および/または実施する手段とすることができる。
他の多くのデバイスまたはサブシステムを、コンピューティングシステム410に接続することができる。逆に、図4に示したコンポーネントおよびデバイスの全てを、本明細書に記載および/または示した実施例を実現するのに設ける必要がない。上述したデバイスおよびサブシステムは、図4に示したものとは異なる方法で相互接続することもできる。コンピューティングシステム410は、任意の個数のソフトウェア、ファームウェア、および/またはハードウェアの構成を採用することができる。例えば、本明細書に開示した例示的な実施例の1つ以上を、コンピュータ読取り可能媒体上のコンピュータプログラム(コンピュータソフトウェア、ソフトウェアアプリケーション、コンピュータ読取り可能命令、または、コンピュータ制御ロジックとも称される)としてエンコードすることもできる。用語「コンピュータ読取り可能媒体」は、コンピュータ読取り可能命令を格納または担持することができる、任意のタイプもしくは形式のデバイス、キャリヤ、または媒体に全般的に言及する。コンピュータ読取り可能媒体の例としては、以下のものに限定しないが、例えば搬送波などの伝送媒体、例えば磁気記憶媒体(例えば、ハードディスクドライブおよびフロッピー(登録商標)ディスク)などの物理媒体、光学記憶媒体(例えば、CD−ROMまたはDVD−ROM)、電子記憶媒体(例えば、ソリッドステートドライブおよびフラッシュメディア)、および他の配布システムがある。
コンピュータプログラムを含むコンピュータ読取り可能媒体は、コンピューティングシステム410にロードすることができる。このとき、コンピュータ読取り可能媒体上に記憶されたコンピュータプログラムの一部または全部は、システムメモリ416および/または記憶装置432,433のさまざまな部分に記憶される。プロセッサ414によって実行されたとき、コンピューティングシステム410にロードしたコンピュータプログラムは、プロセッサ414に対して、本明細書に記載および/または示した例示的な実施例の1つ以上における機能を実施させるおよび/または実施手段にすることができる。付加的または代替的に、本明細書に記載および/または示した例示的な実施例の1つ以上における機能を、ファームウェアおよび/またはハードウェアで実現することができる。例えば、コンピューティングシステム410は、本明細書に記載した例示的な実施例の1つ以上を実現するように構成した特定用途向け集積回路(ASIC)として構成することができる。
図5は、クライアントシステム510,520,530およびサーバー540,545をネットワーク550に結合することができる、例示的なネットワークアーキテクチャ500のブロック図である。クライアントシステム510,520,530は、例えば図4の例示的なコンピューティングシステム410などの、任意なタイプまたは形式のコンピューティング装置を全般的に表す。同様に、サーバー540,545は、例えばアプリケーションサーバーまたはデータベースサーバーを表し、さまざまなデータベースサービスを提供するおよび/または所定のソフトウェアを動作させる。ネットワーク550は、任意の電気通信またはコンピュータネットワークを全般的に表し、例えば、イントラネット、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN),パーソナルエリアネットワーク(PAN)、またはインターネットがある。
図5に示すように、1つ以上記憶装置560(1)〜(N)を、サーバー540に直接取り付けることができる。同様に、1つ以上記憶装置570(1)〜(N)を、サーバー545に直接取り付けることができる。記憶装置560(1)〜(N)および記憶装置570(1)〜(N)は、データおよび/またはコンピュータ読取り可能命令を記憶できる、任意なタイプもしくは形式の記憶装置または媒体を全般的に表す。ある実施例では、記憶装置560(1)〜(N)および記憶装置570(1)〜(N)が、例えばNFS,SMBまたはCIFSなどの様々なプロトコルを用いてサーバー540,545と通信するよう構成したネットワーク・アタッチド・ストレージ(NAS)デバイスを表すことができる。
サーバー540,545を、ストレージ・エリア・ネットワーク(SAN)ファブリック580に接続することができる。SANファブリックは、複数の記憶装置間の通信を容易化できる、任意なタイプもしくは形式のコンピュータネットワークまたはアーキテクチャを全般的に表す。SANファブリックは、サーバー540,545および複数の記憶装置590(1)〜(N)、および/またはインテリジェントストレージアレイ595間の通信を容易化することができる。SANファブリック580は、ネットワーク550およびサーバー540,545を介して、クライアントシステム510,520,530および複数の記憶装置590(1)〜(N)、および/またはインテリジェントストレージアレイ595間の通信を容易化し、クライアントシステム510,520,530にデバイス590(1)〜(N)およびアレイ595を局所的に取り付けたように見せかけるようにすることができる。記憶装置560(1)〜(N)および記憶装置570(1)〜(N)と同様に、記憶装置590(1)〜(N)およびインテリジェントストレージアレイ595は、データおよび/またはコンピュータ読取り可能命令を記憶できる、任意なタイプもしくは形式の記憶装置または媒体を全般的に表す。
ある実施例では、図4の例示的なコンピューティングシステム510につき説明すると、図4の通信インタフェース422などの通信インタフェースを使用して、各クライアントシステム510,520,530とネットワーク540との間を接続することができる。クライアントシステム510,520,530は、例えば、ウェブブラウザまたは他のクライアントソフトウェアを用いて、サーバー540,545上の情報にアクセスすることができる。このようなソフトウェアは、クライアントシステム510,520,530が、サーバー540、サーバー545、記憶装置560(1)〜(N)、記憶装置570(1)〜(N)、記憶装置(1)〜(N)、またはインテリジェントストレージアレイ595が供するデータにアクセスすることを可能にする。図5は、例えばインターネットなどのネットワークをデータ交換に利用することを示すが、本明細書に記載および/または示した実施例は、インターネットまたは任意な特定のネットワーク環境に限定するものではない。
少なくとも1つの実施例では、本明細書に記載した例示的な実施例の1つ以上の一部または全部はプログラムとしてコード化し、またサーバー540、サーバー545、記憶装置560(1)〜(N)、記憶装置570(1)〜(N)、記憶装置(1)〜(N)、インテリジェントストレージアレイ595、またはこれらの組合せによって、読み込まれかつ実行することができる。本明細書に記載した例示的な実施例の1つ以上の一部または全部はプログラムとしてコード化し、サーバー540に記憶し、サーバー545によって実行し、ネットワークを経由してクライアントシステム510,520,530に分配することができる。したがって、ネットワークアーキテクチャ500は、本明細書に記載した、識別、追跡、傍受、比較、決定、中継、実施、送出、および/または生成というステップのうち1つ以上を実施する、および/または単独もしくは他の素子と組合せて実施する手段とすることができる。ネットワークアーキテクチャ500は、本明細書に記載した他のステップおよび特徴を実施するよう使用する、および/または実施手段とすることもできる。
コンピューティングシステム410および/またはネットワークアーキテクチャ500における1つ以上のコンポーネントは、本明細書で説明および/または示した例示的方法における1つ以上のステップを実施する、および/または単独または他の素子と組合せて実施する実施手段とすることができる。例えば、コンピュータシステム(例えば、コンピューティングシステム410および/またはネットワークアーキテクチャ500における1つ以上のコンポーネントは、マン・イン・ザ・ブラウザ攻撃を検出することをコンピュータで実現する方法を実施する。コンピュータシステムは、ウェブサイトに関連するトランザクションフィンガープリントを識別する。コンピュータシステムは、つぎにウェブサイトに対するユーザー入力を追跡する。ユーザー入力はウェブブラウザを経て受信される。コンピュータシステムは、さらに、ウェブサイトへの外部送出を傍受する。コンピュータシステムは、つづいて、ユーザー入力を外部送出と比較し、トランザクションフィンガープリントと照らし合わせて、ユーザー入力が外部送出を生成したかを決定する。ある実施例において、外部送出がユーザー入力によって生成したものであると決定された場合、コンピュータシステムは外部送出をウェブサイトに中継する。
少なくとも1つの実施例において、ウェブブラウザでウェブサイトに対するユーザー入力を追跡するステップは、ユーザーがウェブブラウザで生成する意図した回数の送出を追跡するステップを有する。ある実施例において、トランザクションフィンガープリントは、ウェブサイトに対する予期した回数の送出を含む。ある他の実施例では、コンピュータシステムは、ウェブサイトに対する予期した送出回数が、ユーザーによるウェブブラウザで生成したウェブサイトに対する意図した送出回数およびウェブサイトに対する実際の送出回数の双方に一致するか否かを決定する。
いくつかの実施例においては、トランザクションフィンガープリントは、ウェブサイトに対する予期した送出順序を含む。他のある実施例においては、コンピュータシステムは、ウェブサイトに対する予期した送出順序が実際の送出順序に一致するか否かを決定することができる。いくつかの実施例においては、トランザクションフィンガープリントはセキュリティベンダーによって供給される。いくつかの実施例においては、トランザクションフィンガープリントはウェブサイトに対するユーザー入力に基づいて生成することができる。
いくつかの実施例において規定したように、コンピュータシステムは、外部送出がユーザー入力によって生成されたものでないと決定された場合、セキュリティアクションを実施する。他のある実施例において、コンピュータはウェブサーバーにその外部送出を中継するか否かをユーザーに問い合わせることによってセキュリティアクションを実施する。ある実施例において、コンピュータは、セキュリティベンダーに事件報告を送信することによってセキュリティアクションを実施する。この事件報告は、ウェブサイトの場所、外部送出の内容、ユーザーを識別する情報、および/または外部送出に関連する日時情報を含むことができる。いくつかの実施例においては、ユーザー入力は、マウスからの入力および/またはキーボードからの入力とすることができる。
上述の開示は特定のブロック図、フローチャートおよび例を使って様々な実施形態を示したが、各ブロック図のコンポーネント、フローチャートステップ、操作および/または本明細書に記載および/または説明したコンポーネントは、広範囲のハードウェア、ソフトウェアまたはファームウェア(またはそれらの組合せ)を使って個別および/または包括的に実現することができる。さらに、他のコンポーネントに含まれるコンポーネントの開示はどのようなものであっても、同じ機能を達成するためにたくさんの他のアーキテクチャを実現することができるので、本来は例示的なものと考えるものとする。
本明細書に記載および/または説明するステップのプロセスパラメータおよびシーケンスは、ほんの一例として与えられたものであり、所望通りに変更が可能である。例えば、本明細書に記載および/または説明するステップは特定の順番に示され、論じられているが、これらのステップは、必ずしも説明または論じられている順番で実行する必要はない。本明細書に記載および/または説明する様々な例示的な方法では、本明細書に記載および/または説明する一つ以上のステップを除外してもよいし、またはこれらの開示されたものにステップを追加してもよい。
さらに、様々な実施形態を完全に機能的なコンピューティングシステムとして本明細書に記載および/または説明してきたが、分散を行うために実際に使用される特定の種類のコンピュータ読取り可能な媒体に関わらず、一つ以上のこれらの実施例は、様々な形態のプログラム製品として流通させることもできる。本明細書に開示する実施形態はまた、特定のタスクを実行するソフトウェアモジュールを使って実現することもできる。これらのソフトウェアモジュールは、コンピュータ読取り可能な記憶媒体またはコンピューティングシステムに記憶することのできるスクリプト、バッチまたはその他の実行可能ファイルを含むことができる。いくつかの実施形態では、これらのソフトウェアモジュールは、本明細書に開示する一つ以上の実施例を実行するコンピューティングシステムとして構成することができる。
上述の説明は、当業者が本明細書に記載する実施例の様々な態様を最大限に利用できるように行った。この例示的説明は網羅的、または開示した正確な形態に限定することを意図したものではない。本発明の要旨または範囲から逸脱することなく、多くの変更および改変が可能である。本明細書に記載する実施形態は、あらゆる面において例示的であり、限定するものではないと考えるべきである。添付の特許請求の範囲およびそれの等価物を参照して、本発明の範囲を決定すべきである。
別段に記載のない限り、明細書または請求項において、各要素は複数存在し得る。さらに、簡単のために、明細書および請求項で使用される「〜を含む」および「〜を有する」という文言は、同じ意味を持つ文言である「〜を備える」と置き替えることができる。

Claims (20)

  1. マン・イン・ザ・ブラウザ攻撃を検出することをコンピュータで実現する方法において、
    ウェブサイトに関連するトランザクションフィンガープリントを識別するステップと、
    前記ウェブサイトに対するユーザー入力を追跡する追跡ステップであって、このユーザー入力はウェブブラウザを経て受信されるものとした、該追跡ステップと、
    前記ウェブサイトへの外部送出を傍受するステップと、
    前記トランザクションフィンガープリントに照らし合わせて、前記ユーザー入力が前記外部送出を生成したか否かを決定するステップと
    を有するコンピュータ実現方法。
  2. 請求項1記載のコンピュータ実現方法において、さらに、
    前記ユーザー入力を前記外部送出と比較するステップと、
    前記外部送出が前記ユーザー入力によって生成されたものであったかを決定する場合、前記外部送出を前記ウェブサイトに中継するステップと
    を有する、方法。
  3. 請求項1記載のコンピュータ実現方法において、前記ウェブサイトに対するユーザー入力を追跡する追跡ステップは、ユーザーが前記ウェブブラウザで生成した意図した送出回数を追跡するステップを有する、方法。
  4. 請求項3記載のコンピュータ実現方法において、前記トランザクションフィンガープリントは、前記ウェブサイトに対する予期した送出回数を含む、方法。
  5. 請求項4記載のコンピュータ実現方法において、前記ユーザー入力が前記外部送出を生成したか否かを決定するステップは、
    前記ウェブサイトに対する前記予期した送出回数が、前記ユーザーによる前記ウェブブラウザで生成した前記意図した送出回数および前記ウェブサイトへの実際の送出回数の双方に一致するか否かを決定するステップ
    を有する、方法。
  6. 請求項1記載のコンピュータ実現方法において、前記トランザクションフィンガープリントは、前記ウェブサイトへの前記予期した送出順序を含む、方法。
  7. 請求項6記載のコンピュータ実現方法において、前記ユーザー入力が前記外部送出を生成したか否かを決定するステップは、
    前記ウェブサイトへの前記予期した送出順序が実際の送出順序に一致するかを決定するステップ
    を有する、方法。
  8. 請求項1記載のコンピュータ実現方法において、前記トランザクションフィンガープリントは、セキュリティベンダーによって供給するものとした、方法。
  9. 請求項1記載のコンピュータ実現方法において、さらに、
    前記外部送出が前記ユーザー入力によって生成されなかったと決定した場合、セキュリティアクションを実施する、方法。
  10. 請求項9記載のコンピュータ実現方法において、前記セキュリティアクションは、
    前記外部送出を前記ウェブサイトに中継するか否かを問い合わせるステップを有する、方法。
  11. 請求項9記載のコンピュータ実現方法において、前記セキュリティアクションは、
    事件報告をセキュリティベンダーに送信するステップを有し、前記事件報告は、
    ウェブサイトの場所、
    外部送出の内容、
    ユーザーを識別する情報、
    外部送出に関連する日時情報
    のうち少なくとも1つを含むものとした、方法。
  12. 請求項1記載のコンピュータ実現方法において、さらに、
    前記ウェブサイトに対する前記ユーザー入力に基づいてトランザクションフィンガープリントを生成するステップ
    を有する、方法。
  13. 請求項1記載のコンピュータ実現方法において、前記ユーザー入力は、前記ウェブサイトにおけるフォームに対する入力を含む、方法。
  14. マン・イン・ザ・ブラウザ攻撃を検出および傍受するシステムにおいて、
    ウェブサイトに関連するトランザクションフィンガープリントを識別するようプログラムした、フィンガープリントモジュールと、
    ウェブブラウザで前記ウェブサイトに対するユーザー入力を追跡するようプログラムしたユーザーインタラクションモジュールと、
    前記フィンガープリントモジュールおよび前記ユーザーインタラクションモジュールと通信するウェブリクエストモジュールであって、以下のことを行う、すなわち、
    前記ウェブサイトへの外部送出を傍受する、
    トランザクションフィンガープリントに照らし合わせて、前記ユーザー入力が前記外部送出を生成したか否かを決定する
    ようプログラムした、該ウェブリクエストモジュールと、
    を備えた、システム。
  15. 請求項14記載のシステムにおいて、前記ウェブリクエストモジュールは、前記外部送出が前記ユーザー入力によって生成されたと決定した場合、前記外部送出を前記ウェブサイトに中継するようプログラムした、システム。
  16. 請求項14記載のシステムにおいて、前記ユーザーインタラクションモジュールは、前記ユーザーにより前記ウェブブラウザで生成する前記ウェブサイトに対する意図した送出回数を追跡することによって、前記ウェブサイトに対する前記ユーザー入力を追跡するようプログラムした、システム。
  17. 請求項16記載のシステムにおいて、前記トランザクションフィンガープリントは、前記ウェブサイトに対する予期した送出回数を含む、システム。
  18. 請求項17記載のシステムにおいて、前記ウェブリクエストモジュールは、前記ウェブサイトに対する前記予期した送出回数が、前記ユーザーによる前記ウェブブラウザで生成した前記意図した送出回数および前記ウェブサイトへの実際の送出回数の双方に一致するか否かを決定することによって、前記ユーザー入力が前記外部送出を生成したか否かを決定するものとした、システム。
  19. 請求項14記載のシステムにおいて、前記トランザクションフィンガープリントは、セキュリティベンダーによって供給するものとした、システム。
  20. コンピュータ読取り可能媒体であって、コンピューティング装置が実行するとき、このコンピューティング装置に対して、以下のことを行わせる、すなわち、
    ウェブサイトに関連するトランザクションフィンガープリントを識別する、
    ウェブブラウザでの前記ウェブサイトに対するユーザー入力を追跡する、
    前記ウェブサイトへの外部送出を傍受する、
    前記トランザクションフィンガープリントに照らし合わせて、前記ユーザー入力が前記外部送出を生成したか否かを決定する
    ことを行わせる、コンピュータ読取り可能媒体。
JP2009286419A 2008-12-18 2009-12-17 マン・イン・ザ・ブラウザ攻撃を検出するための方法およびシステム Active JP5588665B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/338,456 2008-12-18
US12/338,456 US8225401B2 (en) 2008-12-18 2008-12-18 Methods and systems for detecting man-in-the-browser attacks

Publications (2)

Publication Number Publication Date
JP2010182293A true JP2010182293A (ja) 2010-08-19
JP5588665B2 JP5588665B2 (ja) 2014-09-10

Family

ID=41859189

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009286419A Active JP5588665B2 (ja) 2008-12-18 2009-12-17 マン・イン・ザ・ブラウザ攻撃を検出するための方法およびシステム

Country Status (4)

Country Link
US (1) US8225401B2 (ja)
EP (1) EP2199940B1 (ja)
JP (1) JP5588665B2 (ja)
CN (1) CN101764819B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10469531B2 (en) 2014-04-25 2019-11-05 SecureBrain Corporation & Hitachi Systems, Ltd. Fraud detection network system and fraud detection method
US11238459B2 (en) 2020-01-07 2022-02-01 Bank Of America Corporation Intelligent systems for identifying transactions associated with an institution impacted by an event
US11443320B2 (en) 2020-01-07 2022-09-13 Bank Of America Corporation Intelligent systems for identifying transactions associated with an institution impacted by an event using a dashboard

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8769690B2 (en) * 2006-03-24 2014-07-01 AVG Netherlands B.V. Protection from malicious web content
EP2406717A4 (en) * 2009-03-13 2012-12-26 Univ Rutgers SYSTEMS AND METHODS FOR DETECTING DAMAGE PROGRAMS
RU2446459C1 (ru) * 2010-07-23 2012-03-27 Закрытое акционерное общество "Лаборатория Касперского" Система и способ проверки веб-ресурсов на наличие вредоносных компонент
US20120240224A1 (en) * 2010-09-14 2012-09-20 Georgia Tech Research Corporation Security systems and methods for distinguishing user-intended traffic from malicious traffic
AU2011200413B1 (en) 2011-02-01 2011-09-15 Symbiotic Technologies Pty Ltd Methods and Systems to Detect Attacks on Internet Transactions
CA2849162C (en) 2011-09-21 2016-12-20 David K. Ford Methods and apparatus for validating communications in an open architecture system
US9122870B2 (en) 2011-09-21 2015-09-01 SunStone Information Defense Inc. Methods and apparatus for validating communications in an open architecture system
AU2012101560B4 (en) * 2012-06-27 2013-05-23 Netauthority, Inc Transaction verification
WO2014025334A1 (en) 2012-08-06 2014-02-13 Empire Technology Development Llc Defending against browser attacks
JP5727991B2 (ja) * 2012-11-12 2015-06-03 株式会社オプティム ユーザ端末、不正サイト情報管理サーバ、不正リクエスト遮断方法、及び不正リクエスト遮断プログラム
US9584543B2 (en) * 2013-03-05 2017-02-28 White Ops, Inc. Method and system for web integrity validator
US8869281B2 (en) 2013-03-15 2014-10-21 Shape Security, Inc. Protecting against the introduction of alien content
US9338143B2 (en) 2013-03-15 2016-05-10 Shape Security, Inc. Stateless web content anti-automation
US9225737B2 (en) 2013-03-15 2015-12-29 Shape Security, Inc. Detecting the introduction of alien content
US20140283038A1 (en) 2013-03-15 2014-09-18 Shape Security Inc. Safe Intelligent Content Modification
US9270647B2 (en) 2013-12-06 2016-02-23 Shape Security, Inc. Client/server security by an intermediary rendering modified in-memory objects
US8954583B1 (en) 2014-01-20 2015-02-10 Shape Security, Inc. Intercepting and supervising calls to transformed operations and objects
US9027142B1 (en) 2014-01-21 2015-05-05 Shape Security, Inc. Dynamic field re-rendering
US9225729B1 (en) 2014-01-21 2015-12-29 Shape Security, Inc. Blind hash compression
US8893294B1 (en) 2014-01-21 2014-11-18 Shape Security, Inc. Flexible caching
US9544329B2 (en) 2014-03-18 2017-01-10 Shape Security, Inc. Client/server security by an intermediary executing instructions received from a server and rendering client application instructions
RU2571721C2 (ru) * 2014-03-20 2015-12-20 Закрытое акционерное общество "Лаборатория Касперского" Система и способ обнаружения мошеннических онлайн-транзакций
US9858440B1 (en) 2014-05-23 2018-01-02 Shape Security, Inc. Encoding of sensitive data
US9411958B2 (en) 2014-05-23 2016-08-09 Shape Security, Inc. Polymorphic treatment of data entered at clients
US9083739B1 (en) 2014-05-29 2015-07-14 Shape Security, Inc. Client/server authentication using dynamic credentials
US9210171B1 (en) 2014-05-29 2015-12-08 Shape Security, Inc. Selectively protecting valid links to pages of a web site
US9258274B2 (en) * 2014-07-09 2016-02-09 Shape Security, Inc. Using individualized APIs to block automated attacks on native apps and/or purposely exposed APIs
US10050935B2 (en) * 2014-07-09 2018-08-14 Shape Security, Inc. Using individualized APIs to block automated attacks on native apps and/or purposely exposed APIs with forced user interaction
US9003511B1 (en) 2014-07-22 2015-04-07 Shape Security, Inc. Polymorphic security policy action
US9729506B2 (en) 2014-08-22 2017-08-08 Shape Security, Inc. Application programming interface wall
US9438625B1 (en) 2014-09-09 2016-09-06 Shape Security, Inc. Mitigating scripted attacks using dynamic polymorphism
US10402557B2 (en) 2014-09-10 2019-09-03 Uniloc 2017 Llc Verification that an authenticated user is in physical possession of a client device
US10298599B1 (en) 2014-09-19 2019-05-21 Shape Security, Inc. Systems for detecting a headless browser executing on a client computer
US9954893B1 (en) 2014-09-23 2018-04-24 Shape Security, Inc. Techniques for combating man-in-the-browser attacks
US9800602B2 (en) 2014-09-30 2017-10-24 Shape Security, Inc. Automated hardening of web page content
CN107209831B (zh) * 2014-11-13 2021-02-05 克丽夫有限公司 用于识别网络攻击的系统和方法
EP3057027B1 (en) * 2015-02-16 2018-06-13 Nxp B.V. Method for secure data reading, computer program product and data handling system
US9608975B2 (en) 2015-03-30 2017-03-28 Shape Security, Inc. Challenge-dynamic credential pairs for client/server request validation
US10091219B2 (en) * 2015-05-14 2018-10-02 SunStone Information Defense, Inc. Methods and apparatus for detecting remote control of a client device
US9986058B2 (en) 2015-05-21 2018-05-29 Shape Security, Inc. Security systems for mitigating attacks from a headless browser executing on a client computer
RU2610254C2 (ru) 2015-06-30 2017-02-08 Закрытое акционерное общество "Лаборатория Касперского" Система и способ определения измененных веб-страниц
WO2017007705A1 (en) 2015-07-06 2017-01-12 Shape Security, Inc. Asymmetrical challenges for web security
US10212130B1 (en) 2015-11-16 2019-02-19 Shape Security, Inc. Browser extension firewall
US9917850B2 (en) 2016-03-03 2018-03-13 Shape Security, Inc. Deterministic reproduction of client/server computer state or output sent to one or more client computers
US10567363B1 (en) 2016-03-03 2020-02-18 Shape Security, Inc. Deterministic reproduction of system state using seeded pseudo-random number generators
US10129289B1 (en) 2016-03-11 2018-11-13 Shape Security, Inc. Mitigating attacks on server computers by enforcing platform policies on client computers
RU2652451C2 (ru) 2016-09-08 2018-04-26 Акционерное общество "Лаборатория Касперского" Способы обнаружения аномальных элементов веб-страниц
RU2638710C1 (ru) * 2016-10-10 2017-12-15 Акционерное общество "Лаборатория Касперского" Способы обнаружения вредоносных элементов веб-страниц
CN108076003B (zh) * 2016-11-07 2020-10-30 阿里巴巴集团控股有限公司 会话劫持的检测方法及装置
CN107066974B (zh) * 2017-04-17 2020-11-27 东南大学 一种抗浏览器指纹改变的终端设备识别方法
CN108171074B (zh) * 2017-12-07 2021-03-26 东南大学 一种基于内容关联的Web追踪自动检测方法
CN108769086B (zh) * 2018-08-31 2020-08-28 连尚(新昌)网络科技有限公司 一种用于通过用户设备检测中间人攻击的方法与设备
US11770385B2 (en) * 2019-12-31 2023-09-26 Paypal, Inc. Systems and methods for malicious client detection through property analysis

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060174119A1 (en) * 2005-02-03 2006-08-03 Xin Xu Authenticating destinations of sensitive data in web browsing
WO2007115864A1 (en) * 2006-04-10 2007-10-18 International Business Machines Corporation User-browser interaction analysis authentication system
WO2007127043A1 (en) * 2006-04-26 2007-11-08 Digital Envoy, Inc. Fraud analyst smart cookie
JP2008084118A (ja) * 2006-09-28 2008-04-10 Fujitsu Ltd 非即時処理存在可能性の表示処理プログラム,装置,および方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5049962B2 (ja) * 2005-05-19 2012-10-17 サンディスク アイエル リミテッド 個人の存在を条件とする、トークンによるトランザクション認証
US8015598B2 (en) * 2007-11-16 2011-09-06 Arcot Systems, Inc. Two-factor anti-phishing authentication systems and methods
US7668921B2 (en) * 2006-05-30 2010-02-23 Xerox Corporation Method and system for phishing detection
US20080104672A1 (en) * 2006-10-25 2008-05-01 Iovation, Inc. Detecting and preventing man-in-the-middle phishing attacks
US8352738B2 (en) * 2006-12-01 2013-01-08 Carnegie Mellon University Method and apparatus for secure online transactions
US20100050243A1 (en) * 2006-12-04 2010-02-25 Sxip Identify Corp. Method and system for trusted client bootstrapping
US9083746B2 (en) * 2007-10-19 2015-07-14 Imation Corp. Method of providing assured transactions using secure transaction appliance and watermark verification
DE102007050836A1 (de) * 2007-10-24 2009-04-30 Giesecke & Devrient Gmbh Internet-Smart-Card
WO2009065154A2 (en) * 2007-11-12 2009-05-22 Mark Currie Method of and apparatus for protecting private data entry within secure web sessions
US20090327138A1 (en) * 2008-01-28 2009-12-31 AuthWave Technologies Pvt. Ltd. Securing Online Transactions
US8799171B2 (en) * 2008-04-01 2014-08-05 International Business Machines Corporation Secure online banking transaction apparatus and method
US20100083383A1 (en) * 2008-09-30 2010-04-01 Apple Inc. Phishing shield
US20100088766A1 (en) * 2008-10-08 2010-04-08 Aladdin Knoweldge Systems Ltd. Method and system for detecting, blocking and circumventing man-in-the-middle attacks executed via proxy servers

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060174119A1 (en) * 2005-02-03 2006-08-03 Xin Xu Authenticating destinations of sensitive data in web browsing
WO2007115864A1 (en) * 2006-04-10 2007-10-18 International Business Machines Corporation User-browser interaction analysis authentication system
WO2007127043A1 (en) * 2006-04-26 2007-11-08 Digital Envoy, Inc. Fraud analyst smart cookie
JP2008084118A (ja) * 2006-09-28 2008-04-10 Fujitsu Ltd 非即時処理存在可能性の表示処理プログラム,装置,および方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10469531B2 (en) 2014-04-25 2019-11-05 SecureBrain Corporation & Hitachi Systems, Ltd. Fraud detection network system and fraud detection method
US11238459B2 (en) 2020-01-07 2022-02-01 Bank Of America Corporation Intelligent systems for identifying transactions associated with an institution impacted by an event
US11443320B2 (en) 2020-01-07 2022-09-13 Bank Of America Corporation Intelligent systems for identifying transactions associated with an institution impacted by an event using a dashboard

Also Published As

Publication number Publication date
EP2199940A2 (en) 2010-06-23
EP2199940A3 (en) 2011-04-27
CN101764819A (zh) 2010-06-30
JP5588665B2 (ja) 2014-09-10
US20100162393A1 (en) 2010-06-24
CN101764819B (zh) 2015-11-25
US8225401B2 (en) 2012-07-17
EP2199940B1 (en) 2012-11-07

Similar Documents

Publication Publication Date Title
JP5588665B2 (ja) マン・イン・ザ・ブラウザ攻撃を検出するための方法およびシステム
JP6594542B2 (ja) 分散された、非集中化されたデータ集約
US20220156404A1 (en) Early data breach detection
US9146786B2 (en) Online business method, system and apparatus based on open application programming interface
CN107077546B (zh) 用于更新持有因素凭据的系统和方法
US11288359B1 (en) Automatic account protection
US10366250B1 (en) Systems and methods for protecting personally identifiable information during electronic data exchanges
US9104838B2 (en) Client token storage for cross-site request forgery protection
RU2634174C1 (ru) Система и способ выполнения банковской транзакции
US20170053105A1 (en) Increased security using dynamic watermarking
US11477245B2 (en) Advanced detection of identity-based attacks to assure identity fidelity in information technology environments
US9077538B1 (en) Systems and methods for verifying user identities
US11785009B2 (en) Automatic event migration
WO2019011187A1 (zh) 电子账户的挂失、解挂、业务管理方法、装置及设备
US20140137265A1 (en) System and Method For Securing Critical Data In A Remotely Accessible Database
US11449637B1 (en) Systems and methods for providing web tracking transparency to protect user data privacy
US10033732B1 (en) Systems and methods for detecting cloning of security tokens
US11176276B1 (en) Systems and methods for managing endpoint security states using passive data integrity attestations
US10462113B1 (en) Systems and methods for securing push authentications
US9081938B1 (en) Systems and methods for determining whether profiles associated with social-networking websites have been compromised
US11687949B2 (en) System and method of detecting mass hacking activities during the interaction of users with banking services
US7991663B1 (en) System for volume and stress testing bank debit card processing systems
JP2021149933A (ja) 口座検証
US8065567B1 (en) Systems and methods for recording behavioral information of an unverified component
US10257202B1 (en) Systems and methods for logging users out of online accounts

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121211

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140114

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140611

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: 20140701

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140728

R150 Certificate of patent or registration of utility model

Ref document number: 5588665

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250