第7章セキュリティ対策技術とその動向

7章
セキュリティ対策技術と
その動向



 
7.1
7.1 個人認証とアクセス管理

 リモートアクセスによるオフィス情報システムへのアクセスは、接続の確認、接続後のユーザー認証によるアクセス権限の確認などの過程を経て、正規のユーザーであることやデータへのアクセス権限があることなどが確認されたのちにはじめて可能となります。

 常時接続の場合にはユーザー認証によりアクセス許可されますが、ダイヤルイン接続の場合にはユーザー認証に先立ってダイヤルイン権限の認証が行われます。
 ユーザー認証システムとは、文字どおりユーザーを認証し、特定して、ネットワークシステムのセキュリティレベルを高めるために使用されるシステムのことです。ユーザーIDやパスワードなどの組み合わせにより、ログインしてきたユーザーが、ネットワークの利用可能ユーザーであるかどうかを識別します。
 
ここでは、ダイヤルイン権限の認証とユーザー認証について説明します。
 

7.1.1 ダイヤルイン権限の認証
(1) ダイヤルイン権限とは
 PHSや電話回線からダイヤルイン接続を行う場合にはダイヤルイン権限の確認が行われます。
 

 一般的に企業のオフィス情報システムへの接続受け口として、リモートアクセスサーバーが利用されます。このサーバーでは、個々のユーザー(ユーザーアカウント)ごとに、ダイヤルアップによるネットワークへの接続を許可するかしないかの設定をすることができます。これをダイヤルイン権限といいます。ダイヤルイン権限を与えられていないユーザーは、接続の電話番号を知っていたとしても、ネットワークに接続することはできません。
 
(2) 発信者番号通知による認証

ターミナルアダプターやリモートアクセスサーバーなどには識別着信という機能があります。これは発信者側の電話番号をあらかじめ登録しておき、発信者番号通知を利用して登録されている番号からかかってきた通信以外は、着信を許可しないというものです。

発信者番号通知サービス
 
発信者番号通知サービスとは、発信者の電話番号を着信側の電話機や通信機器に表示させるサービスです。応答前に相手先の電話番号がわかるので、不正なアクセスやいたずら防止に効果があります。発信者側は携帯電話、PHS、固定電話すべてで利用可能です。ただし、いずれの場合も発信者側では、発信者番号通知機能を有効にしておく必要があります。
 

(3) コールバックによる認証
  リモートアクセスのセキュリティ機能を高めるために、コールバック(着信側からのかけ直しダイヤル接続)と呼ばれるオプション機能を設定することができます。
 

 接続手順は以下のようになります。

@

クライアントマシンからリモートアクセサーバーへダイヤルアップ接続を行います。

A

リモートアクセスサーバーはクライアントマシンに対してユーザー名とパスワードを問い合わせ、認証を行います。

B

認証が完了するとリモートアクセスサーバーは接続をいったん遮断します。

C

事前に登録してある電話番号にリモートアクセスサーバーが、折り返し電話をかけて、ようやく接続完了となります。
 

 この方法は、ユーザーの電話番号が特定されている場合(在宅勤務やサテライトオフィスなど)には非常に有効で高度なセキュリティレベルを提供します。第三者が(リモートアクセスサーバー側)電話番号やユーザーアカウントを手に入れても、事前に指定された電話番号(クライアント側)からの発信でなければ、ネットワークへのアクセスができないことになります。費用もクライアント側が負担するのは最初の接続の時だけで、実質的なデータの転送にかかる料金はリモートアクセスサーバー側で負担することができます。
 

コース (A  B  C  D  E)



7.1.2 ユーザー認証
(1) パスワード認証(PAP認証)

PAP(Password Authentication Protocol)と呼ばれるシステムでは、パスワードは暗号化されパスワードファイルとして保有しています。
 
ユーザーが企業内のオフィス情報システムにログインしようとすると、サーバーはユーザー名とパスワードの入力を求めてきます。ユーザーが入力した文字はクライアント上では、暗号化されずにそのままの形で回線上を送られてきます。
 サーバーはパスワードを受け取るとパスワードファイルを暗号化したときと同じ方法で暗号化します。その後、サーバーは2つのパスワード(ユーザーから来て暗号化したパスワードとシステムで保有している暗号化済みのパスワード)を比較して、一致していればユーザーのログインが許可されます。

PAPの課題
 
PAPシステムの場合、パスワードファイルは暗号化されているので、パスワードファイルそのものは安全ですが、ユーザーが入力したパスワードは、サーバーで暗号化されるまでは暗号化されていないので、パケットが盗聴される危険があります。
 

(2) パスワード認証(CHAP)

CHAP(Challenge Handshake Authentication Protocol)認証は、チャレンジレスポンスという方式を利用した認証システムです。
 
