企業ユースであればシングルサインオンは二要素認証(多要素認証)と併用するべき

シングルサインオンを導入するとパスワードをいちいちユーザーはすべてのアプリケーションのパスワードを覚える必要がなくなる。パスワードを一回入力しシングルサインオンにログインができるとすべてのアプリケーションが使えるようになる。

シングルサインオンにログインするパスワードをたったひとつ盗まれただけですべてのアプリケーションがログインされるようになり、ユーザーの利便性は上がったが、セキュリティに対する脅威は逆により危険になったと解釈することもできるだろう。

keyring

シングルサインオンはたとえるとキーフォルダーのようなもので不正にとられた場合悪用されることになるだろう。

そのような脅威を防ぐために複数回認証をする仕組みがあり、その方式は二要素認証とよばれる。もちろん2回だけでは足らないのでそれ以上の認証を行わせることもできそれは多要素認証と呼ばれる。

シングルサインオンとニ要素認証の組み合わせは絶対必要と言うわけではないが、導入は考えたほうがよい。 “企業ユースであればシングルサインオンは二要素認証(多要素認証)と併用するべき” の続きを読む

あなたの重要なパスワードはなぜ盗まれるか?そしてどうすればいいのかを考える。

一年に何回かはパスワード漏洩がニュースになっている。

それはなぜだろうか?

また、セキュリティを勉強した人であれば、非可逆暗号などを利用してサービス運営会社がパスワードを保管しているはずなのになんで盗まれるか疑問を持った人も多いだろう。

辞書ベースの単語を使用

パスワードは、その言葉を入れるとログインが出来るものである。

一番いいパスワードは乱数で生成したパスワードを利用することであるが残念ながら、普通の人間にとってはなかなか覚えることが難しい。

そこでどうしても辞書に載っているような単語を入力してしまいがちである。

もちろんそのような危険を防ぐために二要素認証があるが、コストがかかるのですべてのサービスで使用されることはない。

結論から言うと盗まれやすいパスワードは簡単に類推できるパスワードであると断言できる。

  • 誕生日などの日付
  • 辞書に載った単語と数字の組み合わせ

どうしてもこのように安易にパスワードを設定しそうだがそのようなパスワードは簡単に攻撃者にから割り当てることが可能になるだろう。

内部的な犯行による可能性

ニュースを賑わすような事件では、かなり多くのパスワードが盗まれたりしている。これらの犯行は残念ながら内部的な犯行が多い。

外部からの攻撃がないとは言わないが、ファイアーウォールやIPSなどの検知システムが複数あるのでそもそも攻撃が難しい。また大規模なサイトほどサーバーが複数あり、パスワード情報が入っているサーバーを割り当てるだけでも時間がかかる。

そのため大規模なパスワード漏洩の事件のほとんどは内部的な犯行であると考えることが自然であろう。そのような反抗をするものは何が理由でそうするかは分からないが、そのようなことは再度起こる可能性があることは簡単に想像ができる。

非可逆暗号によるパスワードの保護は?

たとえばパスワードを保護するためにハッシュとかソルトといった手法について聞いたことがあるだろう。

それらの手法は昔計算機の処理能力が小さかった時代で考えられたものでありどのような手法を考えて作ったかがわかればパスワードを割り出すことができる。

ハッシュ化など非可逆化された情報から元のパスワードを知るには一昔前であれば時間がかかったのでそれなりの効果があると思われていたが今はパソコンでも十分に高速になり、たくさんの元パスワードを生成した上で非可逆化のロジックを実行して盗んだデータと比較すれば元のパスワードがわかる。このとき攻撃者は元になる辞書データと数字の組み合わせで計算して難読化を行うが、元になるパスワードはむやみやたらに想定すると時間がかかるので人間が設定するであろう辞書などにのっている言葉と数字を組み合わせることで生成を行う。そのようにすることであとはパソコンで計算させるだけである程度のパスワードは解読できるわけである。

exampleMD5
パスワードをmd5でハッシュ値した例、この元データからハッシュ値を計算して、盗んだデータと比較して元のパスワードを解析する。

攻撃するサイトにユーザー登録したあとで、非可逆化された情報をベースにすると解読も捗る可能性がよりいっそう高くなる。よく使用されると思われるパスワードを登録すれば、それと同じ値を持つものは同じパスワードを使っていると推測できるし、非可逆化の方法についてもわかる手がかりになる可能性が高くなる。

ここで言いたいポイントはサイト側で対策を練ってもパスワードが盗まれる可能性が0ではないと考えられるということだ。

つまりパスワード漏洩の被害に会いたくなければ利用しているサイトからパスワードは盗まれる可能性があることは意識しておいたほうがいいと考える。

盗んだパスワードをベースに他のサイトを攻撃

