【特集】SSLでセキュアなECサイト構築
〜ECサイト構築に必要なSSL、その仕組みと構築手順を詳細解説〜

インターネットの普及により、ネット上での商取り引きや買い物なども、ごく普通に行われるようになってきた。だがそこでは、直接人が顔を合わせることなく行われる取り引きだけに、ネットならではの各種トラブルがつきものだ。「盗聴」「データの改ざん」「第三者によるなりすまし」、ネットならではのトラブルに対処するにはどうしたらいいのだろうか?
本記事では、WebサーバとWebブラウザ間での安全な通信を実現するSSL(TLS)を利用して、セキュアなECサイト構築の際の各種ノウハウを前・後編の2回にわたって解説していこう

田中直人
ネットマークス
2001/2/17


Part.1 なぜSSLが必要か?

 ECとは、「Electronic Commerce」、つまり電子商取引の略である。コンピュータネットワークを利用して、商取引を行うことだ。

 実際に人と人とが行う商取引と異なり、ECにおいては、ネットワーク特有のリスクが存在する。安全なECサイトを構築するためには、これらのリスクへの対策を行う必要がある。

(1) ECサイトにひそむリスク

 ネットワーク特有のリスクが発生するのは、なぜだろうか? 通信を実施するWebサーバと、Webブラウザの間には、一般に多くの機器や通信ケーブルが介在している。また、途中の機器や通信ケーブルは一般に多くの組織、人間が共有して使用している。このことから、以下のリスクが考えられる。

●盗聴
 途中の機器や通信ケーブルを一般に多くの組織や個人が共有しているということは、そこでの通信の秘密は保証されていないということである。実際に、少し技術のある人間ならば、専用のソフトウェアなどを使用することにより、通信内容の盗聴は簡単に実施することが可能である。

 盗聴により、ECサイトで購入を行う場合の、個人情報や商品情報、クレジットカード番号などの情報が第三者に知られる危険性がある。

図1 インターネット経由でやりとりされたデータ(クレジットカード番号や個人情報など)は、第三者によって盗聴される危険がある

●改ざん
 上記のように、WebサーバとWebブラウザ間の通信経路が共有されている以上、情報が途中で改ざんされてしまう可能性がある。特にデジタル情報は、元来改ざんを検出するのが困難という特徴を持つことに注意しなくてはならない。

 改ざんにより、第三者が不正に購入した商品や、その数量、届け先などが変更される危険性がある。

図2 盗聴以外にも、送信したデータが途中で改ざん(賞品の数量や届け先の変更など)される危険もある

●なりすまし
 ECサイトが注意しなければならないリスクの1つに、サイトのなりすましが存在する。これは、あたかも本来のWebサーバのようになりすますことで、ユーザーが入力した情報を関係のないWebサーバに通信の途中で不正に使用されてしまうのである。

 これは、本来目的とするECサイト以外に、個人情報や、クレジットカード情報などを取得される可能性がある。

図3 ユーザーは普通にECサイトにアクセスしているつもりだが、実際には悪意のあるWebサーバが当該のECサイトになりすまして、ユーザーの入力した個人情報を不正に入手している危険もある。この場合、本来情報を受け取るべきサーバには情報は届かない


(2) SSLを使用したリスクの回避

 上記のリスクを回避するために、ECサイト側で対策を実施することが望ましいといえる。そのための方法の1つがSSLを使用するということである。

 SSLとは「Secure Sockets Layer」の略であり、WebサーバとWebブラウザの間で安全な通信を行うために米国Netscape Communications社が開発したセキュリティ機能である。これはIETFによる標準化も実施され、TLS(Transport Layer Security)としてRFC2246に記載されている。また、暗号化はSSLの場合IP層の上位にあるTCP層にて実施されるため、HTTPに限らず汎用的に使用可能である。

 安全な通信を実視するためにSSLが提供する機能は、主に以下のものが存在する。

●通信の暗号化
 SSLを使用することにより、WebサーバとWebブラウザ間にて、使用可能な暗号化アルゴリズムを決定し、通信データの暗号化が行われる。通信データを暗号化することにより、盗聴が行われた場合にも、通信内容が秘匿される。

図4 通信の際にデータを暗号化することで、盗聴されても通信内容の秘匿性が保たれる

●データの完全性チェック
 SSLでは、通信内容の完全性(データが送信されたままの状態であること)を保証するために、メッセージのダイジェストと呼ばれる値を計算して通信に添付する。通信の受信時にはダイジェスト値を再計算し、添付されたものと比較することにより、改ざんを検知することが可能となる。

図5 データを送信する際に、メッセージダイジェストと呼ばれる値を付加することで(値は送信するデータをもとに生成する)、途中でデータの改ざんがないかの確認ができる。これにより、データの完全性が保証される

●サーバの認証
 Webクライアントは、Webサーバから送信された電子証明書が、第三者の認証機関に保証されているかどうかの確認をすることができる。これにより、現在アクセスしているWebサーバのなりすましを未然に防ぐことが可能となる。

図6 あらかじめ通信する際に、Webサーバから送信された証明書をもとに、そのサイトが第三者機関によって認証されたものかどうかの確認ができる。これにより、Webサーバのなりすましを防ぐことができる


  「SSLサーバ導入の準備」 へ


Index
【特集】 SSLでセキュアなECサイト構築
Part.1 なぜSSLが必要か?
ECサイトにひそむリスク
SSLを使用したリスクの回避
  Part.2 SSLサーバ導入の準備
カギの長さと安全性
ソフトウェア/ハードウェアの選定
電子証明書
コンテンツ、そのほかの修正
  Part.3 SSLサーバのセットアップと運用
Webサーバ環境の用意
環境構築の手順
電子証明書の作成
Apacheの設定
Apacheの起動とWebブラウザによる動作確認
実際の運用における注意点
 


Security&Trust フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Security & Trust 記事ランキング

本日 月間