このシステムでは次のような処理が行われます。
 ユーザーがユーザー名を入力すると、サーバーは乱数鍵を生成してそれをユーザーに送り返します(チャレンジコード)。ユーザーはその鍵を使ってパスワードを暗号化しサーバーに送ります(レスポンスコード)。
 サーバーは、ユーザーから送られてきた暗号化されたパスワードをサーバー自身が生成した暗号化されたパスワードと比較して、一致すればユーザーのログインを許可するという仕組みです。

 このCHAP認証は、パスワード盗聴の危険を減らすことはできますが、サーバーに侵入され、パスワードを盗まれてしまうケースや、パスワードを打ち込む際に盗み見られてしまうケースでの危険性は残ります。
 

(3) パスワード認証(ワンタイムパスワード)

 PAP認証やCHAP認証の問題点を解決し、より安全なユーザー認証を行うための仕組みに、ワンタイムパスワードがあります。
 
ワンタイムパスワードとは、文字通り、接続する毎に入力するパスワードが毎回変わる方式で、一度使用されたパスワードは次回からは使用できないようになっています。
 また専用プログラムやハードウェアを利用するため、パスワードの盗み見等に対するリスクも軽減できます。
 ワンタイムパスワードの実現方式として、チャレンジレスポンス方式とタイムシンクロナス方式があります。
 

@ チャレンジレスポンス方式

チャレンジレスポンス方式を採用したワンタイムパスワードのシステムは、先に説明したCHAP認証と同じ方式をとっています。
 
ユーザーは登録されているユーザーIDを入力します。要求を受けたサーバーは毎回異なるチャレンジコードを送付します。
 
ユーザーはパスワード生成ツール(サーバー・ユーザー共通の演算処理プログラム)を使って、送られてきたチャレンジコードと固定パスワードを使ってレスポンスコードと呼ばれるワンタイムパスワードを生成し送り返します。
 サーバー側でもパスワード生成ツールを持っており、クライアントと同じ手順でレスポンスコードを作成します。送られてきたレスポンスコードと作成したレスポンスコードを比較し、合っていればログインを許可します。
 

A タイムシンクロナス方式

タイムシンクロナス方式は、一般的にはカード型の専用ハードウェアを使います。このカードには、決まった時間ごとに、毎回違ったコードが表示されます。
 このカードと認証サーバーでは時間の同期を図っており、カードに表示されるコードと同じコード(パスコード)が認証サーバー側でも発生します。ユーザーはIDを入力した後、自分の4桁の暗証番号(PINコードと呼ばれる)をカードに表示されている値(表示コード)に付加してパスワードを生成し、送信します。
 
認証サーバー側でも、同じ処理が行われ送信されてきたパスワードが一致すればログインできるようになります。
 このシステムは、専用のハードウェアを利用し、なおかつ毎回、回線上を流れるパスワードが変化するため、盗聴とパスワードを盗む行為に対して威力を発揮します。

 なお、この方式はトークン方式とも呼ばれます。
 さらに、この方式には専用ハードウェアを使う方法のほかに、コード(トークン)の作成・表示などをソフトウェアで行い、これを使って上記と同様に認証する方法もあります。
 

Bマトリクスコード認証方式

マトリクスコード認証方式とは、オンラインバンキングや証券取引や自治体取引などで利用されている認証方式です。事前に利用者毎に異なる乱数表を記載したマトリクスカード(物理的認証媒体(マトリクスコード表))を配布し、その乱数表を利用して認証を行うものです。

(a) 利用者は、まず認証初期画面へアクセスして、ユーザーIDと固定パスワードを入力してログインする。
(b) サーバーからマトリックスカードに対する質問(チャレンジ)が表示されるので、手元のカードを見て答え(レスポンス)を入力して返信する。例えば、利用者はサーバーから任意に指定された位置の数字をマトリクスコード表から選び、入力して返信します。
(c) サーバーにて認証が実施される

マトリクスコード認証方式は、物理的認証媒体(マトリクスコード表)と個人の記憶(ユーザーID,固定パスワード)を組合わせてレスポンスコードが生成されるため、一方を紛失・盗難時にも、一定の安全性が確保されます。
 また、トークンを使わない安価なワンタイムパスワード方式であり、利用端末へ特別なアプリケーションをインストールする必要も無く、認証データの専用読み取り装置も必要としないため、ICカード等と比較して安価でユーザーの利便性を向上させていることが特長の一つです。
 

(4) 生体認証(バイオメトリクス認証)

