章 2章. 攻撃者と脆弱性

有効なセキュリティ対策を計画し実施するために、まず、しつこい攻撃者が不正アクセスをしシステムの感染をさせるいくつかの問題について知っておいてください。しかし、これら問題を詳述する前に、攻撃者を識別するときに使用する用語を定義しておく必要があるでしょう。

2.1. ハッカーの略歴

現代のハッカーという言葉の意味はその語原を1960年代までさかのぼります。マサチューセッツ工科大学の技術モデル鉄道クラブが大規模で複雑な鉄道セットを設計しました。ハッカーとは、巧妙なトリックや問題の回避方法を見つけたクラブメンバーに対して使われていた名前でした。

これ以降、ハッカーという用語はコンピュータ狂から天才プログラマーまで幅広く使われるようになりました。ほとんどのハッカーにみられる一般的な特徴は、自力でコンピュータのシステムとネットワークがどのように機能するかを詳細に探求する意欲に満ちていることです。オープンソースソフトウェアの開発者はよく自分自身と仲間をハッカーとみなしており、敬意を表してこの単語を使用します。

一般的には、ハッカーはハッカーの倫理を守っています。ハッカーの倫理とは、情報と専門知識の探求は不可欠であること、この知識の共有はコミュニティに対するハッカーの義務であることとなっています。この知識探求で、コンピュータシステムのセキュリティコントロールの裏をかくことに学究的な意欲を燃やし楽しむハッカーもいます。理由は、マスコミが頻繁にハッカーと言う言葉を使用して、節操なく、悪意を持って、あるいは犯罪的な意図でシステムやネットワークに不正にアクセスする者達を表現するからです。こうしたコンピュータハッカーに対する的確な呼び名は、クラッカーになります — 2つのコミュニティを差別化するため1980年代の中頃にハッカーによって作られた造語。

2.1.1. シェード・オブ・グレー

システムやネットワークに脆弱性を発見して不正アクセスをする人々のコミュニティには、いくつか異なるグループがあります。これらのグループは、セキュリティ調査を行なう際に "かぶる" 帽子の色によってよく表現され、この色がそのハッカーの意図を表します。

ホワイトハットハッカーとは、ネットワークやシステムをテストしてパフォーマンスを調べ、侵入に対してどのように攻撃を受けやすいかを測定する人です。通例、ホワイトハットハッカーは自分のシステム、または顧客のシステムにクラッキング行為を行ないます。顧客とはセキュリティ監査の目的でホワイトハットハッカーを雇用した人または企業・団体です。学術研究員やセキュリティコンサルタントの専門家などがその例です。

ブラックハットハッカーはクラッカーの同意語です。一般的に、クラッカーはプログラミングやシステム侵入に関する学究的な側面にはあまり焦点をおいていません。多くの場合、クラッカーはクラッキングできるプログラムをあてにしています。システムの既知の弱点に不正アクセスして、個人的な利得のためにセンシティブな情報を暴露したり、あるいは目標のシステムやネットワークに損害を与えます。

一方、グレーハットハッカーは、ほとんどの場合、技術を有し、ホワイトハットハッカーと同様の意図ですが、ときには立派な目的以外に自分の知識を活用することもあります。グレーハットハッカーとは、自分の行動予定を達成するときにはブラックハットをかぶるホワイトハットハッカーと考えてよいでしょう。

グレーハットハッカーは概して異なるハッカー倫理を持っていて、それには窃盗を働いたり機密漏洩などの違反を犯さない限り、システムに侵入するのは許容範囲とされています。これに関しては議論のあるところですが、システムへの侵入行為それ自体は非倫理的な行為です。

侵入者の意図が何であれ、クラッカーが不正アクセスしそうな弱点を知っておくことが重要です。以降、この点に焦点をあてて解説していきます。