こうなってくると、自社のシステムにインターネットを利用するユーザ企業は、その構築・運用の際、可能な限りのセキュリティ侵害対策をしておかなければならないわけですが、それでも悪意者の技術は日進月歩で、どうしてもこちらの対処が追いつかないこともしばしばです。
では、不幸にして攻撃を受け、なんらかの損害を被ったとき、その責任は誰が負うのでしょうか。例えば個人情報漏洩があったとき、その賠償は、もちろん、その情報を預かっていた企業等(ここではユーザ企業と呼びます。)が負うわけですが、彼らからすれば本当の責任は、そもそもシステムを構築したベンダ企業にあるのではないかとも考えたくなります。一般の企業はITに関しては素人です。今、世の中でどんな攻撃が行われ、それを守る技術にどのようなものがあるのか、そんなことはITの専門家であるベンダが検討し提案するものであって、例え要件定義書にセキュリティに関する事項が書かれていなくても、必要な対策を盛り込むのは専門家としての責任であろうと考えるわけです。
この考えはある意味正しく、多くのシステム開発や導入においては、ベンダ企業がユーザ企業に対する提案や設計のとき、自発的にセキュリティ対策の必要性を説き、対策を行う例も数多くあります。ただ、実際のところ、ベンダ企業も日々開発される新しい攻撃手法の全てを知っているわけではありませんし、たとえ知っていたとしても、費用対効果なども考慮して必ずしも必要なセキュリティ対策を全て打てるというわけでもありません。ユーザ企業もベンダ企業もシステム開発・導入にあたっては、やはりある程度の危険は覚悟しなければならないわけです。
ではその時の責任は?
しかし、そんな中で実際に攻撃を受け、損害が発生したときには、その責任はユーザとベンダのどちらが負うべきなのでしょうか。今回は、そんなことが争点になった事件をご紹介したいと思います。実は、こうした話題については、私自身もあちこちの講演や記事などで発表しているのですが、やはり裁判などでも、争点になることも多いことから、今回、改めて整理してみたいと思います。
セキュリティ侵害があったとき、その責任はどちらにあるのか、もしベンダの責任にも限界があるとするなら、それはどうした線引きによって行われるのか、まずは事件の概要からご覧ください。
(東京地方裁判所 平成26年1月23日判決より)
あるユーザ企業が、WEBによる販売システムの構築をベンダに依頼し、ベンダはこれを完成させた。完成したシステムはレンタルサーバ業者と契約したデータベースサーバ上に格納される仕組みだったが、稼働から約1年後、それまでは格納していなかった顧客のクレジットカード情報も、このサーバ上に保管することとなった。ただし、クレジットカード情報は暗号化されていなかった。
それから1年数か月後、このサーバがSQLインジェクションによる攻撃を受けた。具体的な被害については不明だが、調査したところクレジットカード情報6795件すべてが漏洩した可能性が高いとのことだった。
ユーザ企業は、この事件の原因は、セキュリティ侵害を受ける危険のあるシステムを開発したベンダにあるとし、約1億1000万円の損害賠償を求めたが、ベンダがこれに応じなかったため、裁判となった。
この判決は平成26年に出たものですが、事件自体は平成21年に発生したもののようです。ホームページ上から悪意者が不正なSQLを実行してデータを盗んだり破壊したりする攻撃は当時も頻繁に行われていたもので、その対策としてSQLを実行できないホームページを作成したり、盗まれたときに備えてデータベースを暗号化しておく方法をとること自体は、少なくともITベンダであれば知っていたことです。
ところが、このシステムではそうした対策が打たれていませんでした。データベースが危険な状態にあったことは、裁判所も調査結果を引用して以下のように述べています。