バイオメトリックスとは指紋や顔、網膜パターン(虹彩)、静脈、掌紋、声紋などを用いて本人認証を行う技術です。
 バイオメトリックスの技術を応用すれば、銀行の現金自動支払機に備えてあるレンズを数秒間見つめるだけで預金をおろすといったことが可能になります。この場合、本人以外には絶対にお金はおろすことができず、また、カードのように家に置き忘れるような心配もありません。

 リモートアクセスや外部ネットワークからの接続では、指紋を利用したシステムが利用されるようになりました。  パソコンに小型のスキャナを接続し、指を乗せて指紋の情報をサーバーに送信して認証を行うシステムです。
 サーバー側には、ユーザー登録時に本人の指紋や掌紋などを登録します。スキャナに写された指紋や掌紋などは、複雑なアルゴリズムを使って細かい点と線のデータに変換されます。これらの情報はさらに暗号化されサーバー内に保存されます。指紋や掌紋そのものを保存するのではありません。また保存情報から元の指紋や掌紋を復元することもできませんので高度なセキュリティレベルが保てます。
 

(5) RADIUS(Remote Authentication Dial-In User Service)認証
@ ユーザー認証一元化の必要性

リモートアクセスの規模が大きくなり、アクセスポイントを複数持つようなシステムの場合は、アクセスポイントのリモートアクセスサーバーごとに認証システムを用意しなければなりません。さらに、すべてのリモートアクセスサーバーが同期をとり同じ認証データを持っている必要があります。すなわち、ユーザー情報を一元管理し、その情報にてユーザー認証を行う必要があります。
 これを行うために、リモートアクセスサーバーの上位にユーザー情報を一元管理するためのサーバーを設置し、リモートアクセスサーバーからの要求に基づきそのサーバーにてユーザー認証を行う方式をRADIUS(Remote Authentication Dial-In User Service)認証方式と呼びます。
 

A RADIUSにおける認証方式


RADIUSにおける認証手順は以下のようになります。

@

クライアントマシンからリモートアクセスサーバーへユーザーIDとパスワードを送ります。

A リモートアクセスサーバーはRADIUSサーバーに認証要求をあげます。
B

RADIUSサーバーは認証データベースにて認証確認を行い、承認及び接続情報をリモートアクセスサーバーに返します。

C

リモートアクセスサーバーはクライアントマシンに対して通信開始を許可します。

D 同時に、RADIUSサーバーに通信開始情報を送ります。
E RADIUSサーバーは必要に応じて課金ログ情報などの収集も開始します。
F

クライアントマシンからリモートアクセスサーバーへ通信終了を送ります。

G

リモートアクセスサーバーは、RADIUSサーバーに通信終了情報をあげます。

H RADIUSサーバーは課金ログ情報などの収集も終了し、アカウント情報をデータベースに記録します。
 上図の場合、リモートアクセスサーバーをRADIUSクライアントと呼び、RADIUSサーバーとのこのようなやり取りがRADIUSプロトコルとして規定されています。
 
さらに、RADIUSでは、認証機能のほかに、課金機能なども有しています。
 
(6) Kerberos認証

Kerberosは MIT(マサチューセッツ工科大学) で開発されたオープンネットワークシステムのための認証システムです。
 Kerberosの認証は認証チケットをもとに行われます。
 
その手順は以下のようになります。

@

クライアントが認証サーバーにチケット発行要求を行います。

A

パスワードやIDが正しければ認証サーバーはチケットを発行します。

B

クライアントはリソースを利用したいサーバーにチケットを提示します。

C

リソースサーバーはチケットを検証してリソースを提供します。

D

使用が終わるとクライアントはチケットを認証サーバーに返却します。

 ユーザー認証という意味ではきめ細かい制御が可能ですが、リモートアクセスでの利用においては、ユーザー認証する際にユーザー認証サーバーとの接続を行う必要があり、手続きが複雑になり運用が難しく不都合な点もあります。
 

(7) 認証システム選択のポイント

認証システムの選択ポイントは、

・ コスト 
・ セキュリティ強度
・ ユーザーの使いやすさ

の3点になります。

 Windows OSなどに付属している認証システムは、比較的使いやすくコストはもっともかかりませんが、クラッキング(
悪意をもって他人のコンピュータのデータやプログラムを盗み見たり、改ざん・破壊などを行うこと)の対象となりやすいのも事実です。
 一方、サードパーティ製のものは、OS付属のものよりもクラッキングの対象となりにくいといえますが、独自の設定方法や操作方法を習得しなければならない場合もあります。

 
リモートアクセスで利用する場合は、顔の見えない状態で、ネットワークに接続するので強固なセキュリティ機能が必要ですが、余り特殊で難しい設定方法をマスターしなければならないとユーザーの利便性を損ない、逆にセキュリティ強度を低下させることにもなりかねません。

 上記の3つの観点から利用環境に応じてバランスのとれたものを選択します。
 

コース (A  B  C  D  E)