(58)【調査した分野】(Int.Cl.,DB名)
前記抽出手段は、MACアドレスと位置情報とを対応付けたテーブルを参照し、前記通信経路上において前記リクエスト電文に付加された前記基地局のMACアドレスに対応する位置情報を取得し、
前記提示手段は、取得した前記位置情報に基づいて前記選択肢を決定する請求項2に記載の情報処理装置。
前記抽出手段は、IPアドレスと位置情報とを対応付けたテーブルを参照し、前記通信経路上において前記リクエスト電文に付加された前記基地局のIPアドレスに対応する位置情報を取得し、
前記提示手段は、取得した前記位置情報に基づいて前記選択肢を決定する請求項2に記載の情報処理装置。
前記抽出手段は、所定条件を満たすIPアドレスを指定する情報を参照し、前記通信経路上において前記リクエスト電文に付加された前記基地局のIPアドレスが前記所定条件を満たす場合に、前記リクエスト電文のボディ部に記述された位置情報を取得し、
前記提示手段は、取得した前記位置情報に基づいて前記選択肢を決定する請求項2に記載の情報処理装置。
前記抽出手段は、前記通信経路上において前記リクエスト電文に付加されるMACヘッダにMACアドレスが記述されていない場合に、前記リクエスト電文のボディ部に記述された位置情報を取得し、
前記提示手段は、取得した前記位置情報に基づいて前記選択肢を決定する請求項2に記載の情報処理装置。
前記実行手段は、前記照合手段により照合した結果が不一致となった場合に、不正アクセスに関する情報を管理者に通知する請求項1乃至請求項6のいずれかに記載の情報処理装置。
【発明を実施するための形態】
【0012】
以下、本発明の一実施形態に係る情報処理システムについて、図面を参照しながら詳細に説明する。なお、以下に示す実施形態は本発明の実施形態の一例であって、本発明はこれらの実施形態に限定されるものではない。
【0013】
<実施形態>
本発明の一実施形態に係る情報処理システムについて、図面を参照しながら詳細に説明する。
【0014】
[全体構成]
図1は、本発明の実施形態に係る情報処理システム1000の構成を示す概略図である。情報処理システム1000は、インターネットなどのネットワークNWに接続された情報処理装置1、ネットワークNWおよび基地局5を介して情報処理装置1と接続する端末装置2、およびネットワークNWに接続された参照サーバ6を有する。
【0015】
情報処理装置1は、例えば、インターネットバンキングなどのサービスを、端末装置2のユーザに提供するサーバ装置である。なお、以下に説明する情報処理装置1の各種機能については、1台のサーバ装置のみで実現されるだけでなく、複数のサーバ装置により協働して実現されるようにしてもよい。
【0016】
端末装置2は、携帯電話、スマートフォン、ノートパソコンなどユーザによって利用される装置であり、基地局5を介して情報処理装置1と情報の送受信をする。
【0017】
情報処理装置1と端末装置2とは、この例では、HTTP(HyperText Transfer Protocol)に準拠したプロトコルを用いて情報の通信を行う。この情報の通信に際して、端末装置2は、情報処理装置1に対して送信するHTTPリクエスト電文(以下、単にリクエスト電文という)を送信する。一方、情報処理装置1は、リクエスト電文に対する応答として端末装置2に対してHTTPレスポンス電文(以下、単にレスポンス電文という)を送信する。
【0018】
本発明は、以下に詳述するように、リクエスト電文に基づいて取得される抽出情報を用いて、ユーザに対する質問を生成することにより、セキュリティを向上させることができる。なお、この例においては、HTTPに準拠したプロトコルを用いているが、HTTPに準拠したプロトコルを用いなくてもよい。
【0019】
基地局5は、いわゆる3G(3rd Generation)、LTE(Long Term Evolution)といった携帯電話の情報通信規格(IEEE規格非準拠)により通信を行う基地局、無線LAN(Local Area Network)に用いられる情報通信規格(IEEE規格準拠)により通信を行うアクセスポイントといわれる基地局などを含む概念であり、端末装置2と無線通信を行い、端末装置2をネットワークNWに接続する。
【0020】
端末装置2が基地局5を介して情報処理装置1と通信するときには、通信経路上において、その基地局5を識別する情報が通信されるデータに付加される。例えば、基地局5に割り当てられたIP(Internet Protocol)アドレスがIPヘッダに付加されたり、基地局5に割り当てられたMAC(Media Access Control)アドレスがMACヘッダに付加されたりする。また、携帯電話の情報通信規格においては、HTTPリクエストボディ部に、基地局5の位置を示す位置情報が付加される。
【0021】
[情報処理装置1の構成]
図2は、本発明の実施形態に係る情報処理装置1のハードウエア構成を示すブロック図である。情報処理装置1は、制御部11、記憶部12および通信部13を有する。制御部11は、CPUおよびメモリを有する。制御部11は、記憶部12またはメモリに記憶されているプログラムを実行することにより、後述する通信制御機能などの各種機能を実現する。制御部11によって実現される各種機能により、情報処理装置1の各構成が制御される。記憶部12は、ハードディスクなどであり、各種機能を実現するために必要な情報を記憶する。通信部13は、ネットワークNWを介して他の装置と情報の送受信を行う。
【0022】
[端末装置2の構成]
図3は、本発明の実施形態に係る端末装置2のハードウエア構成を示すブロック図である。端末装置2は、制御部21、記憶部22、通信部23およびタッチパネル24を有する。制御部21は、CPUおよびメモリを有する。制御部21は、記憶部22またはメモリに記憶されているプログラムを実行することにより、各種機能を実現する。制御部21によって実現される各種機能により、端末装置2の各構成が制御される。
【0023】
記憶部22は、半導体メモリなどであり、各種機能を実現するために必要な情報を記憶する。通信部23は、基地局5と無線により接続し、ネットワークNWを介して他の装置と情報の送受信を行う。タッチパネル24は、受信したレスポンス電文に応じた画面を表示させるディスプレイと、ディスプレイ表面へのユーザの接触を検知して、ユーザの操作を受け付け、操作に応じた信号を出力するタッチセンサとを有する。ユーザによる操作がタッチパネル24によって受け付けられると、操作の内容に応じてリクエスト電文が情報処理装置1に送信される。このように、ユーザの指示は、タッチパネル24への操作により端末装置2に入力される。
【0024】
[参照サーバ6の構成]
参照サーバ6は、情報処理装置1と同様な構成を有し、IPアドレスまたはMACアドレスと位置情報とを対応付けた変換テーブルを記憶している。
【0025】
図4は、本発明の実施形態に係る参照サーバ6に記憶された変換テーブルを説明する図である。
図4に示す変換テーブルの例では、アドレス(アドレスA、B、C、・・・)と位置情報(位置A、B、C、・・・)との対応関係を定めている。アドレスは、MACアドレスまたはIPアドレスを示している。位置情報は、例えば、対応するMACアドレスの基地局5の所在地を示す情報である。この例では、位置情報は、市町村までの行政区画により表された情報であるが、より狭い範囲を示す行政区画により表された情報であってもよいし、より広い範囲を示す行政区画(例えば都道府県)により表された情報であってもよい。
【0026】
[情報処理装置1の機能構成]
図5は、本発明の実施形態に係る情報処理装置1の機能構成を示すブロック図である。情報処理装置1は、受信部110、抽出部120、特定部130、提示部140、照合部150、登録部160、実行部170およびデータベース(DB)190により、通信制御機能を実現する。
【0027】
受信部110は、端末装置2からリクエスト電文を受信する。この例では、ユーザを識別する識別情報であるUIDがリクエスト電文の一部に記述されている。例えば、HTTPメソッドとしてGETメソッドが用いられていれば、リクエストラインに記述されるURL(Uniform Resource Locator)の最後に、「https://www.xxx.yyy.jp/members.php?uid=aa12345」といったように記述されることになる。この場合、UIDは「aa12345」となる。
【0028】
抽出部120は、受信したリクエスト電文から、抽出情報およびUIDを取得する。抽出情報とは、この例では、位置関連情報である。抽出情報は、情報処理装置1にアクセスする端末装置2が変わった場合、端末装置2が通信時に接続する基地局5が変わった場合など、通信の状況が変わったときに変化する情報が含まれている。
【0029】
位置関連情報とは、通信経路上の基地局5の位置に関連した情報であり、この例では、MACアドレスまたはIPアドレスである。したがって、位置関連情報は、端末装置2の位置が変わって、別の基地局5に接続された場合にはアドレスが変化する。なお、位置関連情報は、HTTPパケットのうち、MACアドレスである場合にはMACヘッダから取得され、IPアドレスである場合にはIPヘッダから取得される。
【0030】
特定部130は、受信したリクエスト電文からUIDを取得する。特定部130は、データベース190を参照して、このUIDに対応するMACアドレスまたはIPアドレスを特定する。
【0031】
図6は、本発明の実施形態に係るデータベース190に登録された情報を説明する図である。
図6に示すデータベース190の例では、UID(ABC、DEF、GHI、・・・)とアドレス(アドレスXX、アドレスYY、アドレスZZ、・・・)との対応関係を定めている。アドレスは、位置関連情報に対応し、上述と同様に、MACアドレスまたはIPアドレスを示している。UIDとアドレスとの対応関係は、登録部160によってデータベース190に登録される。
【0032】
提示部140は、参照サーバ6の変換テーブルを参照して、特定部130によって特定されたMACアドレスまたはIPアドレスに対応する位置情報(以下、特定位置情報という)を取得する。提示部140は、特定位置情報を選択肢に含む複数の位置情報を選択肢とし、ユーザに提示して、いずれかを選択させるための選択画面(
図9参照)を生成する。この選択肢は、ユーザが前回取引をした場所がどこであるかを選択させるために提示される。取引をした場所とは、ユーザが使用した端末装置2が情報処理装置1に対してアクセスをした位置、より正確にはこのアクセスをしたときに端末装置2が接続した基地局5の位置に相当する。
【0033】
ここで、選択肢となる位置情報のうち特定位置情報以外については、所定のアルゴリズムにしたがって決定される。例えば、日本国内外の市町村がランダムに決定されたり、特定位置情報の位置から所定の距離以上離れた市町村がランダムに決定されたり、データベース190に登録された位置情報から決定されたり、参照サーバ6の変換テーブルに含まれる位置情報から決定されたりすればよい。
【0034】
提示部140は、リクエスト電文を送信した端末装置2に対して、生成した選択画面を表示させる情報を含むレスポンス電文を送信する。端末装置2からは、選択画面に表示された複数の選択肢からユーザが選択した結果(以下、選択位置情報という)を含むリクエスト電文が情報処理装置1に送信される。
【0035】
照合部150は、ユーザが選択した結果(選択位置情報)を含むリクエスト電文を受信し、選択位置情報と特定位置情報とを照合する。両者が一致している場合にはユーザの選択が正しいことを示し、両者が異なっている場合にはユーザの選択が誤りであることを示している。すなわち、正当なユーザであれば前回の取引場所を知っているはずであるため正しい選択が可能である。一方、UIDを不正に取得することによりアクセスを試みたユーザであれば前回の取引場所を知らないため誤った選択をする可能性が非常に高くなる。この選択結果により、正当なユーザであるかどうかを認証することができる。
【0036】
登録部160は、照合部150による照合結果から、ユーザが正しい選択をしている場合に、抽出部120において取得されたUIDと位置関連情報(MACアドレスまたはIPアドレス)との対応関係をデータベース190に登録する。一方、ユーザが誤った選択をした場合には、この対応関係のデータベース190への登録を行わない。なお、抽出部120が照合部150において受信したリクエスト電文からUIDと位置関連情報とを取得するようにし、登録部160は、照合部150において受信したリクエスト電文から取得されたUIDと位置関連情報との対応関係をデータベース190に登録してもよい。すでにUIDに対応する位置関連情報が登録されている場合には、上書きして更新してもよいし、時系列に複数世代にわたって登録するようにしてもよい。
【0037】
実行部170は、照合部150による照合結果に基づいて、リクエスト電文の応答として端末装置2に送信するレスポンス電文の記述内容を決定する処理を実行する。実行部170は、例えば、照合部150による照合結果から、ユーザが正しい選択をしている場合に、端末装置2からのアクセスをしたユーザを認証して、リクエスト電文の要求に対応したレスポンス電文を、リクエスト電文の応答として送信する。
【0038】
一方、ユーザが誤った選択をしている場合には、UIDが一致していても別のユーザがアクセスをしている可能性が高い。そのため、アクセスをしたユーザを認証せず、その端末装置2からのアクセスを受け付けないことを通知するレスポンス電文を、リクエスト電文の応答として送信する。なお、その後、一定期間、その端末装置2からのアクセスを遮断してもよい。また、情報処理装置1の管理者に不正アクセスに関する情報が通知されるようにしてもよい。管理者の通知先(電子メールアドレスなど)は情報処理装置1に予め設定されていればよい。不正アクセスに関する情報は、予め決められた定形文を用いた情報であってもよいし、不正アクセスに対応するリクエスト電文に関する情報が含まれていてもよい。
【0039】
[通信フロー]
図7は、本発明の実施形態に係る情報処理装置1および端末装置2の処理を示す通信フロー図である。まず、端末装置2は、特定のサービス(インターネットバンキングなど)へのログイン指示がユーザから入力される(ステップS111)。このサービスへのログイン指示は、端末装置2のタッチパネル24に表示されたログイン画面にて行われる。
【0040】
図8は、本発明の実施形態に係るタッチパネル24に表示されるログイン画面を説明する図である。タッチパネル24に表示されたログイン画面には、UID(ユーザID)の入力領域、パスワードの入力領域、操作されるとログイン指示が入力されるログインボタンB1が表示される。UIDとパスワードとが入力された後、ログインボタンB1が操作されると、ログイン指示が入力されて、UIDおよびパスワードを含むリクエスト電文が送信される。
【0041】
図7に戻って説明を続ける。端末装置2は、ログイン指示にもとづいてリクエスト電文を生成して送信する(ステップS112)。このリクエスト電文には、上記サービスを受けるためのユーザを識別するUIDが含まれている。また、通信経路上において、端末装置2が無線で接続する基地局5を識別する情報(この例ではMACアドレス)が付加される。
【0042】
情報処理装置1は、リクエスト電文を受信すると、リクエストラインからUIDを取得する(ステップS121)。情報処理装置1は、データベース190を参照して、取得したUIDに対応するMACアドレスを特定する(ステップS122)。特定されるMACアドレスは、同じユーザが前回ログイン指示したときに送信されるリクエスト電文のMACヘッダに記述されたアドレスである。
【0043】
情報処理装置1は、参照サーバ6の変換テーブルを参照して、特定したMACアドレスに対応する位置情報(特定位置情報)を取得する(ステップS123)。情報処理装置1は、特定位置情報を選択肢に含む複数の位置情報を選択肢とした選択画面を生成し(ステップS124)、生成した選択画面を表示させる情報を含むレスポンス電文を送信する(ステップS125)。端末装置2は、レスポンス電文を受信すると、選択画面を表示する(ステップS131)。
【0044】
図9は、本発明の実施形態に係るタッチパネル24に表示される選択画面を説明する図である。選択画面には、前回の取引場所としての複数の選択肢(「北海道札幌市」、「宮城県仙台市」、・・・)、および回答ボタンB2が表示される。この複数の選択肢のいずれかが特定位置情報である。ユーザによって複数の選択肢のいずれかが指定され、回答ボタンB2が操作されると、指定された位置情報が選択される。
【0045】
図7に戻って説明を続ける。端末装置2は、複数の選択肢として提示された位置情報からユーザによっていずれかの位置情報が選択されると(ステップS132)、選択された結果(選択位置情報)を含むリクエスト電文を送信する(ステップS133)。
【0046】
情報処理装置1は、リクエスト電文に含まれる選択位置情報と、ステップS123において取得した特定位置情報とを照合する(ステップS141)。選択位置情報と特定位置情報とが一致している場合には、ステップS112においてリクエスト電文を送信した端末装置2のユーザ(以下、ユーザAという)と、ステップS133においてリクエスト電文を送信した端末装置2のユーザ(以下、ユーザBという)とが同じである可能性が高い。したがって、ステップS133において送信されたリクエスト電文が、ユーザAの指示により端末装置2から送信された電文であると判定する。
【0047】
したがって、情報処理装置1は、選択位置情報と特定位置情報が一致した場合、ステップS112またはS133において送信されたリクエスト電文に含まれるUIDとMACアドレスとの対応関係をデータベース190に登録する(ステップS142)。このようにしてデータベース190に登録されたUIDとMACアドレスとの対応関係は、次にユーザAがアクセスしたときのユーザの認証に用いられる。また、情報処理装置1は、リクエスト電文の要求に応じたレスポンス電文を生成し(ステップS143)、端末装置2にリクエスト電文の応答として送信する(ステップS144)。なお、ステップS143、S144の処理の後に、ステップS142が処理されるようにしてもよい。
【0048】
一方、選択位置情報と特定位置情報とが一致していない場合には、ユーザAとユーザBとが異なっている可能性が高い。したがって、ステップS133において送信されたリクエスト電文が、ユーザAを偽装したユーザBからの送信であると判定し、情報処理装置1は、アクセスを受け付けないことを通知するレスポンス電文を生成し(ステップS143)、リクエスト電文の応答として送信する(ステップS144)。また、この場合には、データベース190には、UIDとMACアドレスとの対応関係は登録されない。
【0049】
このように、情報処理装置1においては、端末装置2から前回アクセスされた位置に対応する特定位置情報と、複数の選択肢からユーザが選択した選択位置情報とを照合する。したがって、ユーザが前回のアクセスの位置を知っているかどうかにより、情報処理装置1へのアクセスした端末装置2のユーザが正当なユーザであるかどうかを認証することができ、セキュリティの向上が可能である。
【0050】
<変形例>
以上、本発明の実施形態およびその実施例について説明したが、本発明は以下のように、様々な態様で実施可能である。
【0051】
[変形例1]
上述した実施形態においては、データベース190には、UIDと位置関連情報との対応関係が登録されていたが、UIDと位置情報との対応関係が登録されていてもよい。この場合、HTTPリクエストボディ部に記述された位置情報が用いられてもよい。
【0052】
変形例1に係る情報処理システムの構成については、実施形態と同様な構成であるが、変換テーブルに加えて、アドレス指定情報が参照サーバ6に記憶されている。なお、変換テーブルとアドレス指定情報とが異なるサーバに記憶されていてもよい。
【0053】
アドレス指定情報とは、所定条件を満たすアドレスを指定する情報であって、例えば、携帯電話の情報通信規格(IEEE規格非準拠)の基地局5のIPアドレスを指定する情報である。
【0054】
図10は、本発明の変形例1に係る参照サーバ6に記憶されたアドレス指定情報を説明する図である。
図10に示すアドレス指定情報の例では、IPアドレスとプレフィックス値との組み合わせにより、IPアドレスの範囲を指定している。この範囲に含まれるIPアドレスが割り当てられた基地局5は、携帯電話の情報通信規格(IEEE規格非準拠)で通信している。この基地局5を介してリクエスト電文が送信されるときには、HTTPリクエストボディ部に、基地局5の位置を示す位置情報が付加される。本変形例では、このように付加される位置情報を利用するものである。
【0055】
図11は、本発明の変形例2に係る位置情報を取得する処理を示すフローチャートである。まず、抽出部120は、リクエスト電文からIPアドレスを取得し、アドレス指定情報を参照して、取得したIPアドレスが含まれているかどうかを判定する(ステップS211)。IPアドレスが含まれている場合(ステップS211;Yes)には、HTTPリクエストボディ部に記述された位置情報を取得する(ステップS213)。一方、IPアドレスが含まれていない場合(ステップS211;No)には、リクエスト電文からMACアドレス(またはIPアドレス)を取得し、参照サーバ6に記憶されている変換テーブルを参照して、位置情報を取得する(ステップS212)。そして、登録部160は、位置関連情報とUIDとの対応関係ではなく、抽出部120が取得した位置情報とUIDとの対応関係をデータベース190に登録する。
【0056】
この場合には、特定部130は、データベース190を参照して、位置関連情報を特定するのではなく位置情報を特定する。そして、この位置情報は、提示部140において特定位置情報として用いられる。
【0057】
[変形例2]
上述した実施形態においては、データベース190には、UIDと位置関連情報との対応関係が登録されていたが、変形例1と同様にUIDと位置情報との対応関係が登録されていてもよい。この場合、HTTPリクエストボディ部に記述された位置情報が用いられてもよい。
【0058】
変形例2に係る情報処理システムの構成については、変形例1と同様な構成である。また、変形例2は、変形例1と同様に、携帯電話の情報通信規格(IEEE規格非準拠)の基地局5を介してリクエスト電文が送信されるときに、HTTPリクエストボディ部に付加される位置情報を利用するものである。変形例1では、アドレス指定情報を用いて、基地局5が携帯電話の情報通信規格を用いているかどうかを判定していたが、変形例2においては、別の方法で判定する場合について説明する。
【0059】
図12は、本発明の変形例2に係る位置情報を取得する処理を示すフローチャートである。まず、抽出部120は、リクエスト電文のMACヘッダを参照し、MACアドレスの記述があるかどうか判定する(ステップS311)。MACアドレスが記述されている場合(ステップS311;Yes)には、リクエスト電文からMACアドレス(またはIPアドレス)を取得し、参照サーバ6に記憶されている変換テーブルを参照して、位置情報を取得する(ステップS312)。一方、MACアドレスが記述されていない場合(ステップS311;No)には、HTTPリクエストボディ部に記述された位置情報を取得する(ステップS313)。そして、登録部160は、位置関連情報とUIDとの対応関係ではなく、抽出部120が取得した位置情報とUIDとの対応関係をデータベース190に登録する。
【0060】
この場合には、特定部130は、データベース190を参照して、位置関連情報を特定するのではなく位置情報を特定する。そして、この位置情報は、提示部140において特定位置情報として用いられる。
【0061】
[変形例3]
上述した実施形態において、HTTPヘッダに設定されているユーザエージェント情報を用いた認証を組み合わせてもよい。変形例3に係る情報処理システムの構成については、実施形態と概ね同様な構成であるが、データベース190に登録されている情報、提示部140の動作などが異なっている。以下、実施形態とは異なる点を主として説明する。
【0062】
この例では、提示部140は、前回のアクセスのときに送信されたリクエスト電文のHTTPヘッダに設定されているユーザエージェント情報と、今回のアクセスのときのユーザエージェント情報とについて、ユーザエージェント情報の少なくとも一部の情報(例えば、端末装置2の機種)について照合し、一致していなかった場合に、
図7に示すステップS122以降の処理を行うようにする。
【0063】
図13は、本発明の変形例3に係るデータベース190に登録された情報を説明する図である。
図13に示すように、変形例3に係るデータベース190は、UIDとアドレスとの対応関係に加えて、さらにユーザエージェント情報についても対応付けられている。ユーザエージェント情報は、HTTPヘッダに設定されている「User-Agent」の部分に記述された情報の少なくとも一部のことを示すものとし、この例では、端末装置2の機種を表す情報(機種A、機種B、・・・)である。なお、ユーザエージェント情報は、端末装置2において使用しているブラウザの種類であってもよい。
【0064】
図14は、本発明の変形例3に係る情報処理装置1の処理を示すフローチャートである。まず、情報処理装置1は、UIDを取得する(ステップS121)。ステップS121については、実施形態における処理(
図7におけるステップS121)と同様である。
【0065】
続いて、情報処理装置1(特定部130)は、データベース190を参照して、取得したUIDに対応するユーザエージェント情報を特定し、受信したリクエスト電文のHTTPヘッダに設定されているユーザエージェント情報と照合する(ステップS411)。照合した結果、双方のユーザエージェント情報が一致しなかった場合(ステップS412;No)には、実施形態における
図7のステップS122の処理に進む。一方、双方のユーザエージェント情報が一致した場合(ステップS412;Yes)には、実施形態における
図7のステップS143の処理に進み、実施形態の一部の処理(この例では、ユーザが複数の選択肢からいずれかを選択することに関する処理)が省略されるようにしてもよい。
【0066】
[変形例4]
上述した実施形態においては、抽出情報は、位置関連情報を用いたが、別の情報を用いてもよいし、さらにこれらを組み合わせて用いてもよい。別の情報としては、例えば、HTTPヘッダの内容、端末装置2に記憶されて端末装置2を識別する端末識別情報(CPUのシリアル番号など)、取引時刻(取引時間帯)などがある。例えば、HTTPヘッダの内容のうち、端末装置2の機種を抽出情報とした場合には、選択画面においてユーザに対して提示される複数の選択肢は、端末装置の様々な機種名となる。