■そもそも「セキュリティ」とは何か
ビルや商業施設には、監視カメラや警備員がいて、不正を働く輩がいないかを常時監視をしています。仮に不信な動きをする人が居れば、その行動を追跡し、事前に建物への不正侵入やモノの窃盗などを防ぎます。
仮に、このような事故(インシデント)が実際に発生してしまったら、現場検証を行い、不正を働いた犯人を見つけ出します。
犯人が見つかれば、損害賠償請求など法的な措置をとるなどして、被害をリカバリすることになります。
このような一連のインシデントに対する取り組みを「セキュリティ」と言います。
■ITにおけるインシデントとは何か
ITを利用するには、PCやサーバなどのハードウェア、そこにインストールされるソフトウェアが必要です。
インシデントは、ハードウェアとソフトウェアの両方で発生します。たとえば、サーバが設置してある建物に侵入して破壊したり、ソフトウェアを無断で操作して不正な処理をさせたりするなどです。
インシデントは、突然発生しますが、ハードウェアの故障やソフトウェアの不具合(バグ)のように、自動的に発生するわけではありません。人間が介在して、わざと(故意)に発生させます。つまり、インシデントは「人為的不具合」です。そうなると、ハードウェアやソフトウェアだけではなく、悪意を持った人間も監視する必要があります。
その結果、ITにおいて、セキュリティを確保するために監視する対象は、
①ハードウェア
②ソフトウェア
③それにかかわる人間
の3つです。
最も重視すべき対象は、「人間」ですが、残念ながら人の心の中を監視することはできません。せいぜい、データやPCの社外への持ち出しの禁止など、細かい業務規則を厳格に遵守させることぐらいです。
■性悪説=人間を信用しない(ゼロトラスト)
信用できない人間からハードウェアとソフトウェアを守る手段は、マネジメントとテクノロジーを融合させ、ハードウェアとソフトウェアが存在するあらゆる箇所でチェックを行うことです。
そのために、ハードウェアとソフトウェアには次の機能が必要となります。
「信頼できる人間や組織を選別し、ハードウェア、ソフトウェアを必要な機能に限定して利用させる」
■信頼できる人間を選別する
これを「本人認証」と言い、「所持」と「記憶」という人の行為と機能を使い、信頼できる人間であること検出します。
「所持」は、クレジットカード、会員カード、生体(指紋、声紋など)を保有すしていることです。あらかじめ、これらに含まれるデータをソフトウェアで管理しておきます。
ハードウェアやソフトウェアを利用する際に、これらを提示させ、ソフトウェアで照合することで、信頼すべき人間であることを検出することができます。
「記憶」は、IDとパスワードを覚えておくことです。IDとパスワードをソフトウェアで管理しておきます。
ハードウェアやソフトウェアを利用する際に、これらを入力させ、ソフトウェアで照合することで、信頼すべき人間であることを検出することができます。
■信頼できる組織を選別する
組織を認証するには、「所持」や「記憶」は使えません。なぜなら組織は、実体がない単なる概念上の人の集まり(グループ)でしかないからです。
しかし、実体はありませんが、それを定義したデータは存在します。たとえば、法人登記であるとか、会社内で決められた組織図などです。これらに連動させた以下の仕組みがあります。
・DNSによる送信元ドメイン認証
会社や組織によって正規にドメインを取得した送信されたメールであることを認証する。
・PKI(Public Key Infrastructure:公開鍵基盤)
会社や組織によって正規に発行された鍵ペアを使ったインターネット通信であることを認証する。
■ハードウェア、ソフトウェアを必要な機能に限定して利用させる
ハードウェアとソフトウェアは、ネットワークによって繋がれています。必要な機能に限定するためには、ネットワークの流れを管理する必要があります。
そのために、以下の仕組みがあります。
・セグメンテーション
ネットワーク機器によってネットワークを複数に分割する。構造的に不正なアクセスができないようにする。
・パケットフィルタリング
ネットワークを流れるパケットをネットワーク機器やソフトウェアによって、遮断し、必要な通信のみに限定する。不正なアクセスが発生するリスクを減らす。
・暗号化
ネットワークを流れるデータを暗号化する。ネットワークを介したデータの盗聴を防止する。
インターネットを使ったWebシステムがITの主役である現在、Webアクセスのセキュリティが重要視されています。具体的には、通信プロトコルのHTTP、フロントエンドのHTMLとJavaScript、バックエンドのPHP/Ruby/ASP.NET/JavaとRDBMSのセキュリティです。
この対策には、ソフトウェアを開発する段階からリスクに対応した設計が求められます。
■攻撃者の正体
攻撃者の正体は、以下のような人たちです。
・悪意を持ったハッカー(個人、集団)
・敵対国
・政治団体
・テロリスト
彼らの目的や動機は、以下のようなものです。
・金銭の搾取
・金銭の代わりになるもの無形資産の入手
・恨み、憎しみなどの報復
・いたずら
これらは法に触れる行為であり、刑法(コンピュータ犯罪、ネットワーク利用犯罪)で罰せられます。
さらに、民法に不正アクセスをする行為そのものを禁止する法律(「不正アクセス行為の禁止等に関する法律」)もあります。
(参考)
不正アクセス行為の禁止等に関する法律
https://www.npa.go.jp/cyber/legislation/pdf/2_houritsujoubun.pdf
サイバー犯罪とは
https://www2.police.pref.ishikawa.lg.jp/security/security11/security01.html
サイバー犯罪やサイバー攻撃を取り締まる法律
https://www.ntt.com/bizon/sec/laws-systems-2.html