IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社三菱東京UFJ銀行の特許一覧

特許7544889認証サーバ、認証プログラム及び認証方法
<>
  • 特許-認証サーバ、認証プログラム及び認証方法 図1
  • 特許-認証サーバ、認証プログラム及び認証方法 図2
  • 特許-認証サーバ、認証プログラム及び認証方法 図3
  • 特許-認証サーバ、認証プログラム及び認証方法 図4
  • 特許-認証サーバ、認証プログラム及び認証方法 図5
  • 特許-認証サーバ、認証プログラム及び認証方法 図6
  • 特許-認証サーバ、認証プログラム及び認証方法 図7
  • 特許-認証サーバ、認証プログラム及び認証方法 図8
  • 特許-認証サーバ、認証プログラム及び認証方法 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-08-26
(45)【発行日】2024-09-03
(54)【発明の名称】認証サーバ、認証プログラム及び認証方法
(51)【国際特許分類】
   G06F 21/31 20130101AFI20240827BHJP
   G06F 21/55 20130101ALI20240827BHJP
【FI】
G06F21/31
G06F21/55 320
【請求項の数】 6
(21)【出願番号】P 2023032265
(22)【出願日】2023-03-02
【審査請求日】2023-03-02
(73)【特許権者】
【識別番号】598049322
【氏名又は名称】株式会社三菱UFJ銀行
(74)【代理人】
【識別番号】100117592
【弁理士】
【氏名又は名称】土生 哲也
(72)【発明者】
【氏名】大谷 昭彦
【審査官】田中 啓介
(56)【参考文献】
【文献】特開2007-200211(JP,A)
【文献】特開2015-103090(JP,A)
【文献】国際公開第2020/021608(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F12/14、21/00-21/88
G06Q10/00-99/00
G16Z99/00
H04L51/00-51/58
H04L67/00-67/75
(57)【特許請求の範囲】
【請求項1】
IDとパスワードの組合せによってユーザの本人認証を行う認証サーバであって、
IDとパスワードが指定されたユーザの認証要求を受け付けると、前記IDと前記パスワードが認証を許可する条件に合致するかを確認して、前記条件に合致すれば前記ユーザを本人と認証する所定の認証処理を実行するユーザ認証手段と、
IDとパスワードが指定されたユーザの認証要求に対し、前記IDと前記パスワードの組合せが認証を許可する条件に合致せず認証エラーとなったエラー情報に、パスワードを固定しながらIDを次々に変更してログインを試みるリバースブルートフォース攻撃に該当するかを判断するためのルール又はモデルを適用して、リバースブルートフォース攻撃に用いられた可能性がある不正パスワードを特定する不正パスワード特定手段と、
前記不正パスワード特定手段が特定した不正パスワードについて、前記不正パスワードに対応するユーザのIDに関する情報を含まない前記不正パスワードに関する情報を、IDとパスワードの組合せによってユーザの本人認証を行う他の認証サーバと共有するための所定の処理を実行する不正パスワード共有手段と、を備え、
前記ユーザ認証手段は、受け付けた認証要求に指定されたパスワードが前記不正パスワード特定手段によって特定された不正パスワードに該当する認証要求に対しては、認証エラーとして前記認証処理を実行しないこと
を特徴とする認証サーバ。
【請求項2】
各々のユーザの本人認証に用いられるIDとパスワードの組合せに関する情報を格納するユーザ情報格納手段と、
前記他の認証サーバから、前記不正パスワード共有手段によって共有された不正パスワードに対応するユーザのIDに関する情報を共有するリクエストを受信すると、前記不正パスワードが本人認証に用いられる一又は二以上のユーザのIDを前記ユーザ情報格納手段から読み出して、前記IDに関する情報を前記他の認証サーバと共有するための所定の処理を実行するID共有手段を備えること
を特徴とする請求項1記載の認証サーバ。
【請求項3】
前記不正パスワード共有手段は、他の認証サーバと共有する不正パスワードに関する情報に、前記不正パスワードが指定された認証要求を送信したユーザ端末を識別するアドレス情報を含めて、前記他の認証サーバと共有するための所定の処理を実行すること
を特徴とする請求項1記載の認証サーバ。
【請求項4】
前記ユーザ認証手段は、前記認証処理が実行されたユーザとのセッションが継続している間の所定のタイミングで、前記本人認証に用いられたパスワードが新たに前記不正パスワード特定手段により特定された不正パスワードに該当しないかを確認する処理を繰り返して、前記パスワードが不正パスワードに該当することとなった場合は、前記セッションを中断するための所定の処理を実行すること
を特徴とする請求項1乃至いずれかに記載の認証サーバ。
【請求項5】
IDとパスワードの組合せによってユーザの本人認証を行うコンピュータに、
IDとパスワードが指定されたユーザの認証要求を受け付けると、前記IDと前記パスワードが認証を許可する条件に合致するかを確認して、前記条件に合致すれば前記ユーザを本人と認証する所定の認証処理を実行するユーザ認証ステップと、
IDとパスワードが指定されたユーザの認証要求に対し、前記IDと前記パスワードの組合せが認証を許可する条件に合致せず認証エラーとなったエラー情報に、パスワードを固定しながらIDを次々に変更してログインを試みるリバースブルートフォース攻撃に該当するかを判断するためのルール又はモデルを適用して、リバースブルートフォース攻撃に用いられた可能性がある不正パスワードを特定する不正パスワード特定ステップと、
前記不正パスワード特定ステップで特定した不正パスワードについて、前記不正パスワードに対応するユーザのIDに関する情報を含まない前記不正パスワードに関する情報を、IDとパスワードの組合せによってユーザの本人認証を行う他の認証サーバと共有するための所定の処理を実行する不正パスワード共有ステップと、を実行させ、
前記ユーザ認証ステップにおいて、受け付けた認証要求に指定されたパスワードが前記不正パスワード特定ステップで特定された不正パスワードに該当する認証要求に対しては、認証エラーとして前記認証処理を実行させないこと
を特徴とする認証プログラム。
【請求項6】
IDとパスワードの組合せによってユーザの本人認証を行うコンピュータが、IDとパスワードが指定されたユーザの認証要求を受け付けると、前記IDと前記パスワードが認証を許可する条件に合致するかを確認して、前記条件に合致すれば前記ユーザを本人と認証する所定の認証処理を実行するユーザ認証ステップと、
前記コンピュータが、IDとパスワードが指定されたユーザの認証要求に対し、前記IDと前記パスワードの組合せが認証を許可する条件に合致せず認証エラーとなったエラー情報に、パスワードを固定しながらIDを次々に変更してログインを試みるリバースブルートフォース攻撃に該当するかを判断するためのルール又はモデルを適用して、リバースブルートフォース攻撃に用いられた可能性がある不正パスワードを特定する不正パスワード特定ステップと、
前記コンピュータが、前記不正パスワード特定ステップで特定した不正パスワードについて、前記不正パスワードに対応するユーザのIDに関する情報を含まない前記不正パスワードに関する情報を、IDとパスワードの組合せによってユーザの本人認証を行う他の認証サーバと共有するための所定の処理を実行する不正パスワード共有ステップと、を有していて、
前記コンピュータは、前記ユーザ認証ステップにおいて、受け付けた認証要求に指定されたパスワードが前記不正パスワード特定ステップで特定された不正パスワードに該当する認証要求に対しては、認証エラーとして前記認証処理を実行しないこと
を特徴とする認証方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、IDとパスワードの組合せによってユーザの本人認証を行う認証サーバ、認証プログラム及び認証方法に関するものである。
【背景技術】
【0002】
ユーザが会員登録を行って利用するインターネット上の様々なサービスでは、ユーザを識別するIDと、ユーザのみが知っているパスワードの組合せによって、ユーザの本人認証を行うことが広く行われている。こうしたサービスでは、サービス提供側に設置される認証サーバのデータベースに、各々のユーザの本人認証に用いられるIDとパスワードの組合せが関連付けて保存されており、サービスの利用開始時には、ユーザがIDとパスワードを入力してアカウントにログインするための本人認証を要求する。これを受け付けた認証サーバでは、データベースを検索してIDの存在とパスワードの一致を確認し、両者が確認されればアカウントへのログインの処理が行われて、サービスの利用が可能になる。
【0003】
こうしたサービスにおいて問題となっているのが、悪意の第三者が任意のIDとパスワードを入力し、不正にログインを行って、アカウントを乗っ取ろうとすることへの対応である。典型的な攻撃方法として、IDを固定しながらパスワードを次々に変更してアクセスを試みるブルートフォース攻撃(BF攻撃)が知られているが、BF攻撃に対しては、同一のIDに対してパスワードの不一致による認証エラーが短時間に一定回数連続すると、そのIDに対応するアカウントをロックすることで対処することが可能である(図1の上図、特許文献1の段落0004参照)。
【0004】
これに対して、BF攻撃とは逆にパスワードを固定しながらIDを次々に変更してログインを試みるのが、リバースブルートフォース攻撃(RBF攻撃)である。RBF攻撃ではIDが次々と変更されるので、BF攻撃のようにID毎の認証結果を監視していても認証エラーが連続することはなく、BF攻撃と同様の対策を行うことができないため(図1の下図参照)、その対処法が深刻な課題となっている。
【0005】
こうした課題に対しては、例えば、ID(ユーザ識別情報)とハッシュ化したパスワードを用いてユーザの本人認証を行うサーバ装置において、認証の際に、同一のハッシュ値について異なるIDとの組合せで閾値を超える回数の認証エラーが生じていないかを確認して、閾値を超えている場合はRBF攻撃と判断する発明が開示されている(特許文献1の段落0018等)。その他にも、同一セッションにおいて連続するアクセス要求で、同一パスワードに対して異なるIDの入力が繰り返された場合に、不正な攻撃(RBF攻撃に相当)と判断する発明が開示されている(特許文献2の段落0043-0045等)。
【先行技術文献】
【特許文献】
【0006】
【文献】特許第6545404号公報
【文献】米国特許出願公開第2008/60078号明細書
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1記載の発明は、ユーザ(クライアント装置)にパスワードのハッシュ化に用いられる乱数を送信し、パスワードと乱数から生成されたハッシュ値を認証に用いるチャレンジ・アンド・レスポンス方式を前提としているため、悪意の第三者がRBF攻撃を行っても、乱数が変更されると同一パスワードが用いられていることを検出するのが困難となる。そのため、乱数の代わりに一定期間用いられる固定値からハッシュ値を生成することとして、固定値が変更されるまでの間に同一ハッシュ値で閾値を超える認証エラーが発生すると、RBF攻撃と判断する構成としている。この場合、固定値が変更されるタイミングでは判断に用いられる過去の情報がリセットされるため、一定の時間はRBF攻撃を判断する精度が低下することが懸念される。
【0008】
特許文献2記載の発明は、認証に特許文献1のようなハッシュ値を用いない構成であるため、特許文献1で固定値の変更によって生じるような問題は起こり得ないが、この発明ではRBF攻撃は同一の端末から同一セッションで行われることを前提に、連続するアクセスを監視対象としているるため、悪意の第三者が別人を装って異なる端末を用いてログインを試みるようなケースへの対応が困難であり、近時はむしろそうしたケースのほうが懸念されるので、RBF攻撃への対処手段としては限界があると考えられる。
【0009】
特許文献1、2記載の発明は、いずれも一の認証系におけるRBF攻撃への対処法を示したものであるが、RBF攻撃によってユーザのIDとパスワードが流出した場合、当該ユーザは同じIDとパスワードを他のサービスのアカウントでも使い回しているケースが少なくない。特に、ユーザが使用しているメールアドレスをアカウントのIDとして使用するサービスにおいて、こうした問題が顕在化しやすく、あるサービスの認証サーバがRBF攻撃を受けた場合には、その情報を他のサービスの認証サーバとも共有して、アカウントをロックするなど速やかな対処を行えることが望ましい(図2参照)。
【0010】
本発明は、このような課題に対応するためになされたものであり、RBF攻撃を的確に検知して対処するとともに、他のサービスを利用するユーザの安全性向上にも資する、IDとパスワードの組合せによってユーザの本人認証を行う認証サーバ、認証プログラム及び認証方法を提供することを目的とするものである。
【課題を解決するための手段】
【0011】
このような課題を解決する本発明は、IDとパスワードの組合せによってユーザの本人認証を行う認証サーバであって、IDとパスワードが指定されたユーザの認証要求を受け付けると、前記IDと前記パスワードが認証を許可する条件に合致するかを確認して、前記条件に合致すれば前記ユーザを本人と認証する所定の認証処理を実行するユーザ認証手段と、IDとパスワードが指定されたユーザの認証要求に対し、前記IDと前記パスワードの組合せが認証を許可する条件に合致せず認証エラーとなったエラー情報に、パスワードを固定しながらIDを次々に変更してログインを試みるリバースブルートフォース攻撃に該当するかを判断するためのルール又はモデルを適用して、リバースブルートフォース攻撃に用いられた可能性がある不正パスワードを特定する不正パスワード特定手段と、前記不正パスワード特定手段が特定した不正パスワードについて、前記不正パスワードに対応するユーザのIDに関する情報を含まない前記不正パスワードに関する情報を、IDとパスワードの組合せによってユーザの本人認証を行う他の認証サーバと共有するための所定の処理を実行する不正パスワード共有手段と、を備え、前記ユーザ認証手段は、受け付けた認証要求に指定されたパスワードが前記不正パスワード特定手段によって特定された不正パスワードに該当する認証要求に対しては、認証エラーとして前記認証処理を実行しないことを特徴とする認証サーバである。
【0012】
本発明では、IDとパスワードが認証を許可する条件に合致せず認証エラーとなったエラー情報に、短時間に同一パスワードを指定した認証要求が複数回試行されていないかなど、RBF攻撃の可能性を判断する所定のルールを適用して、RBF攻撃に用いられた可能性があるパスワードを不正パスワードとして特定する。ユーザの本人認証を行う際には、不正パスワードが用いられた認証要求が認証エラーとして処理されるよう構成することによって、RBF攻撃を的確に検知して対処することを可能にしている。RBF攻撃の可能性の判断は、ルールベースの他に、機械学習による学習済モデル等の所定のモデルを適用することとしてもよい。
【0013】
また、RBF攻撃に用いられた可能性がある不正パスワードに関する情報を、他のサービスの認証サーバと共有することができるので、ユーザが他のサービスのアカウントでの認証にもパスワードを使い回しているようなケース、中でもIDにユーザのメールアドレスを使用するなど、IDにも同一のものが用いられることが多いケースに対処する手段として、特に好適である。
【0014】
また、本発明は、各々のユーザの本人認証に用いられるIDとパスワードの組合せに関する情報を格納するユーザ情報格納手段を備えていて、前記不正パスワード共有手段は、他の認証サーバと共有される不正パスワードが本人認証に用いられる一又は二以上のユーザのIDを前記ユーザ情報格納手段から読み出して、前記不正パスワードに関する情報と対応付けて前記IDに関する情報を前記他の認証サーバと共有するための所定の処理を実行することを特徴とすることもできる。
【0015】
RBF攻撃に用いられた可能性がある不正パスワードを他の認証サーバと共有する場合、IDとパスワードの流出リスクがあるユーザとは異なるユーザと、使用しているパスワードが偶然一致しているようなケースにおいて、リスクの低いユーザのアカウントまでロックされてしまうという問題が起こり得る。そうした問題に対処するためには、このように構成して、不正パスワードに対応するIDに関する情報も合わせて共有することが好ましい。
【0016】
本発明は、各々のユーザの本人認証に用いられるIDとパスワードの組合せに関する情報を格納するユーザ情報格納手段と、前記他の認証サーバから、前記不正パスワード共有手段によって共有された不正パスワードに対応するユーザのIDに関する情報を共有するリクエストを受信すると、前記不正パスワードが本人認証に用いられる一又は二以上のユーザのIDを前記ユーザ情報格納手段から読み出して、前記IDに関する情報を前記他の認証サーバと共有するための所定の処理を実行するID共有手段を備えることを特徴としてもよい。
【0017】
前述のパスワードの偶然の一致という問題への対応策として、このように構成すると、共有された不正パスワードが他の認証サーバでは二以上のユーザによって使用されている場合など、使用しているパスワードが偶然一致している可能性があるようなケースに限定して、共有元となる認証サーバに要求してIDに関する情報が共有されることになるので、上記問題への対処が可能になるとともに、セキュリティ面を考慮して必要以上にIDが共有対象となることを抑制するのに好適な構成となる。
【0018】
本発明は、前記不正パスワード共有手段は、他の認証サーバと共有する不正パスワードに関する情報に、前記不正パスワードが指定された認証要求を送信したユーザ端末を識別するアドレス情報を含めて、前記他の認証サーバと共有するための所定の処理を実行することを特徴としてもよい。
【0019】
前述のパスワードの偶然の一致という問題への対応策として、このように構成すると、必ずしもユーザのIDに関する情報を共有しなくても、使用するユーザ端末の一致によって、同じ悪意の第三者からの攻撃であることを識別しやすくなる。尚、ユーザ端末を識別するアドレス情報には、例えばIPアドレスを用いることとすればよい。
【0020】
さらに、本発明は、前記ユーザ認証手段は、前記認証処理が実行されたユーザとのセッションが継続している間の所定のタイミングで、前記本人認証に用いられたパスワードが新たに前記不正パスワード特定手段により特定された不正パスワードに該当しないかを確認する処理を繰り返して、前記パスワードが不正パスワードに該当することとなった場合は、前記セッションを中断するための所定の処理を実行することを特徴としてもよい。
【0021】
このように構成すると、一旦はRBF攻撃の可能性があるとは判断されずアカウントにログインした後に、本人認証に用いられたパスワードが不正パスワードであることが明らかになった場合には、不正なログインによって乗っ取られた可能性があるアカウントのセッションを、強制ログアウトなどの手段によって中断することが可能になる。あるいは、ユーザ本人が正当にアカウントにログインしているとしても、その間にRBF攻撃を受けている可能性が明らかになった場合は、速やかにパスワード変更などの対応を行うことができるように、強制ログアウトなどの手段でセッションを中断することが有効である。
【0022】
本発明は、本発明に係る認証サーバにおいて動作する、認証プログラムとして特定することもできる。
【0023】
本発明に係る認証プログラムは、IDとパスワードの組合せによってユーザの本人認証を行うコンピュータに、IDとパスワードが指定されたユーザの認証要求を受け付けると、前記IDと前記パスワードが認証を許可する条件に合致するかを確認して、前記条件に合致すれば前記ユーザを本人と認証する所定の認証処理を実行するユーザ認証ステップと、IDとパスワードが指定されたユーザの認証要求に対し、前記IDと前記パスワードの組合せが認証を許可する条件に合致せず認証エラーとなったエラー情報に、パスワードを固定しながらIDを次々に変更してログインを試みるリバースブルートフォース攻撃に該当するかを判断するためのルール又はモデルを適用して、リバースブルートフォース攻撃に用いられた可能性がある不正パスワードを特定する不正パスワード特定ステップと、前記不正パスワード特定ステップで特定した不正パスワードについて、前記不正パスワードに対応するユーザのIDに関する情報を含まない前記不正パスワードに関する情報を、IDとパスワードの組合せによってユーザの本人認証を行う他の認証サーバと共有するための所定の処理を実行する不正パスワード共有ステップと、を実行させ、前記ユーザ認証ステップにおいて、受け付けた認証要求に指定されたパスワードが前記不正パスワード特定ステップで特定された不正パスワードに該当する認証要求に対しては、認証エラーとして前記認証処理を実行させないことを特徴とする認証プログラムである。
【0024】
また、本発明に係る認証プログラムは、先に説明した本発明に係る認証サーバの各々の構成において動作する、認証プログラムとして特定することもできる。
【0025】
本発明は、本発明に係る認証サーバによって実行される、認証方法として特定することもできる。
【0026】
本発明に係る認証方法は、IDとパスワードの組合せによってユーザの本人認証を行うコンピュータが、IDとパスワードが指定されたユーザの認証要求を受け付けると、前記IDと前記パスワードが認証を許可する条件に合致するかを確認して、前記条件に合致すれば前記ユーザを本人と認証する所定の認証処理を実行するユーザ認証ステップと、前記コンピュータが、IDとパスワードが指定されたユーザの認証要求に対し、前記IDと前記パスワードの組合せが認証を許可する条件に合致せず認証エラーとなったエラー情報に、パスワードを固定しながらIDを次々に変更してログインを試みるリバースブルートフォース攻撃に該当するかを判断するためのルール又はモデルを適用して、リバースブルートフォース攻撃に用いられた可能性がある不正パスワードを特定する不正パスワード特定ステップと、前記コンピュータが、前記不正パスワード特定ステップで特定した不正パスワードについて、前記不正パスワードに対応するユーザのIDに関する情報を含まない前記不正パスワードに関する情報を、IDとパスワードの組合せによってユーザの本人認証を行う他の認証サーバと共有するための所定の処理を実行する不正パスワード共有ステップと、を有していて、前記コンピュータは、前記ユーザ認証ステップにおいて、受け付けた認証要求に指定されたパスワードが前記不正パスワード特定ステップで特定された不正パスワードに該当する認証要求に対しては、認証エラーとして前記認証処理を実行しないことを特徴とする認証方法である。
【0027】
また、本発明に係る認証方法は、先に説明した本発明に係る認証サーバの各々の構成によって実行される、認証方法として特定することもできる。
【発明の効果】
【0028】
本発明によると、RBF攻撃に用いられた可能性がある不正パスワードを用いた認証要求を認証エラーとして処理することで、RBF攻撃を的確に検知して対処するとともに、不正パスワードに関する情報を他の認証サーバと共有することにより、IDとパスワードによって本人認証を受けることが必要な複数のサービスを利用しているユーザの安全性の向上にも資するものとなる。本発明は、ユーザが複数のサービスのアカウントで認証用のパスワードを使い回しているようなケースへの対策として、特に効果的である。
【図面の簡単な説明】
【0029】
図1】BF攻撃とRBF攻撃について説明する図である。
図2】RBF攻撃によるIDとパスワードの流出リスクと、速やかな対処の必要性について示す図である。
図3】本発明に係る認証サーバの実施形態の概要を示す図である。
図4】本発明に係る認証サーバによるRBF攻撃への対応の流れを示す図である。
図5】本発明に係る認証サーバの構成を示すブロック図である。
図6】本発明に係る認証サーバによるユーザの本人認証の処理フローを示す第1のフローチャートである。
図7】本発明に係る認証サーバによるユーザの本人認証の処理フローを示す第2のフローチャートである。
図8】本発明に係る認証サーバによる不正パスワードのリスト登録と共有の処理フローを示すフローチャートである。
図9図8の処理フローにおける警告通知処理の手順を示すフローチャートである。
【発明を実施するための形態】
【0030】
本発明を実施するための形態について、図面を用いて以下に詳細に説明する。尚、以下の説明は本発明の実施形態の一例を示したものであって、本発明はここに示した実施形態に限定されるものではない。
【0031】
図1に示したブルートフォース攻撃(BF攻撃)の具体例とその攻撃への対処法、リバースブルートフォース攻撃(RBF攻撃)の具体例とその攻撃に対処することの困難性は、背景技術において説明したとおりである。
【0032】
RBF攻撃によってユーザを識別するIDと認証用のパスワードが悪意の第三者に流出してしまうと、図2の例に示したように、特にユーザが使用しているメールアドレスをアカウントのIDとして使用するようなサービスでは、ユーザのIDが同一のものとなりやすい上に、こうしたサービス間でユーザが同じパスワードを使い回しているケースが多いため、RBF攻撃を受けて乗っ取られたA社サービスのアカウントのみでなく、B社サービスのアカウントにも容易にログインできてしまい、被害が拡大しやすいという問題が深刻化している。
【0033】
このようなリスクを回避するためには、A社サービスでRBF攻撃を受けた可能性があることが判明した場合には、その情報を他のサービスの認証サーバとも速やかに共有して、同じパスワードが使用されている他のサービス(C社サービス、D社サービス、E社サービス等)のアカウントをロックするなど、悪意の第三者に先回りして速やかな対処が行えるようにすることが望ましい。
【0034】
図3は、本発明に係る認証サーバの実施形態の概要を示している。図3の例において、以下では認証サーバ(A社)が本発明に係る認証サーバに該当するものとして説明するが、不正パスワードに関する情報を共有する複数の認証サーバが本発明に係る認証サーバとして機能して、相互に不正パスワードを検知してその情報を共有し合うものであってもよく、できるだけ多くの認証サーバが本発明に対応する機能を備え、不正パスワードに関する情報の共有を促進することが求められる。
【0035】
図3の認証サーバ(A社)は、A社が提供するサービスにおいてユーザの本人認証を行う機能を備えたサーバであり、ユーザ端末からA社サービスのアカウントにログインするためのIDとパスワードが指定された認証要求を受け付けると、認証サーバ(A社)に登録されたユーザのIDを検索して、IDの存在と、IDに関連づけて登録されたパスワードとの一致が確認されれば、アカウントへのログインが許可される。IDが存在しない、あるいはパスワードが一致しない場合には、認証エラーとなりアカウントにログインすることができない。
【0036】
認証を許可する条件に合致せず認証エラーとなったIDとパスワードの組合せは、認証要求を送信したユーザ端末を識別するIPアドレスとあわせて、エラー情報として認証サーバ(A社)のデータベースに蓄積される。認証サーバ(A社)では、蓄積されたエラー情報に、所定の時間内に同一パスワードが用いられた認証エラーが所定の閾値を超えて発生している等のRBF攻撃が行われた可能性ありと判断するルールを当てはめて、RBF攻撃が行われていないかを監視する。当該ルールに該当するパスワードが検出された場合には、検出されたパスワードをRBF攻撃に用いられた可能性がある不正パスワードと特定する。
【0037】
尚、ここでエラー情報に適用する、RBF攻撃が行われた可能性ありと判断するルールに代えて、過去に発生したRBF攻撃に関する情報等を教師データとして機械学習させた学習済みモデルを採用して、エラー情報に当該学習済みモデルを適用して不正パスワードを特定することとしてもよい。
【0038】
認証サーバ(A社)でユーザの本人認証を行う際には、前述のIDの存在とパスワードの一致を確認することによる認証のみでなく、認証要求に指定されたパスワードが、先に特定された不正パスワードに該当しないかの確認も行われる。不正パスワードが複数存在する状態にもなり得るので、例えば、特定された不正パスワードに関する情報をリスト化して、認証要求に指定されたパスワードを当該リストと照合して不正パスワードに該当しないかの確認を行い、不正パスワードに該当する場合はRBF攻撃による不正なアクセスの可能性があると判断して、認証エラーと処理してログインを許可しないこととすればよい。あるいは、不正パスワードが特定された時点で該当するパスワードを使用している一又は二以上のユーザを特定して、そのユーザのアカウントへのログインが許可されないように、アカウントをロックしておくこととしてもよい。
【0039】
以上のように、RBF攻撃に用いられた可能性がある不正パスワードを検知し、不正パスワードが用いられた認証要求に対しては、認証エラーとしてログイン等の認証処理を実行しないことによって、RBF攻撃を的確に検知して対処することが可能になるが、さらに本発明では、こうした不正パスワードに関する情報を他のサービスの認証サーバと共有することによって、ユーザが他のサービスでもパスワードを使い回しているようなケースにも、効果的に対処することを可能にしている。
【0040】
具体的には、認証サーバ(A社)で新たな不正パスワードが検出されると、その不正パスワードに関する情報を認証サーバ(B社)等の他の認証サーバとも共有するための処理を実行する。共有の方法は特に限定されるものではないが、例えば、各々の認証サーバに不正パスワードに関する情報を送信することとしてもよいし、ネットワーク上に情報を共有するための他の認証サーバからもアクセスが可能な共用サーバを設けて、そこに不正パスワードに関する情報を集約することとしてもよい。不正パスワードに関する情報を共有する際には、セキュリティを考慮して不正パスワードはハッシュ化することが好ましい。
【0041】
図4は、図3の認証サーバ(A社)によるRBF攻撃への対応の流れの一例を示したものである。他人のIDとパスワード(PW)を盗み取って、アカウントを乗っ取ろうとする悪意の第三者は、図4に「ID=0001、PW=ABCD」「ID=0002、PW=ABCD」「ID=0003、PW=ABCD」と例示しているように、パスワードは固定したままでIDのみを次々と変更して、様々なネットワーク端末を用いて異なるルートから認証サーバ(A社)に認証要求を送信することで、いずれかのアカウントにログインすることができるIDとパスワードの組合せを探り出す。異なるネットワーク端末から異なるIDで認証要求が行われると、同一主体が仕掛けているRBF攻撃と直ちに判別するのは困難であるが、本発明では、IDとパスワードの組合せが認証サーバ(A社)のユーザ情報に登録されたものと一致せず、認証エラーとなったエラー情報から、RBF攻撃の可能性がある不正アクセスを検知する。
【0042】
具体的には、例えば「1分以内に同じパスワードを指定した認証要求が3回以上エラーとなった場合はRBF攻撃とみなす」といったように、短時間にパスワードを固定した不審な認証要求が続いていると判断することが可能なルールを設定して、新たに発生したエラー情報がこのルールに該当する場合は、それらの認証要求に指定されたパスワードを、不正なアクセスであるRBF攻撃に用いられた可能性がある不正パスワードと特定して、不正パスワードに関する情報のリストに登録する。図4の例では、3回連続して認証エラーとなったパスワード「ABCD」が、不正パスワードのリストに登録される。
【0043】
尚、ここで不正パスワードを特定する方法は、上記のようなルールベースに限定されるものではなく、例えば、過去に発生したRBF攻撃に関する情報等を教師データとして機械学習させた学習済みモデルを生成して、エラー情報に当該学習済みモデルを適用して不正パスワードを特定する方法を採用してもよいことは、先に述べたとおりである。また、不正パスワードの特定は、新たなエラー情報の発生を常時監視してリアルタイムで判断することとしてもよいし、発生したエラー情報をデータベースに格納して、所定のタイミングで新たに蓄積されたエラー情報に所定のルールやモデルを適用して判断することとしてもよい。
【0044】
認証サーバ(A社)におけるユーザの本人認証では、IDとパスワードの組合せが認証サーバ(A社)に登録されたものと一致するかに加えて、認証要求に指定されたパスワードが、不正パスワードに関する情報のリストに登録された不正パスワードに該当しないかについても判断される。図4の例では、さらに悪意の第三者が「ID=0004、PW=ABCD」を指定した認証要求を送信してアカウントへのログインを試みているが、指定されたパスワード「ABCD」が不正パスワードのリストに登録されているため、IDとパスワードの組合せが認証サーバ(A社)に登録されたものと一致するか否かに関わらず、認証エラーとなりログインは拒否され、RBF攻撃によるIDとパスワードの流出を防止することが可能になる。
【0045】
こうしたRBF攻撃への対処に有効な不正パスワードに関する情報については、認証サーバ(A社)において、B社、C社等の他の認証サーバと共有するための処理が実行される。セキュリティを考慮して、不正パスワードはハッシュ化して共有することが好ましく(不正パスワードを共有する認証サーバ間では、ハッシュ化に用いられる関数が共有されている前提となる)、認証サーバ(A社)では不正パスワードのハッシュ値を認証サーバ(B社)等の他の認証サーバに送信、あるいは認証サーバ(B社)等の他の認証サーバと情報を共有するための各々の認証サーバからアクセスが可能な共用サーバ等に送信する。
【0046】
B社、C社等の他の認証サーバでは、共有された不正パスワードが指定された認証要求を認証エラーとして、事実上アカウントをロックすることによって、仮にRBF攻撃によってA社からIDとパスワードが流出してしまったとしても、ユーザがパスワードを使い回して利用している他社のサービスにまで被害が拡大するのを防止することができる。
【0047】
尚、B社、C社等の他の認証サーバでは、共有された不正パスワードが、A社においてその不正パスワードを使用しているユーザとは異なる他のユーザが使用しているパスワードと、偶然一致してしまうような事態も生じ得る。ユーザが異なれば通常は各々のユーザを識別するIDも異なり、IDが異なる他のユーザにまで被害が及ぶとは想定しにくいため、そうした状況によって無関係なユーザの利便性に影響が生じてしまうことは、できるだけ回避するのが望ましい。
【0048】
その対策として、例えば、不正パスワードとあわせて認証サーバ(A社)において当該不正パスワードを使用しているユーザのIDや、不正パスワードと特定されたパスワードが指定された認証要求を送信したユーザ端末を識別するIPアドレス等のアドレス情報(こうしたアドレス情報は認証エラーとなったエラー情報に含めておくこととすればよい)を、不正パスワードとあわせて共有対象に含めることとしてもよい。セキュリティ面を考慮して必要以上にIDが共有対象に含まれることを回避するためには、例えば、他の認証サーバで不正パスワードを使用しているユーザが複数名該当することが明らかになるなど、他の認証サーバ側で必要と判断された際に、認証サーバ(A社)に対してIDに関する情報を要求して共有対象に含め得る構成としてもよい。
【0049】
また、新たな不正パスワードが特定された際には、ユーザ情報に登録されている各々のユーザのパスワードを検索して、当該不正パスワードを使用しているユーザ(図4の例では「ID=1234」と「ID=5678」のユーザ)に対し、RBF攻撃を受けているおそれがあるので、速やかにパスワードを変更するよう促すパスワード変更の警告を通知する。不正パスワードを用いているユーザが存在しなければ通知を送信する必要はないが(こうしたケースでは、当該不正パスワードのリストへの登録自体を省略することとしてもよい)、二以上のユーザのパスワードが偶然一致することも起こり得るので、通知対象が二以上のユーザとなることもある。
【0050】
ここでパスワード変更の警告を通知する方法は特に限定されるものではなく、例えば、ユーザ情報に登録されたメールアドレス宛の電子メールや、携帯電話番号宛のショートメッセージを発信することとしてもよいし、ユーザがログインした際のトップページに警告メッセージを表示することとしてもよい。
【0051】
尚、この段階においてRBF攻撃を受けたリスクがあるユーザのアカウントが明らかになるので、該当するユーザのアカウントに現在のパスワードではログインすることができないように、パスワードが変更されるまでアカウントを一時的にロックして対応することも可能である。この方法を採用する場合には、ユーザの認証時に不正パスワードのリストを参照する必要がなくなるため、不正パスワードをリスト化することも不要になるが、不正パスワードとして特定されたパスワードが指定された認証要求を認証エラーとして処理できる機能が実現される効果は、不正パスワードをリスト化して参照する方法と同様である。
【0052】
図5は、本発明に係る認証サーバの構成の一例を、機能ブロックで示した図である。図5において、認証サーバ10が本発明に係る認証サーバに対応する。認証サーバ10は、インターネット等のネットワークを介して、ユーザ端末20、30、40、50等との間でデータ通信を行うことが可能であり、認証サーバ60、70等ともインターネット等のネットワークを介して情報の共有が可能な構成となっている。
【0053】
認証サーバ10は、インターネット等のネットワークに接続されたサーバコンピュータであって、CPU、メインメモリ、HDDやSSD等の補助記憶装置が備えられている。認証サーバ10では、補助記憶装置に格納されたプログラムがメインメモリに読み出され、CPUで演算処理を実行することによって所定の機能が実現される。
【0054】
認証サーバ10を構成するコンピュータの物理的な構成は、特に限定されるものではない。認証サーバ10には、本発明におけるユーザの本人認証以外の機能が同一のコンピュータに備えられるものであってもよく、例えば、認証されてアカウントにログインしたユーザに所定のサービスを提供するための機能を備えるサーバと、一体で構成されるものであってもよい。また、本発明に必要な各々の機能は、物理的に一台のコンピュータによって実現されるものであってもよいし、複数のコンピュータが連携して実現されるものであってもよい。
【0055】
認証サーバ10のユーザ認証部11、不正パスワード特定部14、パスワード変更警告部15、不正パスワード共有処理部16は、いずれも機能的に特定されるものであって、HDDやSSD等の補助記憶装置に格納された各部の機能に対応するプログラムがメインメモリに読み出され、CPUで演算処理を実行することによって、各部に対応する機能が実現される。
【0056】
認証サーバ10のユーザ情報格納部12、認証エラー情報格納部13、不正パスワード情報格納部17には、HDDやSSD等の補助記憶装置の所定の記憶領域が割り当てられる。これらの記憶領域は物理的に一台のコンピュータに設けられることを必須の要件とするものではなく、複数のコンピュータに設けられるものであってもよい。
【0057】
認証サーバ60、70も、認証サーバ10と同様にユーザの認証機能を備えたサーバコンピュータであるが、それぞれ認証サーバ10とは異なるサービスのアカウントにログインする際の本人認証に用いられるものである。認証サーバ10と認証サーバ60、70は、インターネット等のネットワークを介して情報の共有が可能な構成となるが、各々の認証サーバ間でデータを交信する構成としてもよいし、各々の認証サーバがアクセス可能な他のサーバを介して情報の共有が可能な構成としてもよい。
【0058】
ユーザ端末20、30、40、50は、認証サーバ10を介してサービスを利用するユーザが操作する、スマートフォン、タブレット型コンピュータ、パーソナルコンピュータ等のネットワーク端末で、インターネット等のネットワークに接続してデータ通信を行うことが可能な端末であれば、その構成は特に限定されるものではない。
【0059】
以上の構成を前提にして、認証サーバ10によるユーザの本人認証、さらに不正パスワードのリストへの登録と他の認証サーバと不正パスワードを共有する処理の手順について、図6-9のフローチャートに沿って説明する。
【0060】
図6図7のフローチャートは、認証サーバ10のユーザ認証部11によって実行される、ユーザの本人認証の処理フローの一例を示したものである。認証サーバ10がユーザ端末20、30等からIDとパスワード(PW)が指定されたユーザのアカウントにログインするための認証要求を受信すると(S01)、ユーザ認証部11が起動されて、ユーザ情報格納部12に格納されたユーザ情報から、認証要求に指定されたIDによって識別されるユーザのアカウントのユーザ情報を検索する(S02)。
【0061】
認証要求に指定されたIDに対応するアカウントのユーザ情報が存在する場合は(S03がYes)、そのアカウントが一時的にロックされているなど、停止中でログインできない状態になっていないかを確認する(S04)。停止中の状態になければ(S04がYes)、認証要求に指定されたパスワードが当該ユーザ情報に登録されているパスワードと一致するかを確認する(S05)。
【0062】
ここでアカウントを停止中の状態とするか否かの制御は、例えば、各々のユーザ情報にアカウントが一時的にロックされていることを示すフラグを用いて管理することとすればよい。ユーザ情報に登録されている認証用のパスワードが不正パスワードであることが判明した際には、このフラグを立ててアカウントを一時的にロックし、停止中とすることによって(ユーザがパスワードを変更すれば、フラグをリセットして一時的なロックを解除することとすればよい)、RBF攻撃を受けたリスクがあるユーザのアカウントへの不正なログインを防止することができるが、次に説明する不正パスワードのリストを検索する方法(S06-07)を採用する場合には、このプロセスでは他の理由によって停止中のアカウントへの認証要求を認証エラーとして処理することとすればよい。
【0063】
認証要求に指定されたパスワードが当該ユーザ情報に登録されているパスワードと一致する場合は(S05がYes)、認証要求に指定されたパスワードが不正パスワードとして登録されていないか、不正パスワード情報格納部17に格納された不正パスワードに関する情報のリストを検索する(S06)。該当する不正パスワードがリストに登録されていなければ(S07がYes)、ユーザ本人であると認証されてアカウントにログインするために必要な認証処理が実行されるが(S08)、先に説明したとおり、不正パスワードに該当するパスワードを使用しているユーザのアカウントを停止する運用としている場合は、ここで不正パスワードに関する情報のリストとの照合を行うプロセス(S06-07)は不要となる。
【0064】
認証要求に指定されたIDに対応するアカウントのユーザ情報が存在しない場合(S03がNo)、当該IDに対応するアカウントのユーザ情報は存在するが、アカウントが停止中である場合(S04がNo)、認証要求に指定されたパスワードが当該ユーザ情報に登録されているパスワードと一致しない場合は(S05がNo)は、アカウントにログインするために必要な認証処理は実行されず、認証エラー情報格納部13にエラー情報を記録して(S14)、ユーザ端末20等の画面にエラー表示が行われるなど、所定のエラー処理が行われる(S15)。認証エラー情報格納部13に記録されるエラー情報のうち、IDとパスワードの不一致による認証エラーに関する情報は、不正パスワードを特定するために必要な情報となるので特に重要であり、エラー情報には認証要求を送信したユーザ端末20等を識別できるIPアドレス等のアドレス情報も含めておくことが好ましい。
【0065】
尚、IDとパスワードの組合せが認証条件に合致するかを確認する処理(S05)と、パスワードが不正パスワードに該当するかを確認する処理(S06-07)の順序は、図6の処理フローでは前者を先に実行することとしているが、これらの処理の順序は逆に行われるものであってもよい。
【0066】
さらに、アカウントにログインしたユーザがサービスの利用を開始し、ログアウトの操作が行われて(S09がYes)アカウントからログアウトする処理が実行される(S13)までの間に、不正パスワード情報格納部17に新たな不正パスワードが登録されると(S10がYes)、ユーザが認証要求の際に指定したパスワードが新たに登録された不正パスワードに該当しないかが確認される(S11)。
【0067】
新たに登録された不正パスワードに該当すると判断された場合は(S11がYes)、ログインしているのはユーザ本人ではなくRBF攻撃によりアカウントを乗っ取った悪意の第三者である可能性がある、あるいはログインしているのがユーザ本人でもその後にRBF攻撃によって不正ログインが行われる可能性が生じているため、強制的にログアウトする処理がユーザ認証部11によって実行される(S12)。強制ログアウトがされた後にユーザが適切な対処を行えるように、ここでパスワードの変更を促すメッセージを表示することとしてもよい。
【0068】
図8のフローチャートは、認証サーバ10の不正パスワード特定部14、パスワード変更警告部15、不正パスワード共有処理部16によって実行される、不正パスワードのリストへの登録と共有の処理フローの一例を示したものである。所定のタイミング(安全面からはできるだけ頻度を高く設定することが望ましい)で不正パスワード特定部14が起動されると、認証エラー情報格納部13に格納されたエラー情報を検索して(S21)、所定の時間内に閾値として設定された所定の回数を超過する、同一のパスワードが指定された認証エラーが発生していないかを確認する(S22)。
【0069】
所定の時間内に所定の回数を超過する同一のパスワードが指定された認証エラーが発生している場合は(S22がYes)、当該パスワードを固定してRBF攻撃が行われている可能性があると推測されるので、当該パスワードを新たな不正パスワードと特定して、不正パスワード情報格納部17に格納された不正パスワードのリストに登録する(S23)。
【0070】
続いてパスワード変更警告部15が起動され、新たに登録された不正パスワードを認証用に使用しているユーザに対して、RBF攻撃を受けているおそれがあるので速やかにパスワードを変更するよう促すパスワード変更の警告を通知する処理を実行する(S24)。この警告通知処理の手順の一例を示したものが、図9のフローチャートである。
【0071】
不正パスワード情報格納部17に格納されたリストに新たな不正パスワードが登録されると、パスワード変更警告部15はユーザ情報格納部12を検索して(S241)、当該不正パスワードを認証用のパスワードに設定しているユーザが存在するかを確認する(S242)。該当する一又は二以上のユーザが存在すれば(S242がYes)、メールアドレス等の当該ユーザの通知先に関する情報をユーザ情報格納部12から読み出して(S243)、読み出した通知先を宛先とするパスワードの変更を促す警告通知を、当該ユーザのユーザ端末40、50等に発信する(S244)。
【0072】
尚、図4の例のように、二以上のユーザのパスワードが偶然一致して、それらが不正パスワードに該当することになる可能性もあるが、その場合はいずれのユーザにもRBF攻撃によってIDとパスワードが流出してしまうリスクが生じていると考えられるため、該当する全てのユーザに対して警告通知を発信することが好ましい。また、先に説明したように警告通知を発信する方法は電子メールに限定されるものではなく、ショートメッセージの送信やログイン後のWebページへの警告メッセージ表示等によることとしてもよいが、できるだけ速やかにユーザが警告を確認できる手段を選択するのが好ましい。
【0073】
また、不正パスワードを使用しているユーザのアカウントへのログインを停止させる方法として、先に説明したアカウントを一時的にロックする方法を採用するケースでは、ここで該当するユーザのユーザ情報にアカウントを停止中とするフラグを立て、ユーザがパスワードを変更するまでは停止中の状態を維持することとすればよい。
【0074】
図8のフローチャートに戻ると、続いて不正パスワード共有処理部16が起動され、新たに登録された不正パスワードを所定のハッシュ関数でハッシュ化して(S25)、ハッシュ化された不正パスワードが少なくとも含まれる新たに登録された不正パスワードに関する情報を、認証サーバ60、70等の他の認証サーバと共有するための処理を実行する(S26)。
【0075】
先に説明したように、ここで不正パスワードに関する情報を他の認証サーバと共有する方法は特に限定されるものではなく、例えば、認証サーバ10で生成された不正パスワードのハッシュ値等を、共有の相手方である認証サーバ60、70等に送信することとしてもよいし、認証サーバ10、60、70等の共有者各々の認証サーバからアクセスが可能な共用サーバに当該ハッシュ値等を保存して、各々の認証サーバから確認可能な構成としてもよい。
【0076】
また、認証サーバ60、70等の他の認証サーバと共有する情報を不正パスワードのハッシュ値のみに限定すると、認証サーバ10において当該不正パスワードを使用しているユーザとは異なる他のユーザが使用しているパスワードと偶然一致して、不正アクセスを受けるリスクが低いユーザの利便性に影響が生じてしまうおそれがある。
【0077】
その対策として、先に説明したように、不正パスワードとあわせて認証サーバ10において当該不正パスワードを使用しているユーザのIDをユーザ情報格納部12から読み出し、共有する不正パスワードに関する情報に含めることとしてもよいし、認証サーバ10で不正パスワードと特定されたパスワードが指定された認証要求を送信したユーザ端末を識別するIPアドレス等のアドレス情報を、共有する不正パスワードに関する情報に含めることとしてもよい。
【0078】
あるいは、全てのIDを共有対象に含めることとすると、守秘性の高い情報を必要以上に共有することとなってしまうことを考慮して、例えば、認証サーバ60等で不正パスワードを使用しているユーザが複数名該当することが判明した場合など、他の認証サーバ側で必要と判断された際に、認証サーバ10に対して不正パスワードに対応するIDに関する情報の共有を要求して、他の認証サーバからの要求に応じて不正パスワードに対応するIDに関する情報を共有する処理を実行する構成としてもよい。
【符号の説明】
【0079】
10 認証サーバ
11 ユーザ認証部
12 ユーザ情報格納部
13 認証エラー情報格納部
14 不正パスワード特定部
15 パスワード変更警告部
16 不正パスワード共有処理部
17 不正パスワード情報格納部
20 ユーザ端末
30 ユーザ端末
40 ユーザ端末
50 ユーザ端末
60 認証サーバ
70 認証サーバ
【要約】
【課題】 RBF攻撃を的確に検知して対処するとともに、他のサービスを利用するユーザの安全性向上にも資する、IDとパスワードの組合せによってユーザの本人認証を行う認証サーバを提供する。
【解決手段】 IDとパスワードが条件に合致せず認証エラーとなったエラー情報に、RBF攻撃の可能性を判断する所定のルール又はモデルを適用して、RBF攻撃に用いられた可能性があるパスワードを不正パスワードとして特定する。ユーザの本人認証を行う際には、不正パスワードが用いられた認証要求を認証エラーと処理することによって、RBF攻撃を的確に検知して対処することが可能になる。不正パスワードに関する情報は、他のサービスの認証サーバとも共有することによって、ユーザが他のサービスでパスワードを使い回して利用しているようなケースへの対応も可能になる。
【選択図】 図3
図1
図2
図3
図4
図5
図6
図7
図8
図9