ここが危ない!Web2.0のセキュリティ

第6回 WebAPI,認証APIのセキュリティ

この記事を読むのに必要な時間:およそ 2 分

認証APIの仕組み

あるサイトの認証情報(たとえばユーザID)を,別のサイトから利用したい場合があります。たとえば,ブログでのコメント書き込みの際に認証を行いたい場合などです。その場合,ID/パスワードを別のサイトに入力する必要がありました。しかし,セキュリティのことを考えると,ユーザはID/パスワードを別のサイトに入力したくはないはずです。また,サイトの管理者も余計な個人情報を受け取りたくはありません。

図1 認証情報を扱う場合の問題点

図1 認証情報を扱う場合の問題点

そこで考え出されたのが認証APIです。認証APIを使うことで,ユーザは認証情報利用サイトにIDとパスワードを入力せず,認証情報提供サイトと直接認証を行うことができます。いくつかのサイトが認証APIを提供していますが,細かい違いはあるものの,基本的な考え方は同じですので,一般的な認証APIの説明をしたいと思います。

図2 認証APIの仕組み

図2 認証APIの仕組み

ユーザが認証情報利用サイトにアクセスします。(1)
認証情報利用サイトがユーザの認証情報を利用したい場合,ユーザを認証プロバイダ(認証情報提供サイト)にアクセスさせます。(2)
認証プロバイダにアクセスしたユーザは,そのサイトが確かに認証プロバイダであることを確認して,認証プロバイダ用のIDパスワードを入力します。(3)
認証に成功すると,認証プロバイダは認証情報利用サイトへとユーザを遷移させます。(4)
認証情報利用サイトは,認証プロバイダへ問い合わせることで,ユーザの情報を受け取ることができます。(5)(6)

このように認証プロバイダが認証APIを提供していれば,ユーザと認証情報利用サイトの間でIDとパスワードをやりとりしなくても,認証情報利用サイトは必要な情報のみを取得することができます。

認証APIのセキュリティ

これまで,各企業や団体は独自の仕様で認証APIを提供していました。そのため,認証APIを提供するサービスが増えた場合,ユーザは各サービスごとにID,パスワードを入力する必要がありました。そこで特定の認証プロバイダに頼るのではなく,誰でも認証プロバイダになれるようにしようという動きがあります。OpenIDはその代表例です。認証APIを提供する方法を規約として定め,その規約に則ってサービスを開発すれば,任意の認証プロバイダを利用することができ,ユーザの負担を減らすことができるというわけです。ユーザから見れば,シングルサインオンが実現されます。

しかし,どの認証プロバイダを利用するかはユーザに委ねられています。そのため,セキュリティを考慮していない認証プロバイダを選んでしまった場合には,認証プロバイダがSQLインジェクションセッションハイジャックのような攻撃に遭うことで,認証情報が盗まれることも考えられます。また,フィッシングのように,偽物の認証プロバイダに情報を入力させられてしまうことで,認証情報が盗まれることも考えられます。

以下に,セキュアな認証プロバイダを見分ける上での最低限のポイントを紹介します。

  • SSLが適切に使われているか
  • ログイン画面およびログイン後の画面で,HTTPSが使われているかを確認します。
  • 情報利用先のURLが表示されるか
  • どのサイトにユーザの情報を送信するかについて,ユーザに確認してもらうためです。ユーザが意図しないサイトに情報を送信することを防ぐことができます。
  • フィッシングの可能性について注意を促しているか
  • 偽物のサイトに情報を入力させられてしまった場合の被害は甚大になります。そのようなリスクを把握しており,ユーザに注意喚起しているということは,その認証プロバイダがセキュリティに気を遣っているということがわかります。

現在,認証プロバイダはより多くのユーザ数獲得に乗り出しています。ユーザ数が多いということが,認証プロバイダとしての信頼性につながると考えているためだと思われます。ユーザがセキュリティの観点から認証プロバイダを選択することで,セキュリティ意識の低い認証プロバイダが淘汰されていくのではないでしょうか。

また,認証情報利用サイトの側からも,どの認証プロバイダを信頼するかについて気を配るべきです。認証プロバイダの中にはまったく認証を行わないで,匿名サービスを提供するものも存在します。認証情報利用サイトで提供するサービスの種類によっては,匿名サービスを提供する認証プロバイダを拒否することも,検討する必要があります。

著者プロフィール

福森大喜(ふくもりだいき)

株式会社セキュアスカイ・テクノロジー CTO。大学の授業で作成したプログラムのセキュリティホールを指摘されたのがきっかけでセキュリティの道に進む。セキュリティベンダーでIDS,IRT等に従事した後,Webアプリケーションのセキュリティ検査サービスを立ち上げる。2006年4月に株式会社セキュアスカイ・テクノロジーを設立。

URLhttp://www.securesky-tech.com/

コメント

コメントの記入