倫理的なハッカーになるにはまず脆弱性を知ろう
Aug 8, 2016
この連載では倫理的なハッカーになりたいけれど何をしたらよいのか分からない人向けに、脆弱性の見つけ方やセキュリティ診断に関するノウハウを紹介します。情報セキュリティ人材の育成が求められている昨今、この連載をきっかけに倫理的なハッカーが増えることを期待します。
第1回目は脆弱性の概要と扱い方を説明します。
脆弱性とは
脆弱性とはソフトウェアのバグで不正行為に悪用できるものを指します。例えば、Webサイトに登録されたユーザーの機密情報を見られたり、サーバーを停止させられたりするなど、運営者(運営組織や開発者)やユーザーに被害を与える恐れのあるバグを脆弱性と言います。
悪意あるハッカーはサイバー攻撃に悪用できそうな脆弱性を日々探しています。もし脆弱性の存在を彼らに知られてしまった場合、それを悪用したサイバー攻撃に遭う恐れがあります。また、脆弱性の正しい扱い方を知らないユーザーに見つかり、ブログやSNSなどに情報を公開される可能性もあります。その場合、ソフトウェアやその運営者の信頼を損ねるなど、風評被害につながる恐れもあります。
脆弱性の重要度
同じ脆弱性が見つかった場合でも、ソフトウェアが扱っている情報や使われている環境によって重要度は変わってきます。ここでは脆弱性の「影響度」と「攻撃容易性」を取り上げて重要度を考えてみます。
Webサイト改ざんに悪用できる脆弱性が、社内ネットワークからしかアクセスできない勤怠管理サイトと、インターネットに公開しているBugBounty.jpで見つかったとします。この例での影響度と攻撃容易性を比べてみます。
影響度
勤怠管理サイトの場合、直接的な被害を受けるのは社員に限られます。しかし、BugBounty.jpが改ざんされた場合、ユーザー全員が直接的な被害を受ける恐れがあります。また、ユーザー離れにつながるなど企業経営にも影響を及ぼしかねません。攻撃容易性
悪意あるハッカーが勤怠管理サイトを攻撃する場合、社内ネットワークに侵入しないといけません。しかし、BugBounty.jpの場合、彼らはインターネットを介してどこからでも容易に攻撃できます。
この例ではBugBounty.jpで見つかった脆弱性の方が影響度と攻撃容易性は高いため、重要度も高いと判断できます。倫理的なハッカーとして脆弱性を報告する際は、このような点についてコメントしてあげると運営者が重要度を判断しやすくなるでしょう。
脆弱性を見つけたら
脆弱性を運営者に直接報告するのもひとつのやり方です。しかし、運営者から返事をもらえず放置されたり、質問や予想外の依頼などを持ちかけられたりと、やりとりに手間取ります。
このような状況を避けるためにはIPA(独立行政法人 情報処理推進機構)に報告します。IPAとは経済産業省が管理する組織で、脆弱性情報の届出を受け付けています。届出窓口から報告すれば後はIPAが円滑に進めてくれるため、運営者と直接のやりとりをせずに済みます。また、最近はバグ報奨金制度を導入する企業が増えてきました。対象ソフトウェアの脆弱性を見つけて報告すれば報酬を得られるかもしれません。
報告を受けた運営者は悪意あるハッカーに脆弱性の存在を知られる前に対策を行なえます。脆弱性を報告することは運営者やユーザーをサイバー攻撃から守ることにつながるのです。
社会平和に貢献でき、報酬も得られる。素晴らしいですね。
次回は脆弱性を見つける際の注意点を説明します。