パスワードが盗まれた場合、盗まれたサイトが攻撃されることが考えられるが、その場合の対策は最悪の場合サイトのサービスを止めれば被害は最小限に抑えることが可能になる。

たちが悪いのは盗んだパスワードをもとに違う会社が運営しているサービスを攻撃することだ。

この場合ユーザーは複数のパスワードを覚えることが難しいのでいつも利用しているパスワードを複数のサイトで使っているからだ。

対応策は?

パスワードを漏洩しないように工夫が必要なのはサービス提供者はもちろんのことだがそのパスワードを利用しているユーザーがパスワードを漏洩される可能性があると感じ対応策を考え実行することしかないと考える。

サービス提供者はハッシュとかソルトのような技術を複数回使ったり、それぞれのタスクに対して設計者と運用者を変えればそのようなリスクは減るだろう。

また最近一般的になってきた標的型攻撃ではスーパーユーザーであるAdministratorやrootなどの特権アカウントのログイン情報を盗み根こそぎ情報をとる。

それに対応するには Lieberman RED Identity Management 特権アカウント管理製品を利用することで対応することが可能になる。

パスワード漏洩の被害を防ぐにはユーザー側の管理が必要

身も蓋もない話になるがユーザーがしっかりとパスワードを管理していればパスワード漏洩があっても被害を最小化することが可能になる。

ここまでのパスワード漏洩の原因は大まかにいうと二つあると考えられる。

  • 辞書に載っている言葉をベースにパスワードを組み立てる。
  • 同じパスワードを複数のサイトで使用する。

これらに対しての望ましい対策方法としては

  • 辞書に載っている単語は絶対に使わない。できればランダムに生成したものを使う。
  • サイトごとに異なるパスワードを利用する。

ただしこれらを実現するには人間がすべて覚えていなければならないのでそれを運用するのは難しい。

現在、いろいろなベンダーから個人向け、エンタープライズ向けでさまざまなパスワード管理製品が出ている。

ブラウザーであればサイトごとにパスワードを覚えさせる機能は一般的になるのでさほど重要でないサイトの場合はそのような製品を利用すればよい。

ただし、この場合利用している機器が盗まれたりするとすべてのパスワードが盗まれる可能性もあるので本当に重要なパスワードはそのような製品を使わないことが望ましいかもしれない。

エンタープライズ向けシングルサインオン製品としてAccessMatrix™ Universal Sign-On (USO)がある。この製品は管理者がエンドユーザーごとに利用できるアプリが設定できるのでたとえ機器が盗まれた場合でも管理者のほうで使用を制限できるのがコンシューマ向け製品とは一番ちがうところである。

パスワード管理としてはパスワードの入力だけでなくパスワード変更の画面にも対応し、ユーザーの代わりにランダムなパスワードを自動的に生成して入力する機能も備えているので安心してエンドユーザーはログイン失敗やパスワードの変更によるパスワード忘れを恐れる必要がなくなる。

パスワード管理は結局ユーザー側がちゃんと対策することが必要

いろいろ長々と書いてきたが、パスワードは常に盗まれる可能性があるのでユーザーとしてはそのリスクは常に意識するべきであると考える。

またすべてのサイトで厳密にパスワード管理をすることは現実的には難しいと思うが、クレジットカードを登録しているサイトやインターネットバンキングまたはオンラインゲーム等不正アクセスがあると被害にあうような製品についてはぜひちゃんと管理をするようにしたい。

またサイトによっては二要素認証など取り入れているところもあるのでぜひとも積極的に検討するももいいと思う。

また企業の管理者であればシングルサインオンやIDプロビジョニングのような製品を検討して頂くのもいいと思う。

関連リンク

サイト側の対策

特権アカウント管理
Lieberman RED Identity Management

利用者側の対応

エンタープライズシングルサインオン:
AccessMatrix™ Universal Sign-On (USO)

 

最終更新 2018/1/30
作成 2014/3/25

【用語説明】二要素(多要素)認証について

弊社で扱っているいくつかの製品では2要素認証をサポートしている。

ワンタイムパスワードが一般的に

最近ではインターネットサービスで利用されるようになったワンタイムパスワードトークンがある。

たとえばオンラインゲームやインターネットバンキングでも利用されている。私もドラゴンクエスト10をするためにトークンを購入した。

ID/パスワードとともにワンタイムパスワードトークンに表示された乱数を入力することでログインができるようになる。

またこの方式は、グーグルやSNSなどでも利用できるようになっており、近い将来もっと標準的なものになる可能性がある。

 

IMAG0296

多要素認証とは

今までのシステムでは本人だけが知っているべきパスワードが一般的に認証に使われている。

ただパスワードは文字の羅列だけで、それが何かを知っていれば本人でなくてもログインができる。

多要素認証はそれまでよく利用されているパスワード以外のその他の要素を組み合わせた認証方式のことである。

