「失敗事例に学ぶセキュアなWeb開発」
独立行政法人産業技術総合研究所
グリッド研究センターセキュアプログラミングチーム
高木 浩光 氏
return
 そもそも、何のために"セキュア"であることを目指すのか?それは、この情報社会においてユーザーが安心して社会的な情報インフラを使用できるようにするためであるとともに、自身を守るためでもあるだろう。  高木氏の講演では、数々の被害の実例が挙げられることで、聞き手として、直感的な理解ができた。このような「実例」=「結果」を参照することで、同じ過ちを繰り返さないための「対策」を検討することができる。このことがいかに重要なことであるかということ、言い換えればそれは、過去を未来につなげる姿勢であり、日々、技術は過去の成果の蓄積として成り立っているという事実を改めて実感した次第である。  講演においては4つの例が挙がった。それらを技術的に大きく分けると、アプレットに関するものとユーザー認証におけるものであった。また、そのどちらにおいても背景として想定されるのが、一般ユーザーのセキュリティに対する認識の低さであり、また、一般ユーザーのみならず、本来あってはならない開発者によるセキュリティの認識の低さである。

 高木氏のご説明では、一般ユーザーは普段自分が使用しているパソコンに対して、どれだけ無防備な状態で使用しているかにあまり関心がなく、そして、開発者は「使い易ければいい」「動けばいい」という考えを優先させてしまうが故に、その裏に潜む「脆弱性」を見逃してしまうという認識を示されていた。これが大きな問題であり、今後の重要な課題としてまずなすべきは、セキュリティという概念をいかにユーザーに浸透させるかということだろう。

 ここで、脆弱性の実例に挙がったものとしては、まず、Active X における事例、Java アプレットにおける事例がある。この二つに共通して言えるのは、最近の傾向として、アプレットから派生するクロスサイトスプリクティングの被害が急増していることである。Web開発にあたり、まず、使い易さを追求し、ブラウザに無い機能を補っていくその前に、何故ブラウザにそうした機能がないのかということを考えるべきであること、そして、信頼済みのサイトゾーンの指定については、ユーザーにその如何に問うものであり、開発者が勝手な判断の元に、指定を促すべきところではないということをご説明されていた。このようなお話を伺って、使い易さを求めながら、かつセキュアなものを提供すべきであることについて、改めて検討課題として伺った。

 また、認証、証明書に関する問題として今回取り上げられた例からは、どれも認証技術に関する主旨をはき違えていることが原因となっている事態についてご説明されていた。言い換えれば、認証技術を用いるのは、ユーザーが安心して使用するためにある技術であるはずにも関わらず、提供している側の誤った認識により、それが意味をなしていないという事実についてご説明されていた。  ここで重要なのは物事の本質を見極めることの必要性である。例えば、「目的」と「手段」を取り違えてしまうような事態は、本末転倒であるといえる。技術を手段として、正しく使用できなければ何の意味もなさない。ご講演を拝聴して、自らの業務への取り組みについて、このような心がけの必要性を改めて実感した次第である。  例えばそれは、提供した製品やサービスにセキュリティホールが発見された場合には、その事実を素直に受け入れ、事後的ではあるけれども的確な対応をすることが何よりも顧客の信頼を勝ち得る物だという態度につながるだろう。逆に言えば、自らの否を認めない態度からは、信頼が失われていくことが予測される。そして、環境から修正案が挙がったなら、それを付き返すのではなく、話を聞きいれ、何が最良かという態度に基づいて行動することが必要であると考える。  ご講演の内容からは、今回述べられた例が氷山の一角でしかないように筆者には思われた。脆弱性を含んだWebサービスが後を絶たないとすれば、それは、これまでの失敗事例から学ぶことはあるはずなのに、それを学ぶことをせず、失敗を繰り返していることになるだろう。そこで必要なのは、失敗事例から学ぼうとするユーザー個々の意識であるだろう。

 筆者は、業務としてセキュリティサービスを提供する立場にいるけれども、個人的には普段の業務とは少し異なる視点から「セキュリティ」というものを見ることができたことにより、改めて、業務に対しての取り組む意識と姿勢を考えるきっかけとなった。常に環境の動きに敏感であり、新しい情報を取り入れ、脆弱性の修正を行うことで、多くのユーザーが安心して使用できる環境を提供できるよう、気持ちを引き締められるご講演であった。

株式会社ラック SNS 事業本部 SOC 事業部 MSS 部 石山 和行


bottom_bar