(57)【要約】【課題】認証プロセス中に、不正なプログラムに感染した端末からアクセスされるリスクを低減する手段を講じた認証技術を提供する。【解決手段】認証サーバ１００は、第一認証、第二認証を行う前に、端末３００が不正なプログラムに感染しているリスクを低減するための端末感染対策を実行し、その端末感染対策の実行結果に基づいて、前記認証を継続して実行するか否かを決定する。端末感染対策では、認証サーバ１００は、利用者が使用中の端末の属性情報、利用者のアカウント情報、およびサービスを提供するアプリケーションサーバの組み合わせごとに、端末の感染リスクを低減するために用いる対抗プログラムを適用した結果に基づいて対抗プログラムを選定する。次に、認証サーバ１００は、選定した対抗プログラムを端末３００に適用し、実行結果を収集し、その実行結果に基づいて、前記認証の継続可否を決定する。【選択図】図２
2011204050.tif 000002
【特許請求の範囲】
【請求項１】
サービス利用を要求する利用者の正当性を確認するための認証を行う認証装置であって、
前記利用者の使用する端末が感染した不正なプログラムを除去するための対抗プログラムを適用したときの実行結果を記憶している記憶手段と、
前記利用者の認証要求を受信したとき、前記記憶手段に記憶している前回までの実行結果に基づいて、前記認証要求を送信した端末に適用する前記対抗プログラムを選定する対抗プログラム選定手段と、
選定された前記対抗プログラムを前記端末に適用する適用手段と、
前記適用手段を実行して不正なプログラムが除去できたか否かを実行結果として新たに収集する収集手段と、
新たに収集した当該実行結果に基づいて、前記利用者の認証を実行するか否かを決定する決定手段と、
を備えることを特徴とする認証装置。
【請求項２】
前記記憶手段に記憶している前回までの実行結果に、新たに収集した前記実行結果を累積して、前記記憶手段に記憶する前記実行結果を更新する更新手段、
を備えることを特徴とする請求項１に記載の認証装置。
【請求項３】
前記決定手段は、
前記対抗プログラム選定手段によって選定された対抗プログラムが不正プログラムを発見したが、その不正プログラムを除去できなかった場合、前記認証手段を継続して実行しないと決定し、
前記対抗プログラム選定手段によって選定された対抗プログラムが不正プログラムを発見しなかった場合および当該選定された対抗プログラムのいずれかが発見した不正プログラムをすべて除去できた場合、前記認証手段を継続して実行すると決定する
ことを特徴とする請求項１または請求項２に記載の認証装置。
【請求項４】
前記対抗プログラム選定手段において、
前記対抗プログラムごとに、前記記憶手段に記憶されている前記実行結果に基づいて、前記対抗プログラムとして選定される確率の高さを適用率として算出し、前記適用率と演算するごとに発生させた乱数とを乗算し、
その乗算結果が所定の条件を満足する場合、当該抵抗プログラムを選定する
ことを特徴とする請求項１ないし請求項３のいずれか一項に記載の認証装置。
【請求項５】
前記適用率は、前記サービスを提供するアプリケーションサーバ、前記端末の装備に係る属性情報、および前記利用者のアカウントに係る属性情報の組み合わせごとに算出される
ことを特徴とする請求項４に記載の認証装置。
【請求項６】
前記端末の装備に係る属性情報は、ＭＡＣアドレス（Media Access Control address）、前記端末の型を示す機器タイプ、オペレーティングシステム、Ｗｅｂブラウザ、および回線速度のいずれかまたはすべてを要素として含む
ことを特徴とする請求項５に記載の認証装置。
【請求項７】
サービス利用を要求する利用者の正当性を確認するための認証を行う認証装置において用いられる認証方法であって、
前記認証装置は、
前記利用者の使用する端末が感染した不正なプログラムを除去するための対抗プログラムを適用したときの実行結果を記憶している記憶手段を備え、
前記認証装置は、
前記利用者の認証要求を受信したとき、前記記憶手段に記憶している前回までの実行結果に基づいて、前記認証要求を送信した端末に適用する前記対抗プログラムを選定する対抗プログラム選定ステップと、
選定された前記対抗プログラムを前記端末に適用する適用ステップと、
前記適用ステップを実行して不正なプログラムが除去できたか否かを実行結果として新たに収集する収集ステップと、
新たに収集した当該実行結果に基づいて、前記利用者の認証を実行するか否かを決定する決定ステップと、
を実行することを特徴とする認証方法。
【請求項８】
前記認証装置は、さらに、
前記記憶手段に記憶している前回までの実行結果に、新たに収集した前記実行結果を累積して、前記記憶手段に記憶する前記実行結果を更新する更新ステップ、
を実行することを特徴とする請求項７に記載の認証方法。
【請求項９】
前記認証装置は、
前記決定ステップにおいて、
前記対抗プログラム選定ステップによって選定された対抗プログラムが不正プログラムを発見したが、その不正プログラムを除去できなかった場合、前記利用者の正当性を確認するための認証を継続して実行しないと決定し、
前記対抗プログラム選定ステップによって選定された対抗プログラムが不正プログラムを発見しなかった場合および当該選定された対抗プログラムのいずれかが発見した不正プログラムをすべて除去できた場合、前記利用者の正当性を確認するための認証を継続して実行すると決定する
ことを特徴とする請求項７または請求項８に記載の認証方法。
【請求項１０】
前記認証装置は、
前記対抗プログラム選定ステップにおいて、
前記対抗プログラムごとに、前記記憶手段に記憶されている前記実行結果に基づいて、前記対抗プログラムとして選定される確率の高さを適用率として算出し、前記適用率と演算するごとに発生させた乱数とを乗算し、
その乗算結果が所定の条件を満足する場合、当該抵抗プログラムを選定する
ことを特徴とする請求項７ないし請求項９のいずれか一項に記載の認証方法。
【請求項１１】
前記適用率は、前記サービスを提供するアプリケーションサーバ、前記端末の装備に係る属性情報、および前記利用者のアカウントに係る属性情報の組み合わせごとに算出される
ことを特徴とする請求項１０に記載の認証方法。
【請求項１２】
前記端末の装備に係る属性情報は、ＭＡＣアドレス、前記端末の型を示す機器タイプ、オペレーティングシステム、Ｗｅｂブラウザ、および回線速度のいずれかまたはすべてを要素として含む
ことを特徴とする請求項１１に記載の認証方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、不正なプログラムに感染した端末からアクセスされるリスクを低減する手段を講じた認証技術に関する。
【背景技術】
【０００２】
利用者にサービスを提供するシステムにおいて、サービスの利用者の正当性を確認する認証技術として、パスワードを用いて認証する知識認証、ＩＣカードやトークン等の認証デバイスを用いて認証する所有物認証、指紋や指静脈を用いて認証する生体認証が広く知られている。特に、インターネットバンキング等の分野においては、高いセキュリティが求められるため、前記した認証のいずれかを組み合わせた複数要素認証によって安全性を高めることが一般的になってきている（非特許文献１）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】南博通、「実効性を重視する米国インターネットバンキングの認証対策」、ＩＴソリューションフロンティア、２００７年９月
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、近年、インターネットバンキング等を狙ったサイバー攻撃が急速に高度化しており、非特許文献１に示すような複数要素認証では対抗できない攻撃が出現してきている。
複数要素認証では防げない攻撃例として、ブラウザ感染型の攻撃を挙げることができる。ブラウザ感染型の攻撃では、以下のプロセスを経て不正が行われる。
・プロセス１：攻撃者は、スパムメール等のフィッシング手段で利用者を不正サイトに誘導し、不正なプログラムを利用者の端末に感染させる。
・プロセス２：利用者は、不正プログラムに感染した端末からインターネットバンキングを提供するサーバにアクセスする。このとき、不正なプログラムは、利用者が認証手続きを行っている間は何も挙動を起こさない。
・プロセス３：複数要素認証等の認証プロセスを経て認証が成功し、利用者の端末とサーバとの間のセッションが確立したことをトリガとして、不正なプログラムが起動され、セッションが乗っ取られる。
【０００５】
このように、ブラウザ感染型の攻撃は、認証プロセスそのものを無力化してしまうため、認証プロセスだけを堅牢化する従来型のアプローチでは全く対抗できない。
そこで、本発明では、認証プロセス中に、不正なプログラムに感染した端末からアクセスされるリスクを低減する手段を講じた認証技術を提供することを課題とする。
【課題を解決するための手段】
【０００６】
前記課題を解決するために、利用者の正当性を確認するための認証を行う認証サーバは、認証を行う前に、端末が不正なプログラムに感染しているリスクを低減するための端末感染対策を実行し、その端末感染対策の実行結果に基づいて、認証を継続して実行するか否かを決定する。端末感染対策では、認証サーバは、利用者が使用中の端末の属性情報、利用者のアカウント情報、およびサービスを提供するアプリケーションサーバの組み合わせごとに、端末の感染リスクを低減するために用いる対抗プログラムを適用した結果に基づいて対抗プログラムを選定する。次に、認証サーバは、選定した対抗プログラムを端末に適用し、実行結果を収集する。そして、認証サーバは、端末感染対策の実行結果として、端末の感染を除去できた場合には、認証を継続して実行すると決定し、端末の感染を除去できなかった場合には、認証を継続して実行しないと決定する。
【発明の効果】
【０００７】
本発明によれば、認証プロセス中に、不正なプログラムに感染した端末からアクセスされるリスクを低減する手段を講じた認証技術を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態における認証システムの構成の一例を示す図である。
【図２】認証システムにおける処理フローの一例を示す図である。
【図３】認証サーバの構成の一例を示す図である。
【図４】アカウント登録の処理フローの一例を示す図である。
【図５】アカウント管理ＤＢの一例を示す図である。
【図６】端末管理ＤＢの一例を示す図である。
【図７】認証ステータス管理ＤＢの一例を示す図である。
【図８】ステップＳ２０４における処理フローの一例を示す図である。
【図９】ステップＳ８１１における処理フローの一例を示す図である。
【図１０】端末感染リスク管理ＤＢの一例を示す図である。
【図１１】端末感染対策管理ＤＢの一例を示す図である。
【図１２】調整パラメータの構成の一例を示す図である。
【図１３】端末感染リスク管理部の処理フローの一例を示す図である。
【図１４】端末感染対策管理部の処理フローの一例を示す図である。
【発明を実施するための形態】
【０００９】
次に、本発明を実施するための形態（以降、「本実施形態」と称す）について、適宜図面を参照しながら詳細に説明する。
【００１０】
（概要）
本実施形態における認証システムの構成について、図１を用いて説明する。認証システム１は、利用者の正当性（利用者がサービスを利用する権限を有していること）を確認するための認証を行う認証サーバ１００、利用者からサービス利用の要求を受け付けてサービスを提供するアプリケーションサーバ２００、および利用者が使用する端末３００が、ネットワーク４００を介して通信可能に接続する構成を備えている。認証サーバ１００は、１台以上のアプリケーションサーバ２００から利用者認証の要求を受け付けて、認証処理を実行し、認証結果を返信する。アプリケーションサーバ２００は、１台以上の端末３００に対して、サービス利用要求を受け付けて、認証サーバ１００から受信した認証結果に基づいて、サービスを提供する。なお、認証サーバ１００は、図１では１台しか記載していないが、２台以上であっても構わない。また、図１では、認証サーバ１００は、ネットワーク４００に接続しているが、ネットワーク４００とは別のネットワーク（不図示）を介して、アプリケーションサーバ２００と接続していても構わない。
【００１１】
次に、認証システム１における処理フローについて、図２を用いて説明する。
ステップＳ２０１では、利用者は、端末３００を用いて、契約済みのサービスを提供するアプリケーションサーバ２００に対して、サービス利用要求を行う。この際、事前に登録済みのアカウントＩＤが用いられる。
ステップＳ２０２では、アプリケーションサーバ２００は、サービス利用要求を受信すると、受信したアカウントＩＤを認証サーバ１００に送信し、利用者のサービス利用権限についての状況確認と本人確認を要求する。
【００１２】
ステップＳ２０３では、認証サーバ１００は、既に記憶されている利用者のアカウント情報を参照して、受信したアカウントＩＤに関連付けられている端末感染対策に必要な情報や、第一認証および第二認証に必要な情報を取得する。なお、端末感染対策に必要な情報や、第一認証および第二認証に必要な情報については、後記する。
【００１３】
ステップＳ２０４では、認証サーバ１００は、端末３００と連携して、端末感染対策を実行し、不正なプログラム（マルウェア等）に感染した端末３００から、アプリケーションサーバ２００がアクセスされるリスクを低減する。なお、端末感染対策として、対抗プログラムを端末３００に適用した結果、不正なプログラムを発見しなかった場合および不正なプログラムを発見し除去できた場合（ステップＳ２０４でＯＫ）には、ステップＳ２０５へ進み、不正なプログラムを発見したが除去できなかった場合（ステップＳ２０４でＮＧ）には、ステップＳ２０７へ進む。なお、ステップＳ２０４における端末感染対策の詳細については、後記する。
【００１４】
ステップＳ２０５では、認証サーバ１００は、端末３００と連携して、第一認証を実行し、利用者の認証を行う。第一認証では、例えば、知識認証が用いられ、利用者に対してパスワードの入力を要求し、認証サーバ１００において利用者が入力したパスワードを検証する。なお、認証結果が正当である場合（ステップＳ２０５でＯＫ）には、ステップＳ２０６へ進み、認証結果が正当でない場合（ステップＳ２０５でＮＧ）には、ステップＳ２０７へ進む。
【００１５】
ステップＳ２０６では、認証サーバ１００は、端末３００と連携して、第二認証を実行し、利用者の認証を行う。第二認証では、例えば、所有物認証が用いられ、認証サーバ１００が乱数を端末３００に送信し、端末３００がソフトウェアトークンに格納された秘密鍵を用いて乱数に署名して認証サーバ１００に返信し、認証サーバ１００がソフトウェアトークンの公開鍵を用いて署名を検証する。
ステップＳ２０７では、認証サーバ１００は、認証結果を認証ステータスとして記録する、認証ステータス管理を実行する。
ステップＳ２０８では、認証サーバ１００は、認証結果をアプリケーションサーバ２００に送信する。
【００１６】
ステップＳ２０９では、アプリケーションサーバ２００は、認証サーバ１００から認証結果を受信する。アプリケーションサーバ２００は、認証結果が正当である場合（ステップＳ２０９でＯＫ）、ステップＳ２１１へ進む。また、認証結果が正当でない場合（ステップＳ２０９でＮＧ）、認証結果が正当でない場合、認証できない旨を認証結果として端末３００へ送信する。
ステップＳ２１０では、端末３００は、アプリケーションサーバ２００から認証結果を受信し、利用者に認証不可を表示する。
ステップＳ２１１では、アプリケーションサーバ２００は、認証結果が正当である場合、サービス提供を開始する。
ステップＳ２１１では、端末３００は、サービス利用を開始する。
【００１７】
（認証サーバ）
認証サーバ１００の構成について、図３を用いて説明する。認証サーバ１００は、処理部１１０、記憶部１２０、通信制御部１３０を備える。処理部１１０は、コンピュータのＣＰＵ（Central Processing Unit）とメインメモリとで構成され、記憶部１２０に格納されているアプリケーションプログラムをメインメモリに展開して、アカウント管理部１１１、第一認証処理部１１２、第二認証処理部１１３、端末感染リスク管理部１１４、端末感染対策管理部１１５、端末感染対策実行部１１６、および認証ステータス管理部１１７を具現化する。ここでは、各部１１１〜１１７の機能について簡単に説明し、詳細については後記する。
【００１８】
アカウント管理部１１１は、利用者のプロファイルおよび各アプリケーションサーバ２００が提供するサービスに対する利用権限を管理する。また、アカウント管理部１１１は、端末３００からサービス利用要求を受け付ける。
第一認証処理部１１２は、第一の認証を実行する。第一の認証では、例えば、知識認証が用いられる。
第二認証処理部１１３は、第二の認証を実行する。第二の認証では、例えば、所有物認証が用いられる。
【００１９】
端末感染リスク管理部１１４は、アプリケーションサーバ２００ごとに、アプリケーションサーバ２００へアクセスしてきた端末３００の感染状況を管理する
端末感染対策管理部１１５は、アプリケーションサーバ２００ごとに、端末感染に対応する対策を管理する。
端末感染対策実行部１１６は、対抗プログラムの実行結果に基づいて端末３００の感染リスクを低減するための対抗プログラムの選定を行い、端末感染対策を実行し、端末３００が不正なプログラムに感染しているリスクを低減する。また、端末感染対策実行部１１６は、端末感染対策の実行結果に基づいて、認証の継続可否を決定する。
認証ステータス管理部１１７は、認証結果を認証ステータスとして記録し、認証ステータス管理を行う。
【００２０】
記憶部１２０は、アカウント管理ＤＢ１２１、端末管理ＤＢ１２２、端末感染リスク管理ＤＢ１２３、端末感染対策管理ＤＢ１２４、および認証ステータス管理ＤＢ１２５を記憶している。ここでは、各ＤＢ１２１〜１２５の格納している情報を簡単に説明し、詳細については後記する。
【００２１】
アカウント管理ＤＢ１２１は、利用者のプロファイル、および各アプリケーションサーバ２００が提供するサービスの利用権限を記憶している。
端末管理ＤＢ１２２は、利用者による能動的な登録に基づく端末３００の装備に係る端末情報、および端末感染対策の実行によって得られる対策履歴を記憶している。
端末感染リスク管理ＤＢ１２３は、アプリケーションサーバ２００ごとに、認証処理の中で得られる端末３００の感染状況を記憶している。
端末感染対策管理ＤＢ１２４は、アプリケーションサーバ２００、アカウント属性、および端末属性の組み合わせごとに、端末３００が不正なプログラムに感染しているリスクを低減する対策を記憶している。なお、アカウント属性および端末属性については後記する。
認証ステータス管理ＤＢ１２５は、認証ステータス管理部１１７の処理結果を、アカウントごとに記憶している。
【００２２】
通信制御部１３０は、ネットワーク４００を介して、アプリケーションサーバ２００と通信するための制御を実行する。
【００２３】
（アカウント登録）
認証サーバ１００では、認証を行う際に用いる情報を予め登録しておく必要がある。そこで、アカウント登録の処理フローについて、図４を用いて説明する。
ステップＳ４０１では、端末３００は、アプリケーションサーバ２００に、アカウント申請を行う。
ステップＳ４０２では、アプリケーションサーバ２００は、アカウント申請を受け付ける。
ステップＳ４０３では、アプリケーションサーバ２００は、アカウント登録に必要な申請フォームを端末３００に送信する。
【００２４】
ステップＳ４０４では、端末３００は、受信した申請フォームに必要事項を記入する。
ステップＳ４０５では、端末３００は、記入済みの申請フォームをアプリケーションサーバ２００に返信する。
ステップＳ４０６では、アプリケーションサーバ２００は、記入済みの申請フォームを受信する。
ステップＳ４０７では、アプリケーションサーバ２００は、申請内容をチェックする。そして、申請内容に不備があった場合（ステップＳ４０７でＮＧ）、ステップＳ４０４へ戻り、端末３００によって申請フォームが再入力される。また、申請内容に不備がない場合（ステップＳ４０７でＯＫ）、アプリケーションサーバ２００は、申請内容の情報を認証サーバ１００に送信する。
【００２５】
ステップＳ４０８では、認証サーバ１００のアカウント管理部１１１は、申請内容の情報を受信し、アカウント管理ＤＢ１２１を更新する。なお、アカウント管理ＤＢ１２１の詳細については後記する。
ステップＳ４０９では、認証サーバ１００のアカウント管理部１１１は、申請内容の情報を受信し、端末管理ＤＢ１２２を更新する。なお、端末管理ＤＢ１２２の詳細については後記する。
ステップＳ４１０では、認証サーバ１００のアカウント管理部１１１は、データベース更新通知（データベース更新が完了したこと）をアプリケーションサーバ２００に送信する。
【００２６】
ステップＳ４１１では、アプリケーションサーバ２００は、データベース更新通知を受信する。
ステップＳ４１２では、アプリケーションサーバ２００は、端末３００に対して登録通知（アカウント申請が完了したこと）を送信する。
ステップＳ４１３では、端末３００は、登録通知を受信する。そして、端末３００は、アカウント申請が完了したことを画面に表示して利用者に通知する。
以上により、アカウント登録処理が終了する。
【００２７】
（アカウント管理ＤＢ）
アカウント管理ＤＢ１２１に格納される情報について、図５を用いて説明する。
アカウント管理ＤＢ１２１に格納される情報は、認証サーバ１００が自動的に設定するアカウントＩＤ１２１ａごとに管理される。アカウントＩＤ１２１ａごとに、利用者を識別するための利用者ＩＤ１２１ｂ、第一認証に用いる第一認証情報１２１ｃ、第二認証に用いる第二認証情報１２１ｄを記憶している。また、アカウント登録を必要とするアプリケーションサーバ２００について、アプリケーションサーバＩＤと契約状況１２１ｅとを関連付けて記憶している。さらに、アプリケーションサーバＩＤごとに、アプリケーションサーバ２００に接続する際に使用可能な端末３００を識別する端末ＭＡＣアドレス（Media Access Control address）と、認証を行うときに、安全性重視／利便性重視／チェック不要等のように、端末３００の感染リスクを低減する度合い（不正プログラムを除去する割合の大きさ）を表す端末チェックポリシ１２１ｆと、を関連付けて記憶している。前記したアカウント属性とは、アカウント管理ＤＢ１２１に格納されている契約状況１２１ｅおよび端末チェックポリシ１２１ｆを要素として備えることを表している。
【００２８】
端末チェックポリシ１２１ｆは、接続中の端末３００の感染リスクを評価するために、端末チェックをどの程度強力に行う必要があるかを判定するときに参照される。例えば、端末チェックポリシ１２１ｆが「チェック不要」となっている場合は、端末チェックの必要性がないと判断される。また、端末チェックポリシ１２１ｆが「安全性重視」あるいは「利便性重視」となっている場合は、端末チェックの必要性があると判断される。そして、「安全性重視」の場合には、端末チェックの回数を「利便性重視」の場合よりも多くして、感染リスクを低減する度合いを高くする。
【００２９】
なお、本実施形態では、第一認証ではパスワードを用いた知識認証、第二認証ではソフトウェアトークンによる所有物認証を想定しており、アカウント申請時に利用者が記入する項目としては、利用者ＩＤ、第一認証情報（パスワード）、端末チェックポリシ１２１ｆを想定している。また、アカウント申請時に認証システム１００が自動的に取得する項目としては、第二認証情報、契約状況、端末ＭＡＣアドレスを想定するが、これに限られない。
【００３０】
（端末管理ＤＢ）
端末管理ＤＢ１２２に格納される情報について、図６を用いて説明する。
端末管理ＤＢ１２２に格納される情報は、認証サーバ１００が自動的に設定する端末ＩＤ１２２ａごとに管理される。端末ＩＤ１２２ａごとに、個々の端末３００の装備に係る情報である端末情報１２２ｂと、端末３００の危険リスクの低減のために施された対策の結果を示す対策履歴１２２ｃと、を記憶している。端末属性とは、この端末情報１２２ｂに格納されている情報を要素として備えることを表している。
端末情報１２２ｂは、ＭＡＣアドレス、端末３００がノートＰＣ（Personal Computer）や携帯電話等である場合にその型を示す機器タイプ、オペレーティングシステム、Ｗｅｂブラウザ、ネットワークの回線速度等である。
【００３１】
対策履歴１２２ｃは、端末３００ごとに、端末感染対策を施した履歴を時系列で記録したものであり、対策日時、サービス利用要求先のアプリケーションサーバＩＤ、適用した対抗プログラム、対抗プログラム実行結果である。なお、対抗プログラム実行結果の欄には、対抗プログラムを適用する必要がない場合は「チェック不要」を記録し、不正プログラムを発見しなかった場合は「適用不能」を記録し、不正プログラムを発見し除去できた場合は「適用成功」を記録し、不正プログラムを発見したが除去できなかった場合は「適用失敗」を記録する。
【００３２】
なお、本実施形態では、アカウント申請時に利用者が記入する項目としては、機器タイプ、オペレーティングシステム、Ｗｅｂブラウザ、を想定している。また、認証システム１００が自動的に取得する項目としては、ＭＡＣアドレス、回線速度を想定するが、これに限られない。
【００３３】
（認証ステータス管理ＤＢ）
認証ステータス管理ＤＢ１２５に格納される情報について、図７を用いて説明する。
認証ステータス管理ＤＢ１２５に格納される情報は、認証サーバ１００が自動的に設定する認証ＩＤごとに管理される。認証ＩＤごとに、利用者を識別するアカウントＩＤ、接続してきた端末３００を識別する端末ＩＤ、アプリケーションサーバＩＤ、認証結果を示す認証ステータス、認証日時を関連付けて記憶している。認証ステータスの欄には、図２に示す端末感染対策実行（ステップＳ２０４）、第一認証（ステップＳ２０５）、および第二認証（ステップＳ２０６）において、認証結果がすべて正当である場合には「ＯＫ」、認証結果のいずれかが正当でない場合には「ＮＧ」が記録される。なお、認証結果は、端末感染対策の結果、第一認証の結果、および第二認証の結果ごとに記録しても構わない。
【００３４】
（図２におけるステップＳ２０４の処理フロー）
図２におけるステップＳ２０４（端末感染対策実行）の処理フローの詳細について、図８を用いて説明する（適宜、図３参照）。
ステップＳ８０１では、認証サーバ１００の端末感染対策実行部１１６は、認証要求元の端末３００に対し、端末３００を識別するための情報（端末識別子）の提供を要求する。本実施形態では、端末識別子として端末３００のＭＡＣアドレスを用いる。
ステップＳ８０２では、端末３００は、端末識別子の提供要求を受信する。
ステップＳ８０３では、端末３００は、ＭＡＣアドレスを認証サーバ１００に送信する。
ステップＳ８０４では、認証サーバ１００の端末感染対策実行部１１６は、端末識別子（ＭＡＣアドレス）を受信する。
【００３５】
ステップＳ８０５では、認証サーバ１００の端末感染対策実行部１１６は、受信したＭＡＣアドレスを持つ端末３００が既に端末管理ＤＢ１２２に登録済みか否かを判定する。
ＭＡＣアドレスが登録済みであると判定した場合（ステップＳ８０５でＹｅｓ）、既に端末情報を収集済みであると判断されて、ステップＳ８０６〜Ｓ８０９をスキップして、ステップＳ８１０へ進む。なお、ＭＡＣアドレス以外の情報、例えばオペレーティングシステムや接続アプリケーション等の情報は、利用者によって変更される可能性があるため、ステップＳ８０５の判定結果に係わらず、所定の手順で情報収集を実行してもよい。
【００３６】
また、ＭＡＣアドレスが登録済みでないと判定した場合（ステップＳ８０５でＮｏ）、ステップＳ８０６では、認証サーバ１００のアカウント管理部１１１は、端末情報収集要求を端末３００へ送信する。
ステップＳ８０７では、端末３００は、端末情報収集要求を受信すると、自身の端末情報を、利用者へ問い合わせたり、自動収集したりして収集する。
ステップＳ８０８では、端末３００は、端末情報を認証サーバ１００へ送信する。
なお、本実施形態では、利用者への問い合わせで収集する項目として機器タイプ、オペレーティングシステム、Ｗｅｂブラウザを想定し、自動的に収集する項目としては、ＭＡＣアドレス、回線速度を想定しているが、これに限られない。
ステップＳ８０９では、認証サーバ１００のアカウント管理部１１１は、端末情報を受信すると、端末管理ＤＢ１２２を更新する。
【００３７】
ステップＳ８１０では、認証サーバ１００の端末感染対策実行部１１６は、接続中の端末３００の感染リスクを評価するために、端末チェックを行う必要があるか否かを判定する。
本実施形態においては、端末チェック要否の判定は、端末チェックポリシ１２１ｆ（図５参照）を参照して、端末３００とアプリケーションサーバ２００との組み合わせごとに行われる。すなわち、端末チェックポリシ１２１ｆが「チェック不要」となっている場合は、端末チェックの必要がない（ステップＳ８１０でＮｏ）と判定し、ステップＳ８１２〜Ｓ８１４をスキップして、ステップＳ８１５へ進む。一方、端末チェックポリシ１２１ｆが「安全性重視」あるいは「利便性重視」となっている場合、端末チェックの必要性がある（ステップＳ８１０でＹｅｓ）と判定し、ステップＳ８１１に進む。
【００３８】
ステップＳ８１１では、認証サーバ１００の端末感染対策実行部１１６は、対抗プログラムの選定を実行する。対抗プログラム選定では、ブラウザ感染型の攻撃にともなう端末３００の感染リスクを事前に取り除くために、多種多様な対抗プログラムの中から適用を試みる対抗プログラムを高速かつ高精度に選定する。なお、この対抗プログラム選定の詳細については後記する。
【００３９】
ステップＳ８１２では、認証サーバ１００の端末感染対策実行部１１６は、選定した対抗プログラムを送信する。なお、本実施形態では、認証サーバ１００の端末感染対策実行部１１６が、対抗プログラムを格納している、図示しない外部システムへのアクセス情報（例えば、アドレス情報）を送信することとする。また、認証サーバ１００の端末感染対策実行部１１６が、自身が記憶している対抗プログラムを送信してもよい。また、端末３００が対抗プログラムを記憶していて、認証サーバ１００の端末感染対策実行部１１６から指示された対抗プログラムの識別番号に対応する対抗プログラムを実行するようにしてもよい。
【００４０】
ステップＳ８１３では、端末３００は、ステップＳ８１１で選定された対抗プログラムを実行する。
ステップＳ８１４では、端末３００は、対抗プログラムの実行結果を、認証サーバ１００へ送信する。例えば、該当する不正プログラムを発見しなかった場合は「適用不能」を送信し、該当する不正プログラムを発見し除去できた場合は「適用成功」を送信し、該当する不正プログラムを発見したが除去できなかった場合は「適用失敗」を送信する。
【００４１】
ステップＳ８１５では、認証サーバ１００の端末感染対策実行部１１６は、受信した実行結果を、端末管理ＤＢ１２２の対策履歴１２２ｃ（図６参照）に登録する。なお、ステップＳ８１０の端末チェック要否判定で、端末チェックの必要がないと判定した場合（ステップＳ８１０でＮｏ）、認証サーバ１００の端末感染対策実行部１１６は、端末管理ＤＢ１２２の対策履歴１２２ｃに「チェック不要」と記録する。
【００４２】
そして、認証サーバ１００の端末感染対策実行部１１６は、ステップＳ８１１で選定した対抗プログラムの実行結果が「適用失敗」であった場合、図２に示すステップＳ２０５、Ｓ２０６をスキップして、処理をステップＳ２０７へ進める。すなわち、端末感染対策実行部１１６は、第一認証および第二認証を継続して実行しないと決定する。また、端末感染対策実行部１１６は、ステップＳ８１１で選定した対抗プログラムの実行結果が、不正プログラムを発見しなかった場合および当該選定された対抗プログラムのいずれかが発見した不正プログラムを除去できた場合、第一認証および第二認証を継続して実行すると決定する。
【００４３】
（図８のステップＳ８１１における処理フロー）
ここで、ステップＳ８１１（対抗プログラム選定）の処理フローの詳細について、図９を用いて説明する（適宜、図３参照）。このステップＳ８１１における処理では、認証サーバ１００の端末感染リスク管理部１１４は、認証処理の中で得られる端末３００の感染状況を端末感染リスク管理ＤＢ１２３（図１０参照）に記憶する。また、認証サーバ１００の端末感染対策管理部１１５は、端末３００の感染リスクを低減する対抗プログラムとそれを適用した実行結果（効果）とを関連付けて、端末感染対策管理ＤＢ１２４（図１１参照）に記憶する。そして、認証サーバ１００の端末感染対策実行部１１６は、端末感染リスク管理ＤＢ１２３および端末感染対策管理ＤＢ１２４を参照しつつ、適用すべき対抗プログラムを選定する。なお、端末感染リスク管理ＤＢ１２３および端末感染対策管理ＤＢ１２４については後記する。
【００４４】
ステップＳ９０１では、端末感染対策実行部１１６は、対抗プログラムとして選定するか否かを判定するために、まず、判定していない対抗プログラムがあるか否かを調べる。判定していない対抗プログラムがない場合（すべての対抗プログラムについて判定を行った場合）、処理を終了する。また、判定していない対抗プログラムがある場合、ステップＳ９０２へ進む。
ステップＳ９０２では、端末感染対策実行部１１６は、判定していない対抗プログラムの中から一つを選択する。
ステップＳ９０３では、端末感染対策実行部１１６は、処理部１１０によって生成した乱数を取得する。
ステップＳ９０４では、端末感染対策実行部１１６は、端末感染対策管理ＤＢ１２４（図１１参照）の適用条件１２４ａを参照して、該対抗プログラムを適用したときに不正プログラムの除去に成功した（適用成功の）度合いを示す調整適用率を取得する。なお、調整適用率については後記する。
【００４５】
ステップＳ９０５では、端末感染対策実行部１１６は、乱数と調整適用率とを乗算する。
ステップＳ９０６では、端末感染対策実行部１１６は、ステップＳ９０５における乗算結果が所定の条件を満足するか否かを判定する。この判定では、例えば、乗算結果が予め設定しておいた所定の閾値以上の場合を、所定の条件を満足するものとしても構わない。そして、乗算結果が所定の条件を満足しない場合（ステップＳ９０６でＮｏ）、ステップＳ９０１へ戻る。また、乗算結果が所定の条件を満足する場合（ステップＳ９０６でＹｅｓ）、ステップＳ９０７へ進む。
ステップＳ９０７では、端末感染対策実行部１１６は、乗算結果が所定の条件を満足する対応プログラムを、対抗プログラムに選定する。すなわち、端末感染対策実行部１１６は、選定した対抗プログラムの適用を決定する。ただし、選定する対抗プログラムの数を所定の値以内にする制限を加えてもよい。なお、「安全性重視」の場合には、選定する対抗プログラムの数を「利便性重視」の場合よりも多くすることによって、端末チェックの回数を多くし、感染リスクの低減を図る。
【００４６】
（端末感染リスク管理ＤＢ）
ここで、端末感染リスク管理ＤＢ１２３の構成について、図１０を用いて説明する（適宜、図３参照）。
端末感染リスク管理ＤＢ１２３は、アプリケーションサーバ２００ごとに、対抗プログラムの適用を試みた端末３００について感染状況を記憶している。図１０に示すように、端末感染リスク管理ＤＢ１２３には、アプリケーションサーバＩＤごとに、アプリケーションサーバ２００の属性として、サーバ名、サーバＵＲＬ（Uniform Resource Locator）、ＩＰ（Internet Protocol）アドレス、端末感染リスク等が記憶されている。そして、端末感染リスクとして、不正プログラム、感染確認数、リスクレベル、不正プログラムを除去するための対抗プログラムが記憶されている。なお、リスクレベルとは、不正プログラムごとに、感染確認数に応じて予め定められた所定の変換規則によって算出され、本実施形態ではそのレベルを０〜１００としている。リスクレベルが大きいほど、不正プログラムに感染したときの損害が大きいことを表している。
【００４７】
（端末感染対策管理ＤＢ）
次に、端末感染対策管理ＤＢ１２４の構成について、図１１を用いて説明する。
図１１に示すように、端末感染対策管理ＤＢ１２４は、アプリケーションサーバＩＤ、利用者のアカウント属性、および端末属性の組み合わせごとに、対抗プログラムの適用条件１２４ａと適用結果１２４ｂとを記憶している。適用条件１２４ａは、すべての対抗プログラムに対して個々の対抗プログラムの標準適用率と調整適用率とを記憶している。
【００４８】
標準適用率とは、端末属性およびアカウント属性を考慮せずにアプリケーションサーバＩＤごとに一意に決定した適用率であって、対抗プログラムごとに算出される。標準適用率は、本実施形態では、端末感染リスク管理ＤＢ１２３（図１０参照）のリスクレベルの値と、対抗プログラムを適用した回数に対して不正プログラムを除去できた回数の割合等とを勘案して予め定められた所定の変換規則を用いて算出した値である。例えば、対抗プログラムに選定される確率を高くするに従って、標準適用率が大きくなるように算出する。
また、調整適用率は、端末属性およびアカウント属性の組み合わせごとに定義した適用率であって、例えば、図１１に示すように、端末属性およびアカウント属性の組み合わせごとに算出された調整パラメータの値が「＋１０」であった場合、標準適用率の値にその調整パラメータの値を加算して算出される。すなわち、適用条件１２４ａに示すように、標準適用率の値が「２０％」、かつ調整パラメータの値が「＋１０」の場合、調整適用率は「３０％」となる。なお、調整パラメータの詳細については、後記する。
【００４９】
また、図１１に示すように、適用結果１２４ｂは、対抗プログラムごとに、端末への適用試行回数および適用成功回数を記憶している。
【００５０】
次に、調整パラメータについて、図１２を用いて説明する。
図１２に示すように、調整パラメータは、端末属性のクラスタＩＤとアカウント属性のクラスタＩＤとの組み合わせごとに定義される。クラスタＩＤは、１つ以上の属性情報を予め決めておいた所定のクラスタリング規則によって１つ以上のクラスタに分類することにより決定される。例えば、端末属性としてアプリケーションサーバ２００へ接続するＷｅｂブラウザの種別（図６参照）を用い、アカウント属性として利用者が設定する端末チェックポリシ１２１ｆ（図５参照）を用いることが考えられる。図１２に示した例では、端末属性のクラスタＩＤが「２」、アカウント属性のクラスタＩＤが「３」の場合、調整パラメータの値は「＋１０」であることが分かる。
そして、図１１の適用条件１２４ａに示すように、調整パラメータの値は、標準適用率の値に加算されて、調整適用率の値が算出される。ただし、調整適用率の値を算出するとき、調整パラメータの値に重みを付けてから、標準適用率の値に加算しても構わない。
【００５１】
（端末感染リスク管理部の処理フロー）
端末感染リスク管理部１１４の処理フローについて、図１３を用いて説明する（適宜、図３参照）。
ステップＳ１３０１では、端末感染リスク管理部１１４は、定期的に起動される。なお、この起動は、自動であっても手動であっても構わない。
ステップＳ１３０２では、端末感染リスク管理部１１４は、端末管理ＤＢ１２２（図６参照）の対策履歴１２２ｃを参照して、前回起動時から今回起動時に該当する範囲の情報を取得する。
ステップＳ１３０３では、端末感染リスク管理部１１４は、アプリケーションサーバＩＤごとに、感染確認数を集計する。つまり、端末感染リスク管理部１１４は、対策履歴１２２ｃの「対抗プログラム実行結果」の欄に記録されている、「適用成功」および「適用失敗」の数を集計する。
ステップＳ１３０４では、端末感染リスク管理部１１４は、アプリケーションサーバＩＤごとに、感染確認数を更新し、予め感染確認数に対応して定めておいた変換規則に基づいてリスクレベルを算出し、端末感染リスクＤＢ１２３（図１０参照）に格納している情報を更新する。
【００５２】
（端末感染対策管理部の処理フロー）
端末感染対策管理部１１５の処理フローについて、図１４を用いて説明する（適宜、図３参照）。
ステップＳ１４０１では、端末感染対策管理部１１５は、定期的に起動される。なお、この起動は、自動であっても手動であっても構わない。
ステップＳ１４０２では、端末感染対策管理部１１５は、端末管理ＤＢ１２２（図６参照）の対策履歴１２２ｃを参照して、前回起動時から今回起動時に該当する範囲の対抗プログラムの実行結果を収集する。
【００５３】
ステップＳ１４０３では、端末感染対策管理部１１５は、収集した実行結果のうち、アプリケーションサーバＩＤ、端末属性のクラスタＩＤ、およびアカウント属性のクラスタＩＤの組み合わせごとに、各対抗プログラムの実行結果を集計する。
ステップＳ１４０４では、端末感染対策管理部１１５は、端末感染対策管理ＤＢ１２４の適用結果１２４ｂ（図１１参照）について、前回起動時から今回起動時に該当する範囲の適用試行回数および適用成功回数をそれぞれ前回の値に累積するように更新する。なお、適用成功回数は、図６に示す端末管理ＤＢ１２２の対策履歴１２２ｃにおいて、「対抗プログラム実行結果」欄が「適用成功」となった数である。
【００５４】
ステップＳ１４０５では、端末感染対策管理部１１５は、予め実行結果の統計情報に応じて定めておいたパラメータ調整規則に基づいて、調整パラメータの値を更新する。また、端末感染対策管理部１１５は、端末感染リスク管理ＤＢ１２３（図１０参照）からリスクレベルを取得して、標準適用率を算出し、更新する。そして、端末感染対策管理部１１５は、更新した調整パラメータの値と更新した標準適用率の値とを用いて、調整適用率を算出し、更新する。なお、調整パラメータのパラメータ調整規則として、例えば、適用成功率（＝適用成功回数÷適用試行回数）の百分率を用いる。ただし、このパラメータ調整規則は一例であり、適用成功回数が増加するに従って、調整パラメータの値が増加する特性を備えるものであっても構わない。
【００５５】
以上、本実施形態では、認証サーバ１００は、第一認証および第二認証を行う前に、端末３００が不正なプログラムに感染しているリスクを低減するための端末感染対策を実行し、その端末感染対策の実行結果に基づいて、認証を継続して実行するか否かを決定する。端末感染対策では、認証サーバ１００は、利用者が使用中の端末３００の属性情報、利用者のアカウント情報、およびサービスを提供するアプリケーションサーバ２００の組み合わせごとに、端末３００の感染リスクを低減するために用いる対抗プログラムを適用した結果に基づいて対抗プログラムを選定する。次に、認証サーバ１００は、選定した対抗プログラムを端末に適用し、実行結果を収集する。そして、認証サーバ１００は、端末感染対策の実行結果として、端末３００の感染を除去できた場合には、認証を継続して実行すると決定し、端末の感染を除去できなかった場合には、認証を継続して実行しないと決定する。このように構成したので、認証プロセス中に、不正なプログラムに感染した端末からアクセスされるリスクを低減する手段を講じた認証技術を提供することができる。
【符号の説明】
【００５６】
１      認証システム
１００  認証サーバ
１１０  処理部
１１１  アカウント管理部
１１２  第一認証処理部
１１３  第二認証処理部
１１４  端末感染リスク管理部
１１５  端末感染対策管理部
１１６  端末感染対策実行部
１１７  認証ステータス管理部
１２０  記憶部
１２１  アカウント管理ＤＢ
１２１ｅ  契約状況
１２１ｆ  端末チェックポリシ
１２２  端末管理ＤＢ
１２２ｂ  端末情報
１２２ｃ  対策履歴
１２３  端末感染リスク管理ＤＢ
１２４  端末感染対策管理ＤＢ
１２４ａ  適用条件
１２４ｂ  適用結果
１２５  認証ステータス管理ＤＢ
２００  アプリケーションサーバ
３００  端末
【図１】
2011204050.tif 000003
【図２】
2011204050.tif 000004
【図３】
2011204050.tif 000005
【図４】
2011204050.tif 000006
【図５】
2011204050.tif 000007
【図６】
2011204050.tif 000008
【図７】
2011204050.tif 000009
【図８】
2011204050.tif 000010
【図９】
2011204050.tif 000011
【図１０】
2011204050.tif 000012
【図１１】
2011204050.tif 000013
【図１２】
2011204050.tif 000014
【図１３】
2011204050.tif 000015
【図１４】
2011204050.tif 000016