不特定多数の方に開放したホームページ上で販売を行うネットショップ・オンラインショップにおける電子商取引では、ユーザーの入力情報を保護する事が必須であり、更に外部からの攻撃に備え十二分な対策を講じる必要があります。
ショッピングカートCGIプログラムについては、自作できる方は自作、無償のものから有償のものまでオンラインで入手できるものやショッピングカートASPなど様々なモノがありますが、それらを入手するだけではなく、SSLに関しては、自サイトのサーバが対応している事が大前提で、個人情報を含む重要な通信部分でSSLを適用する必要があります。
自作する以外の方法で入手する場合には、配布者の意向でCGI自体改変できないケースや、改変が許されていてもCGI自体わからない、自分ではプログラミングできても他の人が作ったCGIを解読できない、解読する自信がない為、入力チェックやサニタイジングと言われても手をつけられないという事もあるかもしれません。
この場合は入手したショッピングカートCGIがある程度完璧なものである事を祈るしかありませんが、果たしてそれでいいのでしょうか?
もちろん答えはNOです。
以降では注意すべきショッピングカートCGIプログラムの例をいくつか挙げ、なぜ注意が必要か、何が不足していて、何が必要かについて書いています。
個人情報を扱うショッピングカートを利用するからには、以降の事項について対処できる必要があり、逆に言うとこうした対処ができない場合には買い物ができる機能、ショッピングカートを採用・公開すべきではありません。
因みにメールで注文を受け付ける方法は、最近の技術で有料のもの(しかも相当高額)を利用しない限り、ウェブを利用する以上に安全性を確保する事ができません。
その為、以降の対策すらままならないという場合、まずショップが大繁盛している状態ではないしょうし、その一方で、個人情報漏洩による訴訟リスクを負う事は本意ではないでしょう。
インターネット上が善意の人々だけが参加する場なら問題はありませんが、実際には残念ながらサイバー攻撃やフィッシング詐欺などを行う悪意ある人々もおり、今やどのサイトが被害に遭ってもおかしくないのです。
こうしたサイバー攻撃の中で不特定多数のサイトに攻撃を仕掛ける場合に真っ先に被害に遭うのはセキュリティの甘いサイトです。
サイバー攻撃の中にはDDoS攻撃などセキュリティの甘い個人のPCや企業や団体のネットワークやPCが踏み台にされるという事実がありますが、個人情報を扱うサイト運営者のサイトでセキュリティが甘いという事はPCが踏み台にされている可能性すらあります。
個人情報を扱うサイトがセキュリティが甘い場合には、即、個人情報流出につながります。
つまり、「個人情報を扱うサイト運営者が継続してセキュリティ対策を講じる事ができない」サイトでは過去・現在・未来のお客様にとっても運営者にとっても不幸な結果を招く事はほぼ確実なのです。
因みに後半では、こうした対応ができる場合であっても完全ではない、より完全を期そうとすると善意のアクセスも拒否しなくてはならないケースもある点に言及していますが、これまでの対策を講じることで被害を最小限に抑える効果がある事は確かです。
ショッピングカートに必要な品質確保する為の大前提の対策。
セキュリティを考える上でショッピングカートCGIの対策を講じただけでは不足です。
ショッピングカートCGIで利用する複数のファイルと公開するウェブサーバ上のセキュリティ設定とディレクトリ保護、ウェブサーバへのアップロード、ターミナルエミュレータ利用におけるセキュアな接続なども必要です。
また、ログインID、パスワードはセキュアなウェブサーバ、セキュアなFTPソフト、セキュアなターミナルエミュレータにおいても徹底管理が必須です。
ネット上でショッピング機能を利用する場合、「一連の操作をしているユーザー」を特定する為にはcookie/クッキーの設定が不可欠です。
ここまでのセキュリティは最低限必要であり、cookieの実装によりショッピングカートを一応組み込む事はできますが、残念ながら完全にセキュリティが確保されるわけではありません。
また、善意のアクセスの拒否か、またはセキュリティ確保の二者択一を迫られるケースもあります。