様々な認証方式

ワンタイムパスワードはインターネットサービスでよく見られる方式であるが、その他にもいろいろある。

生体認証

目の瞳や指紋を元に認証する。銀行のATMで指紋認証をサポートしている。

カードを用いた認証

IC(スマート)カードがある。たとえば部屋の入退出の管理などとも利用されることがある

USBトークン

USBポートにトークンを刺すことでアクセスが可能になる。

二要素認証で使われる一番目の要素はパスワードによる認証で、二番目の要素がこれらのデバイスを利用した認証になる。

なぜワンタイムパスワードがインターネットサービスで利用されるかについては、PCだけでなくスマホとかでも利用できるし何かデバイスをPCに接続することなく利用できるからだと考えられる。

エンタープライズでは機器の制約がコンシューマーと比較して低いのでワンタイムパスワードにこだわる必要がない。ワンタイムパスワードの欠点としてはいちいちワンタイムでパスワードを生成させ入力させるといった手間があるが、デバイスを接続する認証はそのような手間が必要がないのが特長である。

それぞれの認証方式は一長一短があり一概にどの方式がいいとは言えない。

関連リンク

 多要素認証ソリューション

【コラム】ワンタイムパスワード(OTP)について

当社の取扱製品ではないのだが、Mi-Tokenというワンタイムパスワード(OTP)製品を知る機会があったので紹介したい。 

IT業界でワンタイムパスワード(OTP)と言えば、まず思い出すのが RSA SecurID® ではないだろうか。Wikipedia によると、「RSA SecurIDは現在、二要素認証市場の70%を占め(出展:IDC)、2500万個以上のトークンがこれまでに生産されている」らしい。発売当初、ワンタイムパスワードは、ハードウェアトークンの形で提供されていたが、現在は、RSA に限らず、どのOTP ベンダーもソフトウェアトークンも提供している。 

SecurID が発明されたのは1986年ということだから、OTP は、意外にも随分と前から世の中に出回っている。企業向けとしては、社外から社内へのリモートアクセスに多く使われ、一般消費者向けとしては、インターネットバンキングなどの認証に使われている。RSA SecurIDの一番の競合と言えば、VASCO の DigiPass である。一般的には、VASCO は、価格がリーズナブルだということで、最近、普及が広がっている。

これらの二大 OTPベンダーの業界における地位は揺るぎないと考えられるが、近年、OATH(Open Authentication)というオープンな認証規格をベースにしたOTP製品が多くリリースされていて、機能・コスト面での競争も激しくなって来ているらしい。

Mi-Token もOATHに参加している OTPベンダーの一社で、ハードウェアトークンやソフトウェアトークンだけではなく、他社製品のトークンも管理できるソフトウェアを提供している。本社は米国にある。最初の製品は、オーストラリアの銀行向けに2005年に開発された。それ以降も製品開発は継続され、2009年に Mi-Token Inc. という独立した会社としてスピンアウトした。

Mi-Token で管理できるトークンの種類

Mi-Token はトークンを販売する会社ではなく、トークン管理をする会社として自分達をポジショニングしている。自社ブランドのハードウェアトークンも提供はしているが、OATH準拠のものであれば、他社製のトークンも管理できるソリューションになっている。また、ソフトウェアトークンは無償で提供される。モバイルソフトウェアトークンは、iOS はもちろん、Android, Windows Mobile, Java をサポートしている。

Mi-Token管理ソフトウェアの3エディション

Enterprise Edition: 企業内利用を目的としているエディション。ユーザー管理はActive Directoryで行うことが前提。SSL VPNなどのリモートアクセスや、社内アプリケーション(OWA、SharePoint)に対応。インストールも簡単で、1時間もあれば、設定まで終わることができる。 

API & Cloud Services Edition: クラウドサービスなどで提供されるアプリケーションにワンタイムパスワード認証を組み込むためのエディション。APIを提供。 

Banking Edition: インターネットバンキングなど銀行業務に必要なセキュリティ機能を装備。FIPS 140-2 Level 3認証済み。100万人ユーザーでの利用実績あり。 

Mi-Tokenの特長

次の三点に絞られるだろう。

  • 従来のOTPソリューションに比べ低価格 
  • 最新技術を使って製品開発されているため、インストール・設定が簡単、お客様のニーズにも柔軟に対応しやすい。
  • API、SAML経由での他アプリケーションとの連携が簡単

以下の図のように、従来のOTPベンダーよりも10分の1のコスト、6分の1の時間で、本当に導入できるかどうかは、お客様の要件等にもよるだろう。しかしながら、1986年に初めて世に出てきたOTPという認証技術が今でも進化し続け、低コストを実現しているだけでなく機能面も優れている製品として、新しく生まれて来たということは興味深い。

# # #

記載の会社名、製品名等は、各社の登録商標または商標です。