説明

システムアプリケーション処理に関連する詐欺を検出するシステムおよび方法

【課題】システムアプリケーション処理に関連する詐欺を検出するシステムおよび方法を提供する。
【解決手段】複数のアプリケーションサービス110a〜110nの少なくともサブセットのそれぞれについて、アプリケーションサービス110a〜110nの実行に関連する実行経路内のそれぞれの点を示す監査ログメッセージを受信するステップと、アプリケーションサービス110a〜110nのアプリケーションサービスエンドポイント110dを実行する前に、実行経路が少なくとも1つの事前定義の期待される実行経路を満足するかどうかを判定するために受信した監査ログメッセージを分析するステップとを含む。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、全般的には詐欺検出に関し、より具体的には、システムアプリケーション処理に関連する詐欺を検出するシステムおよび方法に関する。
【背景技術】
【0002】
コンピュータアプリケーションセキュリティは、重大な関心事であり続ける。分散コンピューティングを用いると、メッセージが、生成され、システムコンポーネントおよびシステムアプリケーションソフトウェアモジュールの間で交換される。これらのメッセージは、機密情報またはシステムの動作にクリティカルな重要なデータを含む場合がある。個々のソフトウェアアプリケーションの間および/または完全に異なるシステムの間でメッセージが交換される分散コンピューティング環境では、従来のメッセージ保証(message assurance)技法は、アクセス制御およびユーザ特権、個々のメッセージのディジタル署名、タイムスタンピング、ならびにインターネットプロトコル(「IP」)セキュリティおよびディジタルファイヤウォールユーティリティなどのネットワークベースのセキュリティを含む、サービスの組合せを利用する。たとえば、既存のメッセージ保証技法は、メッセージの受信時にメッセージのディジタル署名を分析し、かつ/またはIPセキュリティおよびセキュアファイヤウォールを利用してネットワークを介するメッセージ送信を制限する。
【0003】
しかし、これらの技法は、パワーユーザまたは管理者などの有効なシステムユーザが、システムになりすまし、適当なディジタル署名およびネットワーク証明書を有する変更されたメッセージまたは詐欺的メッセージを送信することを防がない。さらに、これらの現在のメッセージ保証技法は、一般に、性質において反応性であり、セキュリティインシデントが発生した後に報告しまたは調査する。これらの解決策は、一般に、詐欺的メッセージ通信が発生する前にその通信を防ぐことはしない。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】米国特許出願第2010/0131329号明細書
【発明の概要】
【0005】
したがって、システムアプリケーション処理に関連する詐欺を検出するシステムおよび方法の必要がある。
【0006】
本発明の実施形態は、上で説明した必要の一部またはすべてに対処することができる。実施形態は、システムアプリケーション処理に関連する詐欺を検出するシステム、方法、および装置を含むことができる。本発明の一実施形態によれば、システムアプリケーション処理に関連する詐欺を検出する方法が提供される。この方法は、それぞれが1つまたは複数のシステムアプリケーションのうちのそれぞれの1つに関連する複数のアプリケーションサービスの実行を引き起こすソフトウェアベースの動作を実行するステップであって、アプリケーションサービスの実行は、ソフトウェアベースの動作の実行経路を定義する、ステップを含むことができる。この方法は、ソフトウェアベースの動作の実行経路を少なくとも部分的に表すためにそれぞれのアプリケーションサービスの実行に関連するアプリケーションサービスの少なくともサブセットのそれぞれについて監査ログを生成するステップと、アプリケーションサービスのうちの少なくとも1つの実行の前に、ソフトウェアベースの動作の実行経路が少なくとも1つの事前定義の期待される実行経路を満足するかどうかを判定するために、ソフトウェアベースの動作の実行中に以前に生成された監査ログのそれぞれを分析するステップとをさらに含む。
【0007】
もう1つの実施形態によれば、システムアプリケーション処理に関連する詐欺を検出するシステムが提供される。このシステムは、少なくとも1つのプロセッサを含み、少なくとも1つのソフトウェアベースの動作を実行するために複数のアプリケーションサービスを含む少なくとも1つのシステムアプリケーションとネットワークを介して通信する、メッセージ保証サーバを含むことができる。メッセージ保証サーバは、アプリケーションサービスの少なくともサブセットのそれぞれについてアプリケーションサービスの実行に関連する実行経路内のそれぞれの点を示す監査ログメッセージを受信し、ソフトウェアベースの動作の実行経路が少なくとも1つの事前定義の期待される実行経路を満足するかどうかを判定するためにアプリケーションサービスのうちの少なくとも1つを実行する前に受信した監査ログのそれぞれを分析するように動作可能とすることができる。
【0008】
もう1つの実施形態によれば、システムアプリケーション処理に関連する詐欺を検出する方法が提供される。この方法は、複数のアプリケーションサービスの少なくともサブセットのそれぞれについて、アプリケーションサービスの実行に関連する実行経路内のそれぞれの点を示す監査ログメッセージを受信するステップと、アプリケーションサービスのアプリケーションサービスエンドポイントを実行する前に、実行経路が少なくとも1つの事前定義の期待される実行経路を満足するかどうかを判定するために、受信した監査ログを分析するステップとを含むことができる。
【0009】
追加のシステム、方法、装置、特徴、および態様は、本発明のさまざまな実施形態の技法を介して実現される。本発明の他の実施形態および態様は、本明細書で詳細に説明され、請求される発明の一部と考えられる。他の実施形態、特徴、および態様は、この説明および図面を参照して理解することができる。
【0010】
本発明を一般論として説明したので、これから添付図面を参照するが、添付図面は、必ずしも原寸通りに描かれてはいない。
【図面の簡単な説明】
【0011】
【図1】一実施形態による、詐欺を検出する例のシステムを示すブロック図である。
【図2】一実施形態による、詐欺検出システムを構成する例の方法を示す流れ図である。
【図3】一実施形態による、詐欺を検出する例の方法を示す流れ図である。
【発明を実施するための形態】
【0012】
本発明の例示的な実施形態を、これから添付図面を参照してより十分に説明するが、添付図面には、本発明の、すべてではなくいくつかの実施形態が示されている。実際に、本発明は、多数の異なる形で実施でき、本明細書に示された実施形態に限定されると解釈されてはならず、これらの実施形態は、本開示が適用可能な法的要件を満足するようにするために提供されるものである。同様の符号は、終始同様の要素を指す。
【0013】
複数のコンピューティングコンポーネントを有する分散システムでは、メッセージが、あるシステムまたはシステムアプリケーションから別のシステムまたはシステムアプリケーションへ、直接にまたはさまざまな中間システムもしくは中間システムアプリケーションを介してのいずれかで交換される。交換されるメッセージを利用して、受信側システムアプリケーションによる使用のためにデータを送信し、または受信側システムアプリケーションでのもしくはそれに関連するアクションを実行するコマンドを発行することができる。
【0014】
1つの例の分散システムを、1つまたは複数のネットワークを介して通信し、取引する、複数のシステムアプリケーションと他のアプリケーションおよびサブシステムとを含むスマートグリッドシステムとすることができる。システムアプリケーション(またはサブシステムに関連するアプリケーションなど)のそれぞれは、それぞれの動作を実行するために実行される(または他の形で呼び出される)時に、それらの間および他のシステムアプリケーションのシステムアプリケーションとメッセージを交換させる1つまたは複数のアプリケーションサービス(たとえば、ソフトウェアモジュール、機能モジュールなど)を有することができる。したがって、システムは、さまざまなシステムアプリケーションおよび/またはサブシステムのコレクションを指すことができ、これらのシステムアプリケーションおよび/またはサブシステムのそれぞれは、公開される1つまたは複数のアプリケーションサービスを有する場合があり、それらの間のインテグレーションおよび/またはインターオペラビリティのために実行され得る。また、いくつかの例では、システムが、同システムに直接関連しないまたはその一部ではないことがあるシステムアプリケーションおよび/または異なるシステムもしくはサブシステムに関連するアプリケーションサービスを呼び出しまたは他の形で利用する場合があることを了解されたい。スマートグリッドシステム内の例のシステムアプリケーションは、エネルギ管理システム(「EMS」)、supervisory control and data acquisition(「SCADA」)システム、distribution management system(「DMS」)、outage management system(「OMS」)、ネットワーク管理システム、geospatial information system(「GIS」)、メーターインターフェースシステム、advanced metering infrastructure(「AMI」)システム、顧客情報システム、会計および課金システム、報告および監視システム、distributed resource management system(「DRMS」)、インテグレーションおよびミドルウェアシステム、ならびに類似物を含むことができるが、これらに限定されない。スマートグリッドシステムが、本明細書で例によって説明されるが、本明細書で説明される実施形態を、プラント制御システム、情報管理システム、情報セキュリティシステム、金融システム、ネットワークおよび通信制御システム、防衛およびセキュリティシステム、ならびに類似物などの任意の個数の分散コンピューティングシステムと共に動作可能になるように適合させることができることを了解されたい。本明細書で説明される例示的な例は、限定的ではない。
【0015】
従来の分散システムでは、メッセージ完全性を、ディジタル署名および/またはネットワークセキュリティ機構を利用して検証することができる。しかし、これらの技法は、メッセージが実行の必要な経路をたどったことの保証、またはそれぞれのシステムアーキテクチャおよびプログラマによって定義される、受信側のアプリケーションまたはサービスに到着する前に、期待されるシステムアプリケーションまたはアプリケーションサービスが期待される通りに実行されたことの保証を提供しない。動作が、イベントの期待されるシーケンスに従わない時には、途中の誰かによって(盗聴し、反復するか変更されたメッセージを送信することによるなど)または、情報へのアクセスの知識を有し、したがってユーザがメッセージをポストし、期待され、システム動作および/またはセキュリティに影響する可能性があるイベントのさまざまなシーケンスをバイパスすることを可能にするパワーユーザ(たとえば、十分な特権およびセキュリティ証明書を有するユーザ)によって、1つまたは複数のメッセージがインターセプトされ、変更された可能性がある。
【0016】
本明細書で説明されるある種の実施形態は、認可されたソフトウェアによって開始されない、または事前に定義された経路の必要なシーケンスに従うことによって開始されない、メッセージの認可されないポスティングを防ぐことができる。認可されたシステムアプリケーションおよび関連するサービスの実行とメッセージ生成と通信とを、1つまたは複数の所定の期待される実行経路およびイベントのシーケンスに対して実行シーケンスおよびメッセージ経路(本明細書では、全体的に「実行経路」と称する)を検証することによって、妥当性検査することができる。それを行うために、関連するアプリケーションサービスのうちの1つまたは複数など、システムアプリケーション動作中のさまざまなステージで、実行されつつある特定のアプリケーションサービスに関連する情報を取り込む監査ログが、生成される。複数の監査ログが、一緒に、動作が進行する時の実行経路を表す。エンドポイントサービスまたは他のクリティカルなもしくは非常に機密のアプリケーションサービスなど、アプリケーションサービスのうちの1つまたは複数の実行の前に、以前に生成され、格納された監査ログが、関連するシステム動作の期待される実行経路に対して検証される。たとえば、一実施形態によれば、アプリケーションサービスエンドポイントの実行の前に、アプリケーションサービスが、以前の実行経路を分析するために監査ログデータにアクセスするアプリケーションプログラミングを含むことができる。もう1つの実施形態では、アプリケーションサービスは、中央サーバによって実行される実行経路の妥当性検査の要求を発行し、所定の期待される動作経路のうちの少なくとも1つが満足されることの肯定の応答が受信されるまで、動作を停止することができる。複数の実行経路を許容可能とすることが可能である。期待される実行経路のそれぞれは、実行されつつあるソフトウェアベースの動作に関連して事前に決定され、メモリに格納される。監査ログに従って、期待される実行経路内の点のそれぞれが実行されなかったと判定される場合には、システム動作が認可されたシーケンスに従わなかったと仮定することができ、したがって、可能な詐欺活的動が示される。
【0017】
監査ログファイルは、動作の間の持続時間を示すタイムスタンプをも含むことができる。所定の期待される実行経路は、同様に、動作の間の期待される持続時間またはしきい持続時間を示す時間間隔しきい値を定義することができ、この期待される持続時間またはしきい持続時間は、それに違反する時に、潜在的な詐欺的動作を示す。したがって、監査ログファイルの分析の一部として、タイムスタンプまたは時間間隔情報を、時間間隔しきい値と比較して、メッセージの配送または関連する動作の実行に過剰な時間が費やされたかどうかを判定することができ、この過剰な時間は、潜在的な詐欺的動作を示す。
【0018】
したがって、本明細書で説明される実施形態は、潜在的な詐欺を識別するために、1つまたは複数のシステムアプリケーションの正確な動作と、メッセージの実行経路とを検証し、どの動作が実行されたのか、メッセージがどの経路をたどったのか、誰がメッセージを送信しまたは動作を実行したのか、個々の動作にどれほど長くかかったのかなどを妥当性検査することを可能にする。したがって、高められたレベルのメッセージ保証を達成でき、これは、メッセージ反復攻撃、メッセージインターセプト、システムなりすまし、および他のメッセージ改竄活動を防ぐことを可能にする。
【0019】
例の実施形態を、これから図1〜3を参照して説明する。
【0020】
図1は、一実施形態による例の分散コンピューティングシステム100のブロック図である。分散コンピューティングシステム100は、複数のシステムアプリケーション105a〜105nを含むことができ、これによって、各システムアプリケーション105a〜105nは、複数のアプリケーションサービス110a〜110n(全体的にソフトウェアモジュールまたはモジュールのコレクションと称する)を含む。複数のアプリケーションサービス110a〜110nのそれぞれは、それぞれのシステムアプリケーション105a〜105nのソフトウェアベースの動作を実行するために実行可能である。複数のシステムアプリケーション105a〜105nおよびそれぞれのアプリケーションサービス110a〜110nのそれぞれを、さまざまなアプリケーションサービス110a〜110nを実行するシーケンスおよび/または実行中にさまざまなアプリケーションサービス110a〜110nの間で交換されるデータ、コマンド、もしくは他の命令に依存するものとすることができる任意の個数の異なるソフトウェアベースの動作を実行するために実行可能とすることができることを了解されたい。各システムアプリケーション105a〜105nを、分散コンピューティングシステム100全体の異なるシステム、プログラム、または製品に関連付けることができ、あるいは、いくつかの例では、複数のシステムアプリケーション105a〜105nを、分散コンピューティングシステムの同一のシステム、プログラム、または製品に関連付けることができる。各システムアプリケーション105a〜105nは、異なる物理コンピュータシステムに常駐し、そこで実行されることが可能であり、あるいは、いくつかの実施形態では、複数のシステムアプリケーション105a〜105nが、同一のコンピュータシステムに常駐することができる。上で説明したように、分散コンピューティングシステム100を、一例で、スマートグリッドコンピューティングシステムに関連付けることができ、これによって、システムアプリケーションのそれぞれが、スマートグリッドコンピューティングシステム内で異なる機能を実行するように構成される。しかし、分散コンピューティングシステム100は、スマートグリッドコンピューティングシステムに限定されるのではなく、一般に、1つまたは複数の特定のソフトウェアベースの動作を実行するために実行中にアプリケーションサービスの間でメッセージ、データ、またはコマンドを送信する1つまたは複数のアプリケーションサービスを実行するように構成された任意のコンピューティングシステムを指すことができる。
【0021】
システムアプリケーション105a〜105nのそれぞれ、したがってアプリケーションサービス110a〜110nのそれぞれは、ネットワーク115を介してメッセージ保証サーバ120と通信する。システムアプリケーション105a〜105nのうちの1つまたは複数が、直接にまたはネットワーク115を介してのいずれかで、お互いと通信することができる。メッセージ保証サーバ120を、本明細書で説明する詐欺検出動作を容易にするために、プログラミング命令(たとえば、ソフトウェアまたは他のコンピュータ実行可能命令)を格納し、実行するように動作可能な、1つまたは複数のプロセッサとメモリとを含む任意のコンピュータシステムとして実施することができる。コンピュータ実行可能命令を実行することによって、メッセージ保証サーバ120は、分散コンピューティングシステム100内で発生する詐欺的動作の検出を容易にする特殊目的コンピュータまたは特定の機械を含むか形成することができる。
【0022】
メッセージ保証サーバ120のメモリに格納され、1つまたは複数のプロセッサによって実行可能な例のプログラミング命令は、構成モジュール125、監査ログモジュール130、および詐欺検出モジュール135を含むことができ、これらのモジュールのそれぞれは、本明細書でさらに説明するように、詐欺検出動作を部分的に容易にするように動作可能である。メモリは、メッセージ保証サーバ120のプログラミング命令を実行するためにプロセッサによって利用されるオペレーティングシステムをも含むことができる。メッセージ保証サーバ120は、監査ログデータベース140などの1つまたは複数のデータストレージデバイスをさらに含むことができ、この監査ログデータベース140は、個々のアプリケーションサービス110a〜110nの実行中に受信される監査ログファイルを格納し、オプションで、監査ログファイル、1つまたは複数のアプリケーションサービス110a〜110nの実行に関連する事前定義の期待される実行経路および時間間隔しきい値、ユーザ特権情報、詐欺アラートメッセージテンプレート、および類似物などであるがこれらに限定されない、詐欺検出モジュール135によって利用され、構成モジュール125によって生成されるデータを格納するように動作可能とすることができる。
【0023】
より具体的には、構成モジュール125は、システムアプリケーション105a〜105nおよび関連するアプリケーションサービス110a〜110n情報を収集しまたは他の形で定義すること、1つまたは複数の期待される実行経路を定義すること、1つまたは複数の期待される実行経路をアプリケーションサービス110a〜110nに関連付けること、システムアプリケーション105a〜105n動作およびアプリケーションサービス110a〜110n動作のさまざまなシーケンスの実行に関する時間間隔しきい値を定義すること、時間間隔しきい値をアプリケーションサービス110a〜110nに関連付けること、アプリケーションサービス110a〜110nのうちの1つまたは複数によって少なくとも部分的に実行可能とすることができ、かつ/またはメッセージ保証サーバ120によって少なくとも部分的に実行可能とすることができる、アプリケーションサービス110a〜110nのうちの1つまたは複数の実行に関連する監査ログを生成しまたは他の形で取り込み、分析する詐欺検出論理を定義すること、および類似物などであるがこれらに限定されない詐欺検出動作の構成を容易にするように動作可能なプログラミング命令を含むことができる。したがって、一実施形態で、構成モジュール125を、本明細書で説明する詐欺検出動作の構成に関連するユーザからの情報を提示し、取り込むためにユーザインターフェースを定義し、生成し、提示するように動作可能とすることができる。いくつかの実施形態で、構成モジュールによって実行される多数の態様を、システムアーキテクトまたはソフトウェアプログラマなどによる、それぞれのシステムアプリケーション105a〜105nの開発、生成、およびプログラミング中に実行することができる。構成モジュール125の例の動作に関するさらなる詳細を、本明細書で図2を参照して提供する。
【0024】
監査ログモジュール130は、アプリケーションサービス110a〜110nのうちの1つまたは複数による監査ログファイルの生成および格納を容易にするように動作可能なプログラミング命令を含むことができる。たとえば、一実施形態によれば、監査ログモジュール130を、ネットワーク115を介して1つまたは複数のアプリケーションサービス110a〜110nの実行中に監査ログファイルを受信し、監査ログファイルを監査ログデータベース140などのメモリに格納するように動作可能とすることができる。監査ログモジュール130の例の動作に関する追加の詳細を、本明細書で図3を参照して提供する。
【0025】
詐欺検出モジュール135は、実行経路および関連する動作が、分析されるアプリケーションサービス110a〜110nの少なくとも1つの所定の期待される実行経路および/または1つまたは複数の時間間隔しきい値を満足するかどうかを判定するための監査ログ情報の分析を容易にするように動作可能なプログラミング命令を含むことができる。一実施形態によれば、詐欺検出モジュールによって実行される少なくともいくつかの態様を、分析されるアプリケーションサービス110a〜110nによって実行することができる。たとえば、アプリケーションサービス110a〜110nの所期の動作(たとえば、アプリケーションサービスエンドポイント)の実行の前に、アプリケーションサービス110a〜110nは、期待される動作の実行を完了する前に分析のために監査ログファイルおよび期待される実行経路情報を取り出すために、ネットワーク115を介してメッセージ保証サーバ120にコマンドを発行するプログラミング命令を含むことができる。もう1つの実施形態では、アプリケーションサービス110a〜110nは、その代わりに、メッセージ保証サーバ120によって監査ログファイルを分析し、認可判定を行うために、メッセージ保証サーバ120にコマンドを発行することができ、メッセージ保証サーバ120は、返報として、動作が認可され、したがってアプリケーションサービス110a〜110nが進行できるかどうかを示す詐欺状況を応答することができる。所与のソフトウェアベースの動作に関連するアプリケーションサービス110a〜110nのうちの一部またはすべての実行の完了の前に、詐欺検出モジュール135にアクセスし、詐欺検出モジュール135を実行することができる。詐欺検出モジュール135の例の動作に関する追加の詳細を、本明細書で図3を参照して提供する。
【0026】
メッセージ保証サーバ120は、メモリと1つまたは複数のプロセッサとの間でデータ通信を提供するために動作可能なデータバスをさらに含むことができる。ユーザ(たとえば、システムオペレータまたは構成担当者、セキュリティ担当者など)は、キーボード、マウス、コントロールパネル、またはコンピュータシステムとの間でデータを通信できる任意の他のデバイスなどであるがこれらに限定されない少なくとも1つのユーザインターフェースデバイスを介してメッセージ保証サーバ120とインターフェースすることができる。メッセージ保証サーバ120は、システムアプリケーション105a〜105nを動作させるコンピュータシステムのそれぞれとの通信を可能にする、ネットワーク115などの1つまたは複数の適切なネットワークへのメッセージ保証サーバ120の接続を容易にする、ネットワークカードまたは他の通信デバイスなどの1つまたは複数の適切なネットワークインターフェースをさらに含むことができる。さらに、分散コンピューティングシステム100内の他のコンピュータシステムおよび/または他のコンポーネントもしくは機械類などの他の外部デバイスが、ネットワークインターフェースを介してメッセージ保証サーバ120と通信できることを了解されたい。したがって、メッセージ保証サーバ120およびこれによって実施されるプログラミング命令は、ソフトウェア、ハードウェア、ファームウェア、またはその任意の組合せを含むことができる。複数のコンピュータを一緒に使用することができ、これによって、本明細書で説明する異なる特徴を、1つまたは複数の異なるコンピュータ上で実行できることをも了解されたい。
【0027】
ネットワーク115は、いずれをも有線および/または無線とすることができる、ローカルエリアネットワーク、広域ネットワーク、イントラネット、インターネット、中間ハンドヘルドデータ転送デバイス、公衆交換電話網、および/またはその任意の組合せなどであるがこれらに限定されない、公衆、私有、またはその組合せのいずれかの、任意の個数の遠隔通信ネットワークおよび/またはデータネットワークを含むことができる。ネットワーク接続性に起因して、本明細書で説明されるさまざまな方法論を、分散コンピューティング環境の文脈で実践することができる。分散コンピューティングシステム100が、単純さのために1つのネットワーク115を含むものとして図示されているが、ネットワークの間またはネットワークの中で接続性を提供するために、それぞれがゲートウェイおよびルータなどのデバイスを有する複数のネットワークをオプションで含むことができる、任意の他のネットワーク構成が可能であることを理解されたい。
【0028】
システムアプリケーション105a〜105nおよび関連するアプリケーションサービス110a〜110nのそれぞれを、上でメッセージ保証サーバ120を参照して説明したものと同一のまたは類似するコンポーネントおよび動作を有するコンピュータシステムによって実行することができる。
【0029】
当業者は、図1に示され、図1に関して説明された分散コンピューティングシステム100が、例としてのみ提供されることを了解するであろう。多数の他の動作環境、システムアーキテクチャ、およびデバイス構成が可能である。他のシステム実施形態は、より少数またはより多数のコンポーネントを含むことができ、図1に示されたシステムコンポーネントに関して説明した機能性の一部またはすべてを組み込むことができる。したがって、本発明の実施形態を、特定の動作環境、システムアーキテクチャ、またはデバイス構成に限定されると解釈してはならない。
【0030】
図2は、例示的実施形態による、詐欺検出システムを構成する例の方法200の流れ図である。方法200を、図1を参照して説明した分散コンピューティングシステム100などの1つまたは複数の分散コンピューティングシステムに関連して利用することができる。たとえば、方法200の諸態様を、やはり図1を参照して説明したメッセージ保証サーバ120の構成モジュール125とユーザがインターフェースすることによって少なくとも部分的に実行することができる。
【0031】
方法200は、ブロック205で開始することができ、ブロック205では、システムアプリケーション105a〜105nおよび関連するアプリケーションサービス110a〜110nのそれぞれに関する情報を収集し、監査ログデータベース140などに格納する。システムアプリケーション情報は、アプリケーション(たとえば、システムアプリケーション識別子など)、実行されつつあるソフトウェア、ソフトウェアの機構、システムアプリケーションがインターフェースできる他のシステムアプリケーション、システムアプリケーションが格納され、実行されるコンピュータシステム、ユーザ情報(たとえば、認可されたユーザの識別子、プログラムインスタンスを実行するユーザの識別子など)、システムアプリケーションに関連する各アプリケーションサービス110a〜110n、および類似物に関連する情報を含むことができるが、これらに限定されない。同様に、アプリケーションサービス情報は、アプリケーションサービスが関連するシステムアプリケーション105a〜105n(たとえば、システムアプリケーション識別子など)、アプリケーションサービス(たとえば、アプリケーションサービス識別子など)、アプリケーションサービスの機能、アプリケーションサービスがインターフェースできる他のアプリケーションサービスおよび/またはシステムアプリケーション、用いられるソフトウェアクラス、用いられるソフトウェアメソッド、期待されるデータ型および/またはメッセージ内容、サービスの実行の日付、サービスの実行の時刻、ユーザ情報(たとえば、認可されたユーザの識別子、プログラムインスタンスを実行するユーザの識別子など)、および類似物に関連する情報を含むことができるが、これらに限定されない。システムアプリケーション情報およびアプリケーションサービス情報の前述の例が、例示のみのために提供され、限定的ではないことを了解されたい。システムアプリケーションおよび/またはアプリケーションサービスならびにその実行に関連する任意の適切な情報を、本明細書で説明する詐欺検出動作中に集め、利用することができる。
【0032】
ブロック205に続くのが、ブロック210であり、ブロック210では、1つまたは複数の期待される実行経路を入力し、アプリケーションサービス110a〜110nのうちの1つまたは複数に関連付ける。いくつかの実施形態では、実行経路を、すべてのアプリケーションサービス110a〜110nではなく、アプリケーションサービスエンドポイントならびに/あるいは他のクリティカルなおよび/またはデータに敏感なアプリケーションサービスを有するものなどのサブセットだけに関連付けることができる。いくつかの実施形態で、アプリケーションサービス110a〜110nは、アプリケーションサービスが複数のソフトウェアベースの動作に関連して実行される(たとえば、他のアプリケーションサービスの異なる組合せの実行を介してそのアプリケーションサービスに達するなど)場合などに、複数の期待される実行経路を関連付けられる場合があることをさらに了解されたい。期待される実行経路は、1つまたは複数のアプリケーションサービス110a〜110nおよび/または当該のアプリケーションサービス110a〜110nを実行する前に実行されなければならない1つまたは複数のシステムアプリケーション105a〜105nに関する詳細を提供することができる。たとえば、それに関して詐欺的活動が検出されなければならない1つまたは複数のアプリケーションサービス110a〜110nを利用するソフトウェアベースの動作ごとに(いくつかの動作について詐欺的活動を検出することが必要ではないことに留意されたい)、期待される実行経路は、分析される当該のアプリケーションサービス110a〜110nの前に実行されなければならないアプリケーションサービス110a〜110n(またはシステムアプリケーション105a〜105n)のそれぞれまたは少なくともそのサブセットを識別する。したがって、期待される実行経路は、特定のソフトウェアベースの動作が設計され期待される通りに実行されるための動作のシーケンスを表す。いくつかの実施形態で、期待される実行経路情報は、直前のアプリケーションサービス110a〜110nを識別することだけができ、これは、より以前の動作で発生する詐欺的活動が、同一のまたは類似する技法に従ってより以前のアプリケーションサービス110a〜110nの実行の前に検出されることを仮定することができる。いくつかの実施形態で、各すべての実行されるアプリケーションサービス110a〜110nまたは実行される動作が、期待される実行経路によって示される必要があるのではなく、いくつかの実施形態で、動作のサブセットだけが識別され、たとえば、セキュリティもしくは成功の動作にクリティカルではない動作の省略または多数の変数がある可能性がある動作の省略を可能にすることをさらに了解されたい。さらに、いくつかのアプリケーションサービス110a〜110nについて、実行されつつある異なるソフトウェアベースの動作について異なる可能性がある複数の異なるアプリケーションサービスまたはシステムアプリケーションがアプリケーションサービス110a〜110nにアクセスしまたはこれを呼び出すことができる時など、複数の期待される実行経路がある場合がある。これらの場合に、複数の期待される実行経路のうちの1つだけが満足される。
【0033】
各期待される実行経路情報を、監査ログデータベース140に格納することができ、全体的にソフトウェアベースの動作に、アプリケーションサービス110a〜110nもしくはシステムアプリケーション105a〜105nに、またはその任意の組合せに関連付けることができる。たとえば、テーブルまたは他のデータ構造が、アプリケーションサービス110a〜110nへの参照と、アプリケーションサービス110a〜110nごとに、分析されつつあるそれぞれのアプリケーションサービス110a〜110nの実行の前に実行されなければならない1つまたは複数のアプリケーションサービス110a〜110n(および/またはシステムアプリケーション105a〜105n)への参照とを含むことができる。したがって、この実施形態によれば、アプリケーションサービス110a〜110nが分析されつつある時に(たとえば、その動作を完了する前にメッセージ保証サーバ120への呼出を行うサービスエンドポイントまたは他のサービス)、期待される実行経路を、その特定のアプリケーションサービス110a〜110nについて識別することができる。しかし、他の実施形態では、テーブルまたは他のデータ構造は、特定のソフトウェアベースの動作について実行経路全体を識別する実行経路情報を格納することができ、動作内の特定のアプリケーションサービスに直接には関連付けられない。したがって、この実施形態では、特定のアプリケーションサービス110a〜110nが分析されつつある時に(たとえば、その動作を完了する前にメッセージ保証サーバ120への呼出を行うサービスエンドポイント)、実行されつつある当該のアプリケーションサービス110a〜110nを当初に参照することではなく実行されつつある全体的なソフトウェアベースの動作に対して参照することによるなど、動作全体の期待される実行経路が、識別される。一実施形態では、監査ログ情報および期待される実行経路は、アプリケーションサービスエンドポイントについてのみ分析され、したがって、作成され格納される時にアプリケーションサービスエンドポイントに関連付けられることだけを必要とする。しかし、他の実施形態では、監査ログ情報および期待される実行経路を、中間のアプリケーションサービスについても分析することができる。前述の期待される実行経路構成が、例示のために提供され、期待される実行経路を格納し、実行されつつある動作またはアプリケーションサービスに関連付ける任意の適切な手段を利用できることを了解されたい。
【0034】
ブロック210に続くのが、ブロック215であり、ブロック215では、時間間隔しきい値を定義し、格納された期待される実行経路のうちの1つまたは複数に関連付ける。時間間隔しきい値を利用して、このしきい値を越える動作が潜在的な詐欺的活動を示すと仮定して、2つのアプリケーションサービス110a〜110nの実行の間の許容可能な最大の(または他の事前定義の時間の長さ)持続時間を定義することができる。いくつかの実施形態では、複数の時間間隔しきい値を特定のソフトウェアベースの動作について定義することができ、複数のアプリケーションサービス110a〜110nを実行するシーケンス中に、ある複数の時間間隔しきい値が満足されると期待されるようになる。時間間隔しきい値を、2つの連続する動作の間(たとえば、第1の動作と、実行される直後の動作との間)で定義することができるが、そうである必要はない。他の実施形態では、時間間隔しきい値を、1つまたは複数の中間アプリケーションサービスがそれらのために実行される2つのアプリケーションサービス110a〜110nの間など、2つの連続しない動作の間で定義することができる。
【0035】
ブロック215に続くのが、ブロック220であり、ブロック220では、実行経路および関連する動作が、分析されつつあるアプリケーションサービス110a〜110nの少なくとも1つの所定の期待される実行経路および/または時間間隔しきい値を満足するかどうかを判定するために監査ログ情報の取込および分析を容易にするために詐欺検出論理を生成するようにプログラミング命令を構成することができる。一実施形態によれば、1つまたは複数の詐欺検出モジュールとして実施できる詐欺検出論理の少なくともいくつかの態様を、分析されつつあるアプリケーションサービス110a〜110nによってまたはこれに関連して実行することができる。たとえば、アプリケーションサービス110a〜110nの所期の動作(たとえば、アプリケーションサービスエンドポイント)の実行の前に、アプリケーションサービス110a〜110nは、期待される動作の実行を完了する前の分析のために、ネットワーク115を介してメッセージ保証サーバ120から監査ログファイルおよび期待される実行経路情報を取り出すコマンドを発行するプログラミング命令を含むことができる。もう1つの実施形態では、アプリケーションサービス110a〜110nは、その代わりに、監査ログファイルの分析および判定をメッセージ保証サーバ120によって行わせるコマンドをメッセージ保証サーバ120に発行することができ、メッセージ保証サーバ120は、返報として、動作が認可され、したがってアプリケーションサービス110a〜110nが進行できるかどうかを示すなど、詐欺状況を返すことができる。したがって、さまざまな実施形態によれば、詐欺検出論理を、完全にそれぞれのアプリケーションサービス110a〜110n内で、完全にメッセージ保証サーバ120内で、完全にまたは少なくとも部分的にそれぞれのアプリケーションサービス110a〜110nに関連して実行されるように動作可能な別のソフトウェアモジュールおよび/またはコンピュータシステム内で、あるいはその任意の組合せなど、任意の個数の適切な構成に従って提供することができる。詐欺検出論理を、所与のソフトウェアベースの動作に関連するアプリケーションサービス110a〜110nのうちのいくつかまたはすべてについて提供することができる。詐欺検出論理の例の動作に関する追加の詳細を、本明細書で図3を参照して提供する。
【0036】
方法200は、所与のソフトウェアベースの動作に関連するアプリケーションサービス実行の分析および妥当性検査を容易にするためにそれぞれのシステムアプリケーション105a〜105n、アプリケーションサービス110a〜110n、および/またはメッセージ保証サーバ120を構成し終えて、ブロック220の後に終了することができる。
【0037】
図3は、例示的な実施形態による、詐欺を検出する例の方法300の流れ図である。方法300を、図1を参照して説明した分散コンピューティングシステム100などの1つまたは複数の分散コンピューティングシステムに関連して利用することができる。たとえば、方法300の諸態様を、やはり図1を参照して説明した特定のソフトウェアベースの動作の一部として1つまたは複数のシステムアプリケーション105a〜105nおよび関連するアプリケーションサービス110a〜110nの実行中に少なくとも部分的に実行することができる。ある種のアプリケーションサービス110a〜110nの実行中に、監査ログファイルおよび実行経路情報などの動作情報が、詐欺的サービスが発生した可能性があるかどうかを検出するために分析される。
【0038】
方法300は、ブロック305で開始することができ、ブロック305では、特定のソフトウェアベースの動作の実行中に実行されるプログラムされた動作およびメッセージ実行が発生する。ブロック305は、1つまたは複数のシステムアプリケーション105a〜105nおよび関連するアプリケーションサービス110a〜110nによって実行される特定のソフトウェアベースの動作の全体的な開始または継続される動作を示す。本明細書で説明されるように、ソフトウェアベースの動作を、それについてメッセージ保証および詐欺検出が実行されることが望まれる、分散コンピューティングシステムによって実行される任意のソフトウェア動作とすることができる。ソフトウェアベースの動作が実行される時に、各アプリケーションサービス110a〜110nは、ソフトウェアベースの動作の実行経路に沿った別々の点を定義する。前に説明したように、ソフトウェアベースの動作に関連する所定の期待される実行経路に基づいて、これらのアプリケーションサービスのうちの1つまたは複数の実行の前に、動作および/またはメッセージ真正性を妥当性検査することができる。したがって、方法200は、判断ブロック335によって示されるように、複数のアプリケーションサービス110a〜110nについて繰り返すことができる、1つのアプリケーションサービス110a〜110nの実行に関連して(たとえば、その前に)実行できる動作を示す。
【0039】
ブロック305に続くのが、ブロック310であり、ブロック310では、実行されつつあり、図1を参照して説明したネットワーク115を介してメッセージ保証サーバ120になど、ネットワークを介して中央サーバに送信される、それぞれのアプリケーションサービス110a〜110nに関する1つまたは複数の監査ログファイルを生成する。監査ログファイルは、実行経路内の特定の点に関連する情報を取り込み、ソフトウェアベースの動作の実行経路に沿って実行されるそれぞれのアプリケーションサービス110a〜110nまたは後続のアプリケーションサービス110a〜110nに関連する詐欺検出を実行するのに利用できる情報を含むことができる。監査ログ情報は、実行される特定のアプリケーションサービス110a〜110nを識別するのに適切な任意の情報およびオプションで、関連するアプリケーションサービス110a〜110nに関して望まれる任意の追加情報(たとえば、実行されつつあるサービス、前のアプリケーションサービス、および/または後続アプリケーションサービスなど)、関連するシステムアプリケーション105a〜105n、またはソフトウェアベースの動作に関する任意の追加の情報とすることができる。例の監査ログファイル情報は、実行されつつあるソフトウェアベースの動作、ソフトウェアベースの動作の機能、関連するシステムアプリケーション(たとえば、システムアプリケーション識別子など)、システムアプリケーションがインターフェースできる他のシステムアプリケーション、実行されつつあるアプリケーションサービス(たとえば、アプリケーションサービス識別子など)、アプリケーションサービスの機能、実行されつつあるアプリケーションサービスを呼び出すアプリケーションサービス、実行されつつあるアプリケーションサービスによって呼び出されるアプリケーションサービス、システムアプリケーション、他のアプリケーションサービス、および/またはアプリケーションサービスがインターフェースできるシステムアプリケーションに関連する各他のアプリケーションサービス、用いられるソフトウェアクラス、用いられるソフトウェアメソッド、期待されるデータ型および/またはメッセージ内容、サービスの実行の日付、サービスの実行の時刻、システムアプリケーションが格納され、実行されるコンピュータシステム、ユーザ情報(たとえば、認可されたユーザの識別子、プログラムインスタンスを実行するユーザの識別子、ユーザ特権など)、ならびに類似物を含むことができるが、これらに限定されない。前述の監査ログ情報が、例示のために提供され、限定的ではないことを了解されたい。
【0040】
ブロック310に続くのが、ブロック315であり、ブロック315では、実行されつつあるアプリケーションサービス110a〜110nの実行を完了する前に、少なくともいくつかのアプリケーションサービス110a〜110nについて、メッセージ実行経路および/またはアプリケーションサービス動作を妥当性検査する。一実施形態によれば、ブロック315の動作は、それぞれのアプリケーションサービス110a〜110nの完了の前に詐欺を検出するために、実行されつつあるアプリケーションサービス110a〜110nのうちの少なくとも1つについて実行されるが、ソフトウェアベースの動作を実行している間に実行されるすべてのアプリケーションサービス110a〜110nについて実行される必要はない。たとえば、一実施形態では、ブロック315の動作は、アプリケーションサービスエンドポイントの実行の前に実行され、このアプリケーションサービスエンドポイントは、所与のソフトウェアベースの動作のために実行される最後のアプリケーションサービス110a〜110nと定義することができる。したがって、アプリケーションサービスエンドポイントの実行の前に詐欺検出を実行することは、ソフトウェアベースの動作の完了の前にすべての潜在的な詐欺的メッセージおよび/または動作を検出することを可能にすることができる。しかし、他の実施形態では、ブロック315の動作を、アプリケーションサービスエンドポイントに加えてまたはその代わりに、1つまたは複数の他のアプリケーションサービス110a〜110nの実行に関連して実行することができる。ブロック315で認可されないアプリケーションサービス110a〜110nについて、いくつかの実施形態で、それでも、監査ログファイルを後の分析のためにブロック310で収集することができる。
【0041】
一実施形態によれば、ブロック315の動作は、一般に、実行されつつあるソフトウェアベースの動作の先行する実行経路を定義するために実行経路内の前のアプリケーションサービスの実行中に前に生成された監査ログ情報を分析することを含むことができる。次に、この実行経路を、ソフトウェアベースの動作に関連して格納された1つまたは複数の所定の期待される実行経路と比較して、実際の実行経路が期待される実行経路を満足する(たとえば、同一のまたは同等の動作を実行する)かどうかを判定することができる。期待される実行経路が満足されない(たとえば、期待される実行経路によって定義されない1つまたは複数の動作またはメッセージが生成される)場合には、下のブロック330などで、潜在的な詐欺的活動が発生したと判定することができ、実行すべき後続アクションを判定することができる。
【0042】
1つの例の実施形態では、実行されつつあるアプリケーションサービス110a〜110nに関連するプログラミング命令は、少なくとも部分的に、監査ログ情報の分析と、特定のソフトウェアベースの動作の1つまたは複数の期待される実行経路との比較とを実行することができる。たとえば、アプリケーションサービス110a〜110nを、ネットワーク115を介してメッセージ保証サーバ120からなど、以前に生成された監査ログ情報および期待される実行経路情報を取り出し、実行されつつあるアプリケーションサービス110a〜110nによってローカルに比較を実行するようにプログラムすることができる。もう1つの例として、アプリケーションサービス110a〜110nは、ネットワーク115を介してメッセージ保証サーバ120に認可の要求を開始することができ、このメッセージ保証サーバ120は、期待される実行経路が満足されたか否かの指示を、したがってアプリケーションサービス110a〜110nが継続できるのか例外として潜在的な詐欺を処理しなければならないのかの指示を応答することを可能にするプログラミング命令(たとえば、詐欺検出モジュール135など)を含む。もう1つの例として、ソフトウェアベースの動作のアプリケーションサービス110a〜110nに対する制御は、個々のアプリケーションサービス110a〜110nについて追加のプログラミングが不要になるように、中央で管理される。この例では、集中化されたレビューおよび認可を、ソフトウェアベースの動作に対する制御をそれぞれのアプリケーションサービス110a〜110nに返す前に、メッセージ保証サーバ120によるなど、中央で実行することができる。
【0043】
ブロック315で実行される比較動作を、前に実行されたアプリケーションサービス識別子を1つまたは複数の期待される実行経路によって定義されるアプリケーションサービス識別子と比較すること、システムアプリケーション識別子を1つまたは複数の期待される実行経路によって定義されるシステムアプリケーション識別子と比較すること、コンピュータシステム識別子を1つまたは複数の期待される実行経路によって定義されるコンピュータシステム識別子と比較すること、ソフトウェアモジュール識別子を1つまたは複数の期待される実行経路によって定義されるソフトウェアモジュール識別子と比較すること、メッセージ内容を1つまたは複数の期待される実行経路によって定義される期待されるメッセージ内容と比較すること、ユーザ識別子を1つまたは複数の期待される実行経路によって定義されるユーザ識別子および/またはユーザ特権情報と比較すること、ならびに類似物のうちの1つまたは複数を含むがこれらに限定されない任意の個数の適切な方法に従って実行することができる。前に説明したように、期待される実行経路情報を、監査ログ情報に含まれるか他の形で監査ログ情報を介して入手可能にされる、アプリケーションサービス識別子、システムアプリケーション識別子、ソフトウェアベースの動作識別子、または実行されつつある動作に一意の他のプログラミング命令もしくはソフトウェア情報のうちの1つまたは複数への関連付けに従って取り出すことができる。ブロック315に関する前述の動作が、例示のために提供され、限定的ではないことを了解されたい。
【0044】
ブロック320が、さまざまな実施形態によれば、オプションでブロック315に続くことができる。ブロック320では、2つの異なるアプリケーションサービス110a〜110nの実行の間の時間持続時間と定義される時間間隔を、やはり関連するソフトウェアベースの動作の1つまたは複数の期待される実行経路によって定義される時間間隔しきい値情報と比較することができる。時間間隔は、監査ログ情報の一部として提供されるタイムスタンプ情報によって判定でき、これによって、2つのタイムスタンプの間の差が、2つのアプリケーションサービス110a〜110nの実行の間に経過した持続時間を表す近似時間間隔を定義するはずである。説明されるように、複数のアプリケーションサービス110a〜110nの実行のシーケンス中に、1つまたは複数の間隔しきい値が満足されると期待されるように、1つまたは複数の時間間隔しきい値を、特定のソフトウェアベースの動作について定義することができる。時間間隔しきい値を、2つの連続する動作の間(たとえば、第1の動作と、実行される直後の動作との間)で、または、それらのために1つまたは複数の中間アプリケーションサービスが実行される2つのアプリケーションサービス110a〜110nの間などの2つの連続しない動作の間で定義することができるが、そうである必要はない。監査ログおよび実行経路情報が、期待される実行経路情報に関連する時間間隔しきい値のうちの少なくとも1つが満足されない(たとえば、2つのアプリケーションサービスの間の持続時間が時間間隔しきい値を超える)ことを示す場合には、潜在的な詐欺的動作が発生したと判定することができる。ブロック315で実行される動作と同一のまたは類似する形で、ブロック320の動作を、実行されつつあるアプリケーションサービス110a〜110nによって、メッセージ保証サーバ120(または他の集中化されたシステム)によって、別の関連するコンピュータシステムおよび関連するプログラミング命令によって、またはその任意の組合せによって、部分的に実行することができる。さらに、一実施形態によれば、ブロック315および320の動作は、別々に実行される必要があるのではなく、その代わりに、実行経路情報または時間間隔情報の一方または両方を分析する同一の動作の一部として実行されてもよい。いくつかの実施形態では、ブロック315の動作だけが実行され、他の実施形態では、ブロック320の動作だけが実行されることをさらに了解されたい。
【0045】
ブロック320に続くのが、ブロック325であり、ブロック325では、オプションで、実行されつつあるアプリケーションサービス110a〜110nの実行に関連する動作および/またはメッセージが認可されるかどうかを判定する。一実施形態では、判断ブロック325(およびブロック315〜320)の動作を、アプリケーションサービスエンドポイントについておよび/または任意の他の機密のまたはクリティカルなアプリケーションサービス110a〜110nについてなど、アプリケーションサービス110a〜110nのうちの1つまたはサブセットについてのみ実行することができる。これらの実施形態によれば、それについて認可が実行されないアプリケーションサービス110a〜110nが実行されつつある場合には、監査ログ情報が、ブロック310で収集され、動作は、判断ブロック335に継続する。しかし、それについて認可が実行されるアプリケーションサービス110a〜110nが実行されつつある場合には、実行経路分析および/または時間間隔分析を、説明されるように期待される実行経路および時間間隔しきい値情報に従って実行することができる。実行されつつある実際のソフトウェアベースの動作の実行経路が、ソフトウェアベースの動作に関連する1つまたは複数の期待される実行経路のうちの少なくとも1つを満足する場合、および/または1つまたは複数の時間間隔が1つまたは複数の時間間隔しきい値を超えない場合には、動作は、認可され、判断ブロック335に継続することができる。しかし、実行経路が期待される実行経路のうちの少なくとも1つを満足しない場合、または、1つまたは複数の時間間隔がソフトウェアベースの動作の時間間隔しきい値を満足しない場合には、動作および/またはメッセージが潜在的に詐欺的であると判定することができ、ブロック330で、例外を送出する。
【0046】
ブロック330では、潜在的な詐欺が発生した可能性があることを判定した後に、望み通りに例外を処理することができる。一実施形態では、アプリケーションサービス110a〜110nの動作が停止される(たとえば、動作を防ぐ、それぞれのアプリケーションサービス110a〜110nに送信されるコマンドなど)。一実施形態では、ソフトウェアベースの動作を識別するためおよび潜在的な詐欺の理由(たとえば、実行経路のどの態様が実行されなかったのかおよび/またはどの時間間隔しきい値に違反したのかなど)を示し、オプションでそれに関連するすべてのユーザを識別するためなど、1つまたは複数の詐欺アラートメッセージを生成することができる。詐欺アラートメッセージを、メモリに格納し(たとえば、後の取出、分析、および/または報告などのために)、かつ/または1つもしくは複数のシステムユーザに送信し(たとえば、電子的に、電子メール、インターネット通信、無線通信、ショートメッセージサービス、マルチメディアメッセージサービス、電話呼、ページャメッセージングサービスなど)、望み通りの適当な応答を可能にすることができる。潜在的な詐欺的活動の検出時にブロック330で生成される例外を、実施態様によって異なるものとすることができる、望み通りのさまざまな他の適切な手段に従って処理することができ、前述の例が限定的ではないことを了解されたい。
【0047】
しかし、判断ブロック325で、動作が有効であり、認可される(たとえば、少なくとも1つの期待される実行経路を満足し、かつ/またはそれぞれの時間間隔しきい値を満足するなど)と判定される場合には、動作は、判断ブロック335に継続する。判断ブロック335では、ソフトウェアベースの動作が完了するかどうか、または実行すべき残っているアプリケーションサービス110a〜110nがある(たとえば、ソフトウェアベースの動作の実行経路が完了していない)かどうかを判定する。実行すべき追加のアプリケーションサービス110a〜110nがある(たとえば、実行されつつあるアプリケーションサービス110a〜110nが、アプリケーションサービスエンドポイントではない)場合には、現在のアプリケーションサービス110a〜110nは、実行を許可さされ、動作は、ブロック305へ繰り返し、ブロック305では、次のアプリケーションサービス110a〜110nが実行される。ブロック305〜335を参照して上で説明したものと同一のまたは類似する形で、次の(および後続の)アプリケーションサービス110a〜110nについて、監査ログ情報が収集され、実行経路および/または時間間隔が、オプションで妥当性検査される。しかし、判断ブロック335で、ソフトウェアベースの動作が完了する(たとえば、アプリケーションサービスエンドポイントにある)と判定される場合には、動作はブロック340に継続し、このブロック340では、アプリケーションサービスエンドポイントが、実行を許可され、ソフトウェアベースの動作が、完了を許可される。
【0048】
方法300は、監査ログ情報を収集し、ソフトウェアベースの動作の実行経路および/または時間間隔を分析し終えて、ブロック340の後に終了することができる。
【0049】
図3の参照を続けて、特定の例示的な例をこれから提供する。この例によれば、例のソフトウェアベースの動作は、4つのアプリケーションサービス110a〜110dを含むことができ、アプリケーションサービス110dは、アプリケーションサービスエンドポイントである。この例によれば、例示のために、認可は、アプリケーションサービスエンドポイント110dについて実行されるのみである。したがって、ブロック305では、ソフトウェアベースの動作は、アプリケーションサービス110aを実行することによって開始する。ブロック310では、アプリケーションサービス110aに関係する監査ログ情報が、生成され、格納および後続の分析のためにメッセージ保証サーバ120に送信される。ブロック310〜330は、この例示的な例によれば認可が実行されないので、アプリケーションサービス110aについて完了しない。したがって、判断ブロック335では、追加のアプリケーションサービス110b〜110dが実行されなければならず、ソフトウェアベースのアプリケーションが完了しないと判定される。したがって、動作は、アプリケーションサービス110b〜110cについてブロック305、310、および335に戻って繰り返し、アプリケーションサービス110b〜110cのそれぞれの監査ログ情報を収集する。監査ログ情報を、それぞれのアプリケーションサービス110a〜110dの実行の前に、それぞれのアプリケーションサービス110a〜110dの実行と同時に、またはそれぞれのアプリケーションサービス110a〜110dの実行の後に、収集することができる。
【0050】
動作が、アプリケーションサービスエンドポイント110dについてブロック305に戻って繰り返す時には、ブロック310で、監査ログ情報が、先行するアプリケーションサービス110a〜110cのそれぞれと同一のまたは類似する形で生成され、送信される。しかし、今はアプリケーションサービスエンドポイント110dが実行されつつあり、この例では認可がアプリケーションサービスエンドポイント110dについて実行されるので、ブロック315〜325が実行される。ブロック315では、ソフトウェアベースの動作について以前に生成され、収集された監査ログ情報が、取り出され、分析される。監査ログ情報は、アプリケーションサービス110a、110b、110c、および110dを含むこの特定のソフトウェアベースの動作の実行経路を定義する。これらのそれぞれが(オプションでこの順番で)ソフトウェアベースの動作の期待される実行経路によって定義される場合には、動作は、ブロック335に継続することができ、ブロック335では、動作は、ブロック340に進み、アプリケーションサービス110dの実行を許可し、このソフトウェアベースの動作が完了することを許可する。しかし、アプリケーションサービス110a、110b、110c、および110dのうちの1つまたは複数が期待される実行経路によって定義されない場合、または期待される実行経路によって定義される他のアプリケーションサービスが実行されなかった場合には、これは、以前に実行された動作が、動作をスキップすることまたは特定のソフトウェアベースの動作について定義されず、期待されなかった追加動作を実行することのいずれかによる、ある詐欺的活動を含む可能性があることを示す。この場合には、ブロック330で例外が生成され、それ相応に処理される。
【0051】
したがって、本明細書で説明される実施形態は、システムアプリケーション処理に関連する詐欺を検出するシステムおよび方法を提供する。ある種の実施形態は、メッセージおよび動作保証を先を見越して実行するという技術的効果を提供し、分散コンピューティングシステム内の有効なセキュリティ違反の可能性を減らす。より具体的な技術的効果は、どの動作が実行されたのか、メッセージがどの経路をたどったのか、誰がメッセージを送信しまたは動作を実行したのか、個々の動作にどれほど長くかかったのか、および類似物の妥当性検査を含む、潜在的な詐欺を識別するために1つまたは複数のシステムアプリケーションの正確な動作および関連する実行経路を検証する能力を含む。これらの実施形態は、実行経路に沿ったさまざまな点で、最終的な実行の前に、メッセージ反復攻撃、メッセージインターセプト、システムなりすまし、ならびに/またはソフトウェアベースのメッセージングおよび動作に関する他の詐欺的活動を防ぐ能力を高めるという技術的効果を提供する。さらなる技術的効果は、分散コンピューティング環境内でソフトウェアベースのメッセージングおよび動作を監視し、認可するように動作可能な集中化されたシステムの作成ならびにそのロギングおよび/または通知から生じる。
【0052】
本発明を、上で、本発明の例の実施形態によるシステム、方法、装置、および/またはコンピュータプログラム製品のブロック図および流れ図を参照して説明した。ブロック図および流れ図の1つまたは複数のブロックならびにブロック図および流れ図のブロックの組合せを、それぞれ、コンピュータ実行可能命令によって実施できることを理解されたい。同様に、ブロック図および流れ図のいくつかのブロックは、本発明のいくつかの実施形態によれば、必ずしも提示された順序で実行される必要がない場合があり、あるいは、必ずしも実行される必要がない場合がある。
【0053】
これらのコンピュータ実行可能プログラム命令を、汎用コンピュータ、特殊目的コンピュータ、プロセッサ、または他のプログラマブルデータ処理装置にロードして、コンピュータ、プロセッサ、または他のプログラマブルデータ処理装置上で実行される命令が1つまたは複数の流れ図ブロックで指定される1つまたは複数の機能を実施するための手段を作成するように、特定の機械を作ることができる。これらのコンピュータプログラム命令を、特定の形で機能するようにコンピュータまたは他のプログラマブルデータ処理装置に指示できるコンピュータ可読メモリに格納することもでき、コンピュータ可読メモリに格納された命令は、1つまたは複数の流れ図ブロックで指定される1つまたは複数の機能を実施する命令手段を含む製造品を作るようになる。一例として、本発明の実施形態は、コンピュータ可読プログラムコードまたはプログラム命令をその中で実施されたコンピュータ使用可能媒体を含むコンピュータプログラム製品を提供することができ、前記コンピュータ可読プログラムコードは、1つまたは複数の流れ図ブロックで指定される1つまたは複数の機能を実施するために実行されるように適合される。コンピュータプログラム命令を、コンピュータまたは他のプログラマブルデータ処理装置にロードして、コンピュータまたは他のプログラマブル装置上で実行される命令が1つまたは複数の流れ図ブロックで指定される機能を実施する要素またはステップを提供するようにコンピュータ実施されるプロセスを作るために一連の動作要素またはステップをコンピュータまたは他のプログラマブル装置上で実行させることもできる。
【0054】
したがって、ブロック図および流れ図のブロックは、指定された機能を実行する手段の組合せ、指定された機能を実行する要素またはステップの組合せ、および指定された機能を実行するプログラム命令手段をサポートする。ブロック図および流れ図の各ブロックと、ブロック図および流れ図のブロックの組合せとを、指定された機能、要素、もしくはステップを実行する特殊目的のハードウェアベースのコンピュータシステム、または特殊目的ハードウェアおよびコンピュータ命令の組合せによって実施できることをも理解されたい。
【0055】
本発明を、現在最も実用的なさまざまな実施形態と考えられるものに関連して説明したが、本発明が開示された実施形態に限定されてはならず、逆に、添付の特許請求の範囲の趣旨および範囲に含まれるさまざまな修正形態および同等の配置を包含することが意図されていることを理解されたい。
【0056】
この書かれた説明は、最良の態様を含む本発明を開示するために、また、任意のデバイスもしくはシステムを作り、使用することと任意の組み込まれた方法を実行することとを含めて当業者が本発明を実践することを可能にするために、例を使用する。本発明の特許可能範囲は、特許請求の範囲で定義され、当業者が思い浮かべる他の例を含む可能性がある。そのような他の例は、特許請求の範囲の文字どおりの言葉と異ならない構造要素を有する場合に、または特許請求の範囲の文字どおりの言葉からの実質的ではない相違を有する同等の構造要素を含む場合に、特許請求の範囲に含まれることが意図されている。
【符号の説明】
【0057】
100 システム
105a〜105n システムアプリケーション
110a〜110n アプリケーションサービス
115 ネットワーク
120 メッセージ保証サーバ
125 構成モジュール
130 監査ログモジュール
135 詐欺検出モジュール
140 監査ログデータベース

【特許請求の範囲】
【請求項1】
それぞれが1つまたは複数のシステムアプリケーション(105a〜105n)のうちのそれぞれの1つに関連する複数のアプリケーションサービスの実行を引き起こすソフトウェアベースの動作を実行するステップであって、前記複数のアプリケーションサービス(110a〜110n)の前記実行は、前記ソフトウェアベースの動作の実行経路を定義する、ステップと、
前記ソフトウェアベースの動作の前記実行経路を少なくとも部分的に表すために前記それぞれのアプリケーションサービスの前記実行に関連する前記複数のアプリケーションサービス(110a〜110n)の少なくともサブセットのそれぞれについて監査ログ(130)を生成するステップと、
前記複数のアプリケーションサービス(110a〜110n)のうちの少なくとも1つの実行の前に、前記ソフトウェアベースの動作の前記実行経路が少なくとも1つの事前定義の期待される実行経路を満足するかどうかを判定するために、前記ソフトウェアベースの動作の実行中に以前に生成された監査ログ(130)のそれぞれを分析するステップと
を含む、システムアプリケーション処理に関連する詐欺を検出する方法。
【請求項2】
前記1つまたは複数のシステムアプリケーション(105a〜105n)は、複数のシステムアプリケーション(105a〜105n)を含み、前記複数のアプリケーションサービス(110a〜110n)の少なくとも第1サブセットは、第1システムアプリケーションに関連し、前記複数のアプリケーションサービス(110a〜110n)の少なくとも第2サブセットは、第2システムアプリケーションに関連する、請求項1記載の方法。
【請求項3】
監査ログ(130)は、前記複数のアプリケーションサービス(110a〜110n)のそれぞれについて生成される、請求項1記載の方法。
【請求項4】
監査ログ(130)は、前記複数のアプリケーションサービス(110a〜110n)のサブセットについて生成される、請求項1記載の方法。
【請求項5】
各監査ログ(130)を分析のためにネットワーク(115)を介してメッセージ保証サーバ(120)に送信するステップをさらに含む、請求項1記載の方法。
【請求項6】
以前に生成された前記監査ログ(130)のそれぞれを分析するステップは、前記1つまたは複数のシステムアプリケーション(105a〜105n)のうちの1つのアプリケーションサービスエンドポイントの実行の前に実行される、請求項1記載の方法。
【請求項7】
以前に生成された前記監査ログ(130)のそれぞれを分析するステップは、前記複数のアプリケーションサービス(110a〜110n)の少なくとも1つの追加のアプリケーションサービスについてさらに実行される、請求項6記載の方法。
【請求項8】
前記複数のアプリケーションサービス(110a〜110n)のうちの1つの実行の前に、以前に生成された前記監査ログ(130)のそれぞれを分析するステップは、前記ソフトウェアベースの動作の前記実行経路が少なくとも1つの事前定義の期待される実行経路を満足しないことを判定するステップをさらに含む、請求項1記載の方法。
【請求項9】
前記ソフトウェアベースの動作の前記実行経路が前記少なくとも1つの事前定義の期待される実行経路を満足しないことの判定に応答して、前記複数のアプリケーションサービス(110a〜110n)のうちの前記1つの実行を停止するステップをさらに含む、請求項8記載の方法。
【請求項10】
前記ソフトウェアベースの動作の前記実行経路が前記少なくとも1つの事前定義の期待される実行経路を満足しないことの判定に応答して、潜在的詐欺アラートメッセージ(135)を生成するステップをさらに含む、請求項8記載の方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公開番号】特開2012−150805(P2012−150805A)
【公開日】平成24年8月9日(2012.8.9)
【国際特許分類】
【外国語出願】
【出願番号】特願2012−4535(P2012−4535)
【出願日】平成24年1月13日(2012.1.13)
【出願人】(390041542)ゼネラル・エレクトリック・カンパニイ (6,332)