» www.Giftbox.Az - Bir birindən gözəl hədiyyə satışı
ウィキペディアランダム
毎日カテゴリ
共有: WhatsappFacebookTwitterVK

サイバーセキュリティ

サイバーセキュリティ: cyber security)は、サイバー領域に関するセキュリティを指す。

概要

サイバーセキュリティはサイバー領域セキュリティを指し、その定義は論者によって異なるものの(後述)、この言葉は2010年ころから[1]情報セキュリティに変わるバズワード的な語として用いられるようになった。この言葉が登場した2010年頃はセキュリティにとってのターニングポイントになっており[2]、2010年のスタックスネットの事案や2011の三菱重工の事案からもわかるように[2]ターニングポイント以降、以下の問題が顕在化した。

こうした背景のもと、サイバー領域は2011年以降、米国の安全保障において陸・海・空・宇宙に次ぐ第五の領域とみなされており[3]、日本においても2013年の「国家安全保障戦略」でサイバー空間への防護が国家戦略に盛り込まれるなど[3]、サイバーセキュリティは国際政治・安全保障の問題として扱われるようになっている[3]。このためサイバー空間の問題は、「単に技術的観点のみならず国際政治、市場権益(国際公共財)、知的財産安全保障軍事作戦、国の危機管理体制などの各分野に跨る問題の側面を合わせ持っている」[4]

一方、企業などの組織体にとってサイバーセキュリティ対策や情報セキュリティ対策は、企業などの組織の事業における(情報)セキュリティリスクを低減する事を主な目的とする[5][6]。組織は災害リスク、事業環境リスク、戦略リスク、財務リスク、事故・故障リスク、情報セキュリティリスク、犯罪リスク、労務リスク、事業運営上のリスクといった様々なビジネスリスクを抱えており[5]、情報セキュリティリスクはそれらビジネスリスクの一つに過ぎない。よって組織のセキュリティを担保するには、組織の経営への影響[7]を加味した上で、ビジネス全体のリスク項目に基づき、網羅性と合理性を検討する必要がある[5]。したがって経営という観点から見た場合、企業戦略として、サイバーセキュリティリスクを加味してどの程度のセキュリティ投資を行うかは経営判断になる[8]。またサイバーセキュリティに関するガイドラインを策定するときは、リスク管理規程、危機管理規程、事業継続計画、IT-BCPといった既存のガイドラインと整合を取る必要がある[9]

企業はサイバーセキュリティ対策のため、SOCCSIRTなどのセキュリティ対応組織をおく事があり、こうした組織の主な仕事は以下の2点に集約される[6]

  • インシデント発生の抑制
  • インシデント発生時の被害最小化

ここでインシデントとは直訳すれば「事件」であるが、サイバーセキュリティの文脈では、サイバー領域において組織を脅かす不正な行為全般を指す用語である(より厳密な定義はインシデントの項目参照)。

サイバーセキュリティでも情報セキュリティのCIA、すなわち下記の3つは重視される[10]

  • 機密性 (Confidentiality): 情報へのアクセスを認められた者だけが、その情報にアクセスできる状態を確保すること
  • 完全性 (Integrity): 情報が破壊、改ざん又は消去されていない状態を確保すること
  • 可用性 (Availability): 情報へのアクセスを認められた者が、必要時に中断することなく、情報及び関連資産にアクセスできる状態を確保すること

しかし制御システムのセキュリティでは重要度がC、I、Aの順番ではなく、A、I、Cの順番である[11][12]。また以下のHSEの3つも重視される[12][13]

  • 健康Health)
  • 安全Safe)
  • 環境への影響(Environment)

定義

2018年現在、サイバーセキュリティの定義は論者により異なる。両極端の見解としては

がある[14]

ISO/IEC 27032:2012の定義

サイバーセキュリティに関する情報セキュリティマネジメントシステムを規定したISO/IEC 27032:2012では、

preservation of confidentiality, integrity and availability of information in the Cyberspace
サイバー空間において機密性、完全性、可用性の確保を目指すもの — ISO/IEC 27032:2012

とサイバーセキュリティを狭義に定義し[15]、サイバー空間については

the complex environment resulting from the interaction of people, software and services on the Internet by means of technology devices and networks connected to it, which does not exist in any physical form
人間、ソフトウェア、およびテクノロジーデバイスやそれに接続するネットワークを用いたインターネット上のサービスのやりとり(interaction)の結果として生じる複雑な環境で、いかなる物理的形態も存在しないもの — ISO/IEC 27032:2012

と定義している[15]

この標準を規定したISO/IEC JTC 1/SC 27委員会はこの定義の改定を試みており、2017年に行われた会合では事前に9通りの定義案が提出された上でその定義が議論されたが、多様な理解が存在する実態を踏まえ、定義の決定を見送っている[14]

サイバーセキュリティ基本法の定義

サイバーセキュリティ基本法第二条では以下のように定義される:

「サイバーセキュリティ」とは、電子的方式、磁気的方式その他人の知覚によっては認識することができない方式(以下この条において「電磁的方式」という)により記録され、又は発信され、伝送され、若しくは受信される情報の漏えい、滅失又は毀損の防止その他の当該情報の安全管理のために必要な措置並びに情報システム及び情報通信ネットワークの安全性及び信頼性の確保のために必要な措置(情報通信ネットワーク又は電磁的方式で作られた記録に係る記録媒体(以下「電磁的記録媒体」という)を通じた電子計算機に対する不正な活動による被害の防止のために必要な措置を含む)が講じられ、その状態が適切に維持管理されていることをいう。 — “サイバーセキュリティ基本法 平成二十八年四月二十二日公布(平成二十八年法律第三十一号)改正”. e-Gov. 2018年9月10日閲覧。

攻撃者

種類・攻撃の目的

攻撃者の種類と攻撃の目的は以下のように分類可能である[16]

自己満足・信念 経済的利益 信仰・国防
国家 国家危機管理
サイバーインテリジェンス
組織 サイバー犯罪
サイバーテロ
集団 ハクティビズム

ネット被害

個人
興味本位

経済的利益に関するものは被害が顕在化しやすいのに対し、信仰・国防に関するものは被害が顕在化しにくいという特徴がある[16]

サイバー犯罪の産業化

サイバー犯罪は組織化・分業化が行われ、サイバー犯罪市場では、マルウェアなどの作成者や、マルウェアを遠隔操作するためのプラットフォームの提供業者、マネーロンダリングなどを担当する犯罪組織などによりビジネス化されている[17][18]Ransomware as a Serviceなどのようにサイバー攻撃のプラットフォームも作られ[19]、アフィリエイトモデルのような攻撃者のヒエラルキーもできている[19]

こうした犯罪ツールや犯罪サービスはダークウェブ上にあるダークネット・マーケットなどで取引されており[20]仮想通貨などを利用して決済されている。提供されているものとしては例えば金融機関と銀行へのサイバー犯罪とハッキングサービス[20]、インターネット規模のDNSを使用したDRDoS攻撃[21] などがある。

なお、この活動を監視しようとする試みが様々な政府や民間団体を通じて行われており、使用されるツールの調査は『Procedia Computer Science journal』で見つけることができる[22]

国家が関与する攻撃

APT(後述)のような高度な攻撃は、国家の関与が疑われるものも多い。Mandiant社(買収後は買収元であるFireEye)は同一組織によると思われるAPTに対してAPT1、APT2、…と番号をつけており、攻撃組織に関与している事が疑われる国家を推定している[23]

  • 中国:APT1、APT3、APT10、APT12、APT16、APT17、APT18、APT19、APT30
  • ロシア:APT28、APT29
  • イラン:APT33、APT34
  • ベトナム:APT32
  • 北朝鮮:APT37

欧米でも国家が関与したハッキング行為が行われている:

標的型攻撃・APT攻撃

標的型攻撃は、2010年ころから[2]サイバーセキュリティにおいてトレンドとなった攻撃手法で、それ以前の不特定多数を狙った攻撃と違い、特定の組織[30]、人[30]、これらの持つ重要情報[31]等を標的とした攻撃である[32]。したがって攻撃の標的となる組織固有の情報(組織構成、事業内容、システム構成等)を事前に入手し、これを利用して攻撃を仕掛ける事も多い[32][33]

APTは標的型攻撃の一種に分類される事が多い[31]攻撃形態の一分類であり、「先進的で(Advanced)」「執拗な(Persistent)」「脅威(Threat)」を指す[34] [35]。その特徴は「特定の相手に狙いを定め、その相手に適合した方法・手段を適宜用いて侵入・潜伏し、数か月から数年にわたって継続する」[33]ことである。想定される攻撃者としては国家スパイ、産業スパイ、犯罪組織、競合他社、ハクティビスト、国家が後押しする団体などがある[36]

またAPTでは明確な長期目標に基づく作戦行動のような活動が見られ[36]、このような作戦活動を攻撃キャンペーンという[37]。また攻撃キャンペーンは複数個の「一連の攻撃行動(オペレーション)」に分割できる[38]

サイバーキルチェーン

 
Intrusion kill chain for information security[39]

サイバーキルチェーン[40][41][42][43][44][45]は、攻撃者がAPT攻撃をはじめとした[40][46]サイバー攻撃を行う上でのステージを明確化したものであり、ロッキード・マーティンの研究者が2011年に発表した。

サイバーキルチェーンでは攻撃には以下のステージがあるとする:

ステージ

(日本語)[47]

ステージ

(英語)

説明[41][47]
偵察 Reconnaissance ターゲットを選定し、選定されたターゲット調査する。
武器化 Weaponization エクスプロイトバックドアを組み合わせて配送可能なペイロードを作成[41]
配送 Delivery eメール、ウェブサイト、USB等を利用してターゲットにマルウェアを配送
攻撃 Exploitation ターゲットのシステムで脆弱性を悪用したコードを実行
インストール Installation ターゲットの資産にマルウェアをインストール
遠隔操作 Command and Control コマンド&コントロール(C&C)サーバへのチャネルを確立
目的実行 Actions on Objective 重要情報を持ち出すなど、目的を遂げる。

なお、「攻撃」と「インストール」をセットにし、最後に潜伏維持(Maintenance)を付け加えるバージョンもある[48]

類似のモデル

サイバーキルチェーンと同様、攻撃者の行動をモデル化したものとして以下がある:

提案者・名称 ステージ
Mandiant社の「M-Trend」モデル[49] Reconnaissance(偵察)、Initial Intrusion into the network(侵入)、Establish a Backdoor into the network(遠隔制御)、Obtain user Credentials(権限取得)、Install Various utilities(インストール)、Privilege escalation/Lateral Movement/Data Exfiltration(実行)、Maintain Persistence(潜伏)
IPAのモデル[50][51] 計画立案、攻撃準備、初期潜入、基盤構築、内部調査、目的遂行、再潜入
JPCERT/CCのモデル[52] 準備、潜入、横断的侵害、活動
トレンドマイクロのモデル 偵察、スキャン、アクセス権の獲得、アクセス権の維持/引き上げ、窃盗、証拠隠滅[53]
事前調査、初期潜入、C&C通信、情報探索、情報集約、情報送出[54][55]

以下、サイバーキルチェーンに従って攻撃のステージを説明する。ただし必要に応じて前節で述べた他のモデルも参照したので、「準備ステージ」のようにサイバーキルチェーンにはないステージも書かれている。またサイバーキルチェーンと内容が重複する部分に関しては、上述のモデルを適時サイバーキルチェーンに読み替え、該当箇所の解説に加えた。

準備ステージ

サイバーキルチェーンにはないがJPCERT/CCのモデル[52]には記載されているステージ。

攻撃者は実際の所在地や目的を把握されないよう、グローバル規模の分散型インフラをハッキング等により構築する[52]。このインフラには情報収集システム、電子メールシステム、ツールやマルウェアの保存用レポジトリ、C&Cサーバ、情報の引き出しに使うサーバ、外部クラウドサーバなどが含まれる[52]。場合によっては攻撃者が自分で攻撃用にドメインを取得する事もあるので[56]、ドメイン名はAPTの重要なインディケータ(APT関連のデータや情報を選り分けるため指標[57][58])になる。

攻撃者はその攻撃元が特定されないよう、頻繁に攻撃拠点を変える[59]。また分散型のインフラにする事で攻撃の全容をつかみにくくする[60]。攻撃者は犯罪用に匿名化された防弾ホスティングサーバなどの身元が割れにくいサービスを利用する事もある[61]

このインフラ網を構築するにあたり、攻撃者は法令を逆手に取る事があり、例えば米国や欧州では国家が国民の個人情報やトラフィック情報を収集するのが禁止されている事を逆手に取り、米国や欧州の国民のマシンを拠点にしたり、そうしたマシンからデータを送信したりする[52]

攻撃者はこうしたインフラ等、攻撃に必要な構成要素の動作を確認するため、テストラン(検証のための試験的な攻撃)を実施する場合があるので[56]、その際のIPアドレスやドメイン名を特定できればこれらをインディケータとして使う事ができる[56]

偵察ステージ

攻撃者は偵察ステージで従業員の情報[62]やe-メールアドレスを収集したり[62]、プレスリリース[62]、契約発注[62]などから企業情報を収集したり、企業がインターネットに公開しているサーバ[62]を特定したりする。攻撃者は標的組織に侵入する前に、まず標的組織の関連組織に攻撃を行ってメールアドレスなどの情報収集を行う事もある[63]

さらに攻撃者は標的型メール(後述)等に利用可能なpdfやdocファイル等を収集する[56]。攻撃者は攻撃用のサイトでIEのresプロトコル[64]を使ったリンクをユーザにクリックさせる事で、ユーザが利用しているソフトウェアに関する情報を取得し、これを攻撃に利用できる[65]

資金力が十分ある攻撃者であれば、標的組織の防御体制、組織内で標的にすべき人物、ネットワーク構成、セキュリティ上欠陥等も把握する[66]

このステージに対する対策を講じるのは非常に困難だが[62]、自社のウェブサイトを詳細に調べるユーザをログ解析や既存のアクセス解析であぶり出したりする事はできる[62]

武器化ステージ

エクスプロイトバックドアを組み合わせて配送可能なペイロードを攻撃者が作成するステージで[41][67]、ペイロードの作成には何らかの自動化ツールが使われる事が多い[68]。ペイロードは次の配送ステージで組織に侵入する際に使用される為、侵入検知システム等に検知されないよう、標的組織に特化した攻撃手法を用いる傾向にあり[69][40]、APTではゼロデイの脆弱性を利用される事も多い[40][70]。この場合マルウェア検知ソフトを利用したりパッチを当てたりといった対策で対抗するのは難しい[40]

対策側が攻撃者の武器化を検知するのは不可能だが[67]、攻撃が実行された後、マルウェアの検体やアーティファクトを解析し[67]、どんなツールキットが使われたのか[67]、いつごろ行われたどのAPTの作戦活動に連動しているのか[67]といった事を調査し、以後のAPT攻撃への対策に利用する事ができる。

配送ステージ、攻撃ステージ、インストールステージ

これら3つのステージでは以下が行われる:

  • 配送ステージ:ペイロードを標的に送りつける
  • 攻撃ステージ:従業員が標的型メールを開くなどするか[70]、あるいは攻撃者自身がサーバの脆弱性をつくこと[70]エクスプロイトが実行される[70]
  • インストールステージ:エクスプロイトがクライアントマシンにバックドアを仕込んだり、ウェブサーバにウェブシェル(バックドアの一種)を仕込んだりし[71]、攻撃拠点を築く為、悪意のあるサービスが自動実行されるようにする[71]

JPCERT/CCのモデルでは攻撃者が直接潜入する事も想定し、これら3つをまとめて潜入ステージと呼んでいる[66]

マルウェア配送手法

代表的なマルウェア配送手法として以下のものがある。なお、下記に書いたものはマルバタイジングのように、標的型攻撃以外の攻撃で一般的なものも含まれる。

手法 概要
標的型メール[72][73][74] 標的型メールとは、標的となる組織・ユーザに特化した文面を作り込むなどする事で[75]、受信者が不審を抱かずに添付ファイル(pdf、Wordファイル等)を開いたり、リンクを開いたり(スピアフィッシング)してしまうよう工夫されたメールの事である[76]。標的型メールは、添付ファイルやリンク先に仕込まれたペイロードを利用して組織内に侵入拡大する事を目的とする[77]
水飲み場型攻撃[72][74] 標的組織のユーザがアクセスする可能性の高いウェブサイトを攻撃者が改ざんし、そのサイトを閲覧したユーザがドライブバイダウンロード(ブラウザやそのプラグインの脆弱性を悪用してブラウザの権限を奪取し、マルウェアをインストールさせる手法[78])などによりマルウェア感染するようにする攻撃である[79]。標的組織のIPアドレスからアクセスされた場合のみ攻撃を行う事でサイトの改ざんを発覚しにくくする場合もある[80]。なお「水飲み場型攻撃」という名称は改ざんサイトを水飲み場に見立て、ライオンが水飲み場で獲物を待ち伏せるがごとく、攻撃者が改ざんサイトでユーザを待ち伏せすることからついたものである[79]
USBにマルウェアを仕込む[72] マルウェアが仕込まれたUSBを標的組織のユーザが端末に挿入する事で感染[81]。Windowsのオートラン機能を悪用する[78]。インターネットと接続していない(エアギャップ)クローズ系の機器であっても、アップデート等でUSBを挿入する事があるので、こうした機器にも感染を広げる事ができる[82]。別の機器でマルウェアに感染したUSBをユーザが端末に挿入するのを待つ方法と、攻撃者がマルウェアを仕込んだUSBを標的組織に落としておいて、それを拾ったユーザが端末に挿入するのを待つ方法がある[81]
リモートエクスプロイト 遠隔ホストから標的ホストの脆弱性をついてマルウェアをインストールする[78]
アップデートハイジャック[74] 標的組織が使っているソフトのアップデート配信元に侵入し、アップデート時にマルウェアを送り込む攻撃[74]
ドメインハイジャック[74] 標的組織が利用するウェブサイトのドメインを乗っ取る事で、攻撃者サイトに誘導する攻撃[74]
トロイの木馬 スマートフォンアプリやP2Pファイル、ウェブサイト上の有用そうなファイル等にみせかけてトロイの木馬をインストールさせる[78]
マルバタイジング マルウェアの拡散や悪性サイトへのリダイレクト等を目的とした悪質なオンライン広告配信の事[83]。典型的にはオンライン広告に悪意のあるスクリプトが仕込まれ、これをクリックするとマルウェアに感染するなどする[83][84]。広告を表示しただけで感染するケースもある[84]。多数のユーザが集まるサイトに広告を配信する事で、そのサイトを改ざんする事なくマルウェア配信等が可能な事が攻撃者にとっての利点である。またウェブ広告では広告データは複数のサーバを経由する上、秒単位の入札で表示される広告が決まる仕組みなので、後から不正広告を追跡するのが難しい事も攻撃者にとって利点である[85]。典型的には広告会社に攻撃を仕掛ける事でマルバタイジングを行う[84]
タイポスワッティング 「URLハイジャッキング」とも呼ばれ、インターネットユーザーがWebブラウザURLを入力する際に犯す打ち間違いを利用した攻撃である。例えば攻撃者が「https://ja.wijipedia.org」というドメインを取得していると、ユーザが日本語版ウィキペディアにアクセスするつもりで誤って「https://ja.wijipedia.org」と入力した場合に攻撃者サイトにアクセスしてしまう[86]

なお、特にスマートフォンアプリでは、正規のアプリをマルウェアとセットにしてリパッケージしたアプリを配布する事で、マルウェア感染させる手法がある[78]

大量の本物の業務メールに紛れて、業務メールに見せかけた標的型メールが送られてくるなどするので、配送ステージに対して完全な対策を打つのは難しく、次以降のステージに攻撃が移行する事が多い[75]

標的型メール

標的型メールの文面は、準備ステージで窃取した本物のメールを流用されている場合もあり[75]、受信者が標的型メールである事を見抜くのは難しい[75]。標的型メールで感染するペイロードは既存のマルウェアの亜種を使ったり[75]、ゼロデイの脆弱性を使ったり[40][70]する事で検知を逃れる工夫がなされている事もある。また、アイコンや拡張子を偽装する事でexeファイルでないように見せかけたファイルをユーザにクリックさせたり[75][87]、正規のアプリケーションに見せかけたトロイの木馬をユーザ自身にインストールさせたりする事で[75]、脆弱性を利用しないでマルウェアに感染させる場合もある。

添付した実行ファイルの拡張子の偽装方法としては下記のものがある[87]

手法 概要
二重拡張子 「hoge.doc.exe」のように二重に拡張子をつける。拡張子を表示しない設定になっていると、「hoge.doc」と表示されるのでdocファイルに偽装できる。
RLO(Right-to-Left Override)による偽装 「hogecod.exe」のようなファイル名の下線部にRLOを用いると、「hogeexe.doc」と表示されるので、docファイルに偽装できる。
長い空白の利用 「hoge.doc(長い空白).exe」のようなファイル名にするとファイル名の後半の表示が省略されて「hoge.doc」と表示されるのでdocファイルに偽装できる。


標的型メールの一形態として、「一般の問い合わせ等を装った無害な「偵察」メールの後、ウイルス付きのメールが送る」ものをやり取り型という[88]。また、不特定多数を対象にした攻撃用メールを用いた攻撃をばらまき型のメールという[89][90][91][92]。ばらまき型メールを標的型メールに含めるか否かは論者によって異なり、IPAのJ-CSIPなど標的型メールに含めない論者がいる[90][92]一方で、ばらまき型メールであっても特定企業の全社員や特定銀行の全ユーザなどを対象にしている事が多いことから標的型メールに含める論者もいる[89][91]

マルウェア配布ネットワーク

ドライブバイダウンロード型の攻撃では、攻撃のスケーラビリティ向上や運用コスト削減、対策耐性の向上といった理由により、複数の悪性サイト間をリダイレクトさせた上でマルウェアを配布する事が多い[93]。こうした目的のために攻撃者により構築させる悪性サイトのネットワークをマルウェア配布ネットワークという[93]。マルウェア配布ネットワークには以下の4種類のサイトが含まれる事が多い[93]

名称 概要
入口サイト 標的となるユーザが最初にアクセスするサイトで[93]、多数のユーザをマルウェア感染させるため、改竄された一般サイトなどが利用される[93]。入口サイトは踏み台サイトへとリダイレクトされている[93]
踏み台サイト 入口サイトに攻撃サイトのURLを残さないために設置され[93]、攻撃サイトにリダイレクトされている[93]
攻撃サイト ユーザにマルウェアをダウンロードさせるためのシェルコードを仕込んだサイト[93]
マルウェア配布サイト ユーザは攻撃サイトのシェルコードにより、マルウェア配布サイトのマルウェアをダウンロードする[93]

マルウェア配布ネットワークは多数の入口サイトを少数の攻撃サイトへと導くための仕組みである。このような構成を取る事により、攻撃者には以下の利点がある:

  • 複数のサイトを改ざんして入口サイトにし、攻撃サイトに誘導する事でスケーラビリティの高い攻撃を行う事ができる[93]
  • 攻撃コードを改良する場合は少数の攻撃サイトやマルウェア配布サイトを書き換えれば、多数の入口サイトはそのままでよいので運用コストが下げられる[93]
  • 踏み台サイトを経由する事で攻撃サイトのURLを入口サイトの管理者から隠しているので、対策耐性が高い[93]

リダイレクトには、HTTPリダイレクトHTMLのiframeタグや「meta http-equiv="refresh"」を使ったリダイレクト、JavaScriptなどのスクリプトのリダイレクトの3種類があり、これらが攻撃に利用される[93]。このうちHTMLのiframeを使ったリダイレクトは、widthとheightを0にする事でフレームサイズを0にし、さらにstyle属性を"visibility:none"や"visibility:hidden"にする事で非表示化できるので、標的ユーザに気づかれる事なくリダイレクトできる[93]。同様にstyle属性を"position:absolute"にし、フレームの位置のtopとleftとしてマイナスの値を指定することでも非表示化できる[93]

またスクリプトを使ったリダイレクトの場合、リダイレクトが閲覧時に初めて生成されるようにできるので[93]、リダイレクトされている事がウェブ管理者に気づかにくい。

バナーチェック・ブラウザフィンガープリンティング

サイトにアクセスしてきたユーザのマシンにインストールされているブラウザや各種ツール(Java[94]Adobe ReaderAdobe Flash[94]Silverlight[94]など)のインストール状況やバージョン番号などのプロファイルを取得する手法の事。踏み台サイトや攻撃サイトでブラウザフィンガープリンティングを行う事で、ユーザの環境に最適な攻撃(たとえばユーザ環境の脆弱性つけるエクスプロイトを選ぶ等)を実行できるようになる。

ブラウザフィンガープリンティングには攻撃者のサーバサイドで行う方法とユーザのクライアントサイドで行う方法がある[95]。サーバサイドのものでは、ユーザのIPアドレスやHTTPユーザーエージェントからユーザ環境の情報が得られる[95]。クライアントサイドで行うものはクライアント環境でJavaScriptVBScriptなどを実行する事でさらに詳細なユーザ環境情報を取る事ができ、例えばブラウザに追加されているプラグインの種類やバージョンを知る事ができる[95]

エクスプロイトキット

攻撃サイトなどに、エクスプロイトキットと呼ばれる攻撃ツールが仕込まれている場合がある。エクスプロイトキットはブラウザフィンガープリンティングを行い、保有している複数のエクスプロイトの中からユーザ環境で実行可能な物を選び[94]、マルウェアを実行する[94]

エクスプロイトキットの中にはサイバー犯罪者向けにサービスとして運営されているものもあり、EaaS(Exploit Pack as a Service[96]もしくはExploits as a Service[97])と呼ばれている。

クローキング

悪性サイトにアクセスしてきたクライアントに応じて応答するウェブコンテンツを変化させる手法の事[98]。例えば検索エンジンのクローラーがアクセスしてきたときは無害なコンテンツを表示し、標的ユーザがアクセスしてきたときのみ攻撃用のコンテンツを表示する[98]。これにより攻撃用コンテンツをクローラーに発見される事なく、クローラー向けコンテンツに検索エンジン最適化を施す事で検索順位を上げる、といった事が可能になる[98]。クローキングで表示するコンテンツを変えるための指標として、IPアドレス、ユーザエージェント、リファラの情報が利用される[98]

リモートエクスプロイトの実行

これまで標的型メールやウェブアクセスを利用して標的システム上でローカルエクスプロイト[99]を実行する手段を解説してきたが、攻撃者がセキュリティ上の欠陥をついて標的組織に潜入して遠隔地からリモートエクスプロイトを実行する場合もある。そうした方法としては例えば下記のものがある:

  • 防御されていないゲートウェイから侵入[66]
  • 何らかの不正な手段で正当な認証情報を取得して侵入[66]
  • DMZからの侵入[66]
  • 周辺システムと標的組織の間のトラストチェーンを利用して侵入[66]

制御システムだとSCADAに共有モデムが利用されている事が多いので、ここから侵入される場合もある[66]

遠隔操作ステージ

攻撃対象の組織からC&Cサーバ(コマンドアンドコントロールサーバ。C2サーバとも。攻撃者が攻撃対象の組織に不正なコマンドを遠隔で頻繁に送信する為に利用されるサーバの事[100])への通信(コネクトバック通信[101])の経路を確保する[102]。なおC&Cサーバ自身も攻撃者に乗っ取られた外部組織のサーバであることもある[102]

コネクトバック通信にはhttpやhttpsを使うことが多いので[101]、通信の特徴だけからコネクトバック通信を検知するのは困難である[101]。なお、監視の目が行き届いたhttpやhttpsを使う代わりに、e-メール[102]、DNS[102]などのプロトコルが使われる事もある。

ファイヤーウォールのフィルタリングルールが形骸化していたり、攻撃によく使われるCONNECTメソッドをプロキシで防ぐことを怠っていたりすると、コネクトバック通信の確立が容易になってしまう[101]

永続化

攻撃者は感染状態を維持しておくため、RAT やダウンローダーなどの攻撃ツールをOS 起動時に自動的に起動するようPC の設定を変更する(永続化)[103]。Windowsの場合、永続化のため主に下記の箇所を設定変更する[103]

  • 自動起動レジストリ
    • スタートアップ起動プログラム
    • サービス起動プログラム
  • スタートアップフォルダ
  • ログオンスクリプト
  • タスクスケジューラ

その他の特徴

マルウェアが作るフォルダ名、ファイル名、サービス名等を発見しにくい名称に偽装する[103]。具体的には正規のアプリケーションと同一もしくはよく似た名前を利用したり[103]、マルウェア起動時に正規アプリケーションの一部のプログラムを利用する[103]

マルウェアは一般利用者権限もしくはログインユーザー権限のみで多くの権限が得られるフォルダで環境変数でアクセスしやすい箇所に配置されやすい[103]。具体的には%TEMP%、%PROGRAMDATA%、%ALLUSERSPROFILE%、%APPDATA%、%LOCALAPPDATA%、%PUBLIC%、およびC:直下である[103]。典型的には、ファイルを開いたとき%TEMP%にマルウェアが一旦生成され、それを%PROGRAMDATA%以下の偽装したフォルダにコピーし、そのファイルを永続化する[103]

攻撃者が仕込んだRATはC&C サーバと定期通信(ビーコンという)を行う事が多い[104]。ビーコンは標的組織に発見される危険があるので、一時的にFQDN に対するA レコードを「0.0.0.0」や「127.0.0.1」としてC&C サーバとの通信を停止させるRATもある[104]。逆に言えば、標的組織はこれらのA レコードがこれらのIPアドレスになっているものをRATの候補として抽出可能である[104]

横断的侵害ステージ

JPCERT/CCのモデル[52]には記載されているステージで、サイバーキルチェーンでは目的実行ステージの一部とみなされている[105]

このステージで攻撃者は、最初に侵害したシステムを足がかりにして同じ組織内の脆弱なシステムを横断的に侵害する[106]。具体的には最初に侵害したシステムを足がかりにして、インストールしたプログラムを使いながら、攻撃者は試行錯誤してネットワークの構造を把握し[106][101]、認証情報を窃取し[105][101]、ラテラルムーブメント(=他の端末やサーバへの侵入)[105]や権限昇格[105]等を行う。このステージでも攻撃者はバックドアを設置する[106]

このステージで攻撃者がWindowsコマンドとしては以下のものがある:

目的 コマンド
初期調査 tasklist、ver、ipconfig、net time、systeminfo、netstat、whoami、nbtstat、net start、set[107]
探索活動 dir、ping、net view、type、net use、echo、net user、net group、net localgroup、dsquery[108]、Active Directoryのdsqueryとcsvde[108]
感染拡大 at、move、schtasks、copy、ren、reg、wmic、powershell、md、runas[109]
痕跡削除 del、taskkill、klist、wevtutil、rd、wevtutil[110]

攻撃者はこうした行為を行う為にIPアドレスやサービスポートをスキャンするが[101]、攻撃が発覚しづらいようスキャンするポートを限定して行われる[101]

ラテラルムーブメントの手法

下記のものがある:

手法 概要
Pass the hash攻撃の悪用[101] パスワード自身でなくそのハッシュ値を使ってログインできるPass the hash攻撃を使う方法。侵入した端末Aから他のマシンBにパスワードを使ってリモートログインした事がある場合、Aのメモリ上にそのパスワードのハッシュ値がキャッシュされているので、これを不正に入手し、Pass the hash攻撃によりマシンBにログインできる。PCキッティング作業時の共通アカウントが残っている場合や[111]、Domain Adminを使用したリモートメンテナンスを行っている場合[111]にラテラルムーブメントが可能である。
管理共有の悪用 ユーザ端末でファイルの管理共有サービスが開放されている場合、これを利用してその端末に攻撃ツールをコピーしてラテラルムーブメントする事が可能である[111]
Pass the Ticket攻撃[112][60] 追加の認証なしでアクセスを許可する不正なチケットを発行して認証に利用する攻撃[112]

対策面から見た場合、横断的侵害は最初の侵入に比べ検知しにくいという問題がある[106]。その原因は、LANの入口は監視していても、LANの内部やLANの出口はさほど監視されていないことにある[106]

目的実行ステージ

攻撃者が目的となる行為を実行するステージ[105]。このステージにおける攻撃者の行動は、攻撃者が何を目的とするかで異なるが[105]、主な目標は重要情報の窃取である[106]。窃取した情報は分割され、複数の端末から外部に送信されるので、窃取したファイルの特定は極めて困難である[113]

また最終目標を達成する前段階として、今後のオペレーションのために標的組織の状況を窃取したり、他の組織とのトラストチェーンを把握したり、標的組織に対して優位に立つため破壊行為を行ったりする[105][106]

再侵入ステージ

サイバーキルチェーンにはないが、IPAのモデル[50][51]には記載されているステージ。攻撃者は過去の侵入時に構築したコネクトバック通信路を利用し、再侵入してシステム内探索を継続する[114]。このため一度標的になった組織は、一見攻撃が終了したように見えても、コネクトバック通信路が設置されていない事を継続的に監視する事が重要である[114]。標的組織内にコネクトバック通信路が一つでも残っていると再侵入が可能になるので、APTの場合は「対処率99%でも残存リスクは100%のまま」[114]という事になる。

それ以外の攻撃

主に金銭を目的とした攻撃

フィッシング関連

フィッシング(phishing)は口座番号、アカウント情報、カード番号といった、主に金銭に関わる個人情報を奪取するための攻撃[115]。金融機関を装ったりしたフィッシングメールを送りつけ、個人情報を盗むために設置されたフィッシングサイトに誘導する。メールやウェブサイトを利用する点では標的型攻撃と共通するが、目的が個人情報であるため必ずしも企業システムに潜入する必要はなく、ユーザのブラウザ上にある金融機関のcookie等に書かれたID/パスワードを奪取するなどの手口を用いる。SMSメールを利用したフィッシングを特にスミッシングという[115]

ファーミング(Pharming)はURLとIPアドレスの対応表を攻撃者が不正に書き換えることで、正規サイトのURLにアクセスしたユーザを偽サイトに誘導する攻撃の事である[115]。URLとIPアドレスの対応表を書き換える手段としてはDNSを攻撃する方法(DNSキャッシュポイズニング)と、ユーザがローカルに持っているhostsファイルを書き換えたりする方法がある[115]

無線LANフィッシングWiフィッシング(ワイフィッシング)とも呼ばれ、攻撃者が偽の無線LANアクセスポイント(Evil Twinと呼ばれる)を立てる事で、そのアクセスポイントを利用したユーザのID/パスワードを窃取んだり、偽サイトに誘導したりする攻撃である[115]

QRishingQRコードフィッシングとも呼ばれ、攻撃者が作成したQRコードを(正規サイトのものと偽って)ユーザに読ませる事により、偽サイトに誘導する攻撃である[115]。本物のQRコードの上に偽のQRコードのシールを貼ってQRishingした事案が知られている[115]。なお短縮URLでも同様の手口を行う事ができる[115]

ビジネスメール詐欺

ビジネスメール詐欺(BEC、Business Email Compromise)とは、自社の経営層や取引相手になりすました偽のEメールで経費などの送金を指示する事で金銭をだまし取る詐欺[86][116]。その巧妙な騙しの手口は標的型攻撃に通じるところがある[116]。ビジネスメール詐欺には以下の5つの類型がある[116]

  • 取引先との請求書の偽装[116](偽の請求書詐欺、サプライヤー詐欺、請求書偽装の手口などと呼ばれる[116]
  • 経営者等へのなりすまし[116](CEO詐欺、企業幹部詐欺などと呼ばれる[116])
  • 窃取メールアカウントの悪用[116](従業員のメールアカウントを窃取して、そのアカウントから取引先にメールを出す手法[116]
  • 社外の権威ある第三者へのなりすまし[116](弁護士などになりすまし、緊急の事態だから振り込むように命令する等[116]
  • 詐欺の準備行為と思われる情報の詐取[116](人事担当などになりすましてメールし、他の従業員の個人情報などを窃取し、次なる攻撃に利用する[116]

手口としては

  • 企業のメールアドレスの@以下とよく似た詐称用ドメインを取得してそこからメールする[117](例:xxx@wikipedia.com→xxx@wikiqedia.com)
  • 企業のメールアドレスに似たフリーメールアドレスを使う[117](例:xxx@wikipedia.com→xxx.wikipedia@freemail.com)
  • メールを送る際、多人数にCcしてそこに詐欺用のアドレスを紛れ込ませる事で発覚を遅らせたり本物と錯覚させたりする[117]

といったものがある。なお詐称用ドメインを利用する手法では詐称用ドメインのDNSにSPFを設定してSPFのチェックを通過する攻撃も確認されている[117]

ワンクリック詐欺

ワンクリック詐欺ウェブページ上の特定のアダルトサイトや出会い系サイト、勝手に送られた電子メールに記載されているURLなどをクリックすると、「ご入会ありがとうございました。」等の文字やウェブページが契約したことにされて多額の料金の支払を求める詐欺のことをいう。同様の手口でツークリック以上のものやノークリック(=全くクリックしない)ものも存在する[118]

ワンクリック詐欺のサイトでは、サイトに訪れたユーザのブラウザから環境変数を取得して表示するなどして、あたかもサイト側がユーザ個人を特定できているかのように装い、ユーザを脅迫することがある[118]。(たとえばユーザがスマートフォンからアクセスした場合にユーザの位置情報を表示するなど)[118]

また詐欺サイトがユーザ端末にワンクリックウェアをインストールし、振込みを行うよう要求する画面を頻繁に表示させるという手口もある[118]

不正送金ウィルス

何らかの方法でインターネットバンキングのアカウント情報などを盗んで攻撃者の口座に不正送金を行うウイルスの事[119][120]。例えば以下の手法がある:

マン・イン・ザ・ブラウザ
プロキシ型トロイの木馬というマルウェアによってWebブラウザの通信を盗聴、改竄を行う攻撃である。具体例としては、オンラインバンキングへのログインイベントなどを検知するとその通信を乗っ取って、振込先を改ざんして預金を盗む事例などが挙げられる [121][122]
クリックジャッキング
利用者が開くページのボタン(次ページに進むボタンなど)の上に、透明化したボタン(攻撃者に送金するボタン)を重ねて表示する。ユーザが次ページを表示するつもりでボタンを押すと、送金ボタンが押されてしまい、攻撃者に送金されてしまう。

ランサムウェア、スケアウェア、ローグウェア

ランサムウェア
ユーザのコンピュータやデータを使えない状態にし、再度使えるようにしてほしければ「身代金」(ransom)を支払うようにとユーザを脅迫するマルウェア。
スケアウェア
正当なソフトウェアのふりをしてセキュリティ上の脅威や違法ポルノが発見されたなどという嘘の警告を発し、その解決のためにソフトウェアの代金や個人情報を要求する[123][124]セキュリティソフトを装っているものはローグウェア(rogueware、偽装セキュリティツール)とも呼ばれる。

DoS攻撃

DoS攻撃(ドスこうげき)(英:Denial of Service attack)は、情報セキュリティにおける可用性を侵害する攻撃手法のひとつ。 ウェブサービスを稼働しているサーバネットワークなどのリソース(資源)に意図的に過剰な負荷をかけたり脆弱性をついたりする事でサービスを妨害する。

DoS攻撃には2種類の類型があり、第一の類型はウェブサービスに大量のリクエストや巨大なデータを送りつけるなどしてサービスを利用不能にするフラッド攻撃(Flood=「洪水」)であり、第二の類型はサービスの脆弱性を利用する事でサービスに例外処理をさせるなどしてサービスを利用不能にする攻撃である[125][126]

DoS攻撃の主な目的はサービスの可用性を侵害する事にあり、具体的な被害としては、トラフィックの増大によるネットワークの遅延、サーバやサイトへのアクセス不能といったものがあげられる[127]。しかしDoS攻撃は被害者に経済的ダメージを負わせる事を目的として行われる場合もあり、EDoS攻撃(Economic DoS Attack)と呼ばれる。たとえばクラウド上で従量課金されているサービスにDoS攻撃をしかければサービスの運営者に高額な課金を発生させることができる[128]

また、「DoSをやめてほしければ金を払え」と脅す目的でDDoS攻撃(後述)が行われることもあり、ランサムDDoSと呼ばれる[129]

DDoS攻撃

 
図:StacheldrahtによるDDoS攻撃

フラッド型のDoS攻撃には、大量のマシンから1つのサービスに、一斉にDoS攻撃を仕掛けるDDoS攻撃(ディードスこうげき、分散型サービス妨害攻撃: Distributed Denial of Service attack)という類型がある。

DDoS攻撃の類型は2つあり、第一のものは攻撃者が大量のマシン(踏み台)を不正に乗っ取った上で、それらのマシンから一斉にDoS攻撃をしかける協調分散型DoS攻撃である。

第二の類型は、DRDoS攻撃Distributed Reflective Denial of Service attackDoSリフレクション攻撃分散反射型DoS攻撃[130][131]と呼ばれる。DRDoS攻撃では、攻撃者が攻撃対象のマシンになりすまして大量のマシンに何らかのリクエストを一斉に送信する。するとリクエストを受け取ったマシン達は攻撃対象のマシンに向かって一斉に返答を返すことになるので、攻撃対象のマシンには大量の返答が集中し、高負荷がかかることになる[132]。DRDoS攻撃は協調分散型DDoS攻撃と異なりマルウェアなどで踏み台を乗っ取らなくても実行可能なため攻撃C&Cサーバが発覚しづらい。

ボットネット

ボットネットとはC&Cサーバのコントロール下にあるマシン(ボット)のネットワークで、攻撃者はC&Cサーバから命令を出す事で、ボットネットを様々なサイバー攻撃に利用する[133][134]。ボットによる攻撃にあった被害者は、裏にいるC&Cサーバの情報を直接得る事ができないので、攻撃者を特定するのは困難になる。

攻撃者は1台のC&Cサーバから命令を出すことで多数のボットから同時多発的に攻撃をしかける事ができるので、低い運用コストでDDoS、スキャン、二次感染といった様々なサイバー攻撃の実行が可能になる[133]

C&Cサーバとボットとの通信には、IRC[135]、HTTP[135]、各種P2P接続[135]などが利用される。特にHTTPはセキュリティに配慮した企業などであっても業務の関係上通信を遮断できないので、攻撃者は企業内のマシンをボット化できる[135]

ボットネットのネットワーク構造として最も単純なものは、1つのC&Cサーバに全てのボットがぶら下がっているスター型のネットワーク・トポロジーであるが、これだとその1台のC&Cサーバがダウンしたり当局に取り締まられたりするとボットネットが完全に停止してしまう[133]。そこで様々な国に複数のC&Cサーバを立てて多重化する事で各国の取り締りにそなえたり[133]、ボットの下にさらにボットをぶら下げる階層型の構造にしてボットネットの全体像を把握されにくくしたり、P2P通信によるランダムなトポロジーにする事でネットワーク耐性を上げたりする[133]

Fast Flux手法

ボットネットのC&Cサーバ等の悪性サイトは、サイトのFQDNに対応するIPアドレスを数分程度で次々と変えていくFast Flux手法(IP Flux手法とも呼ばれる[136])を用いる事で[136][137][138][139][140]、捜査機関等が悪性サイトをテイクダウン(停止)させるのを難しくしている[137]。攻撃者は自身のコントロール下にあるボットのIPアドレスを悪性サイトのFQDNに次々に割り振っていく為、FQDNに割り振られるIPアドレスは数百から数万に及ぶ[136]。C&Cサーバやドライブバイダウンロード攻撃用サイトはFast Flux手法で運営される事が特に多い[136]

Fast Flux手法はBlind Proxy Redirectionという手法と併用される事が多い[136]。この手法ではFast Fluxで運営されるサイトのは単なるリダイレクトサイト(フロントエンドノードという)であり、リダイレクト先にあるマザーシップノードが真の悪性サイトである[136]。このような構成を取る事により、マザーシップノードのアドレス情報を捜査機関から隠したり、捜査の手が及んだフロントエンドノードを切り捨てたりする事ができる。また悪性サイトのコンテンツを変えたい場合はマザーシップノードだけを変えればよいので運用も容易である[136]

Fast Flux手法はsingle flux手法とdouble flux手法に分かれる[136][139][140]single flux手法では攻撃者は何らかの方法を用いて自身の権威DNSサーバを立て、その権威DNSサーバ上で悪性サイトのIPアドレスを(TTLを小さな値にする事で)次々に変えていく手法である。この手法の(攻撃者にとっての)欠点は、攻撃者が立てた権威DNSサーバが単一障害点になっているため、この権威DNSサーバが捜査機関にテイクダウンされると、悪性サイトを運営できなくなってしまう事である[139][140]

double flux手法は権威DNSサーバもFast Flux手法で運営する事で対策耐性をあげたものである。double flux手法ではボットネット上に権威DNSサーバXを立て、さらにXより上位レベルの権威DNSサーバYを自身で立てる。single flux手法のときと同じく悪性サイトのIPアドレスをX上で次々と変えるのみならず、XのIPアドレスをY上で次々と変える事でXがテイクダウンされる事を防ぐ[140]。なお、double flux手法においてYは単一障害点であるが、捜査機関が調査のため悪性サイトにアクセスしてきても、悪性サイトの名前解決はXで行われるので、捜査機関に直接Yが見える事はなく、Yを特定してテイクダウンするのは難しくなる。

Domain Flux手法

1つのドメイン名に対して複数のIPアドレスを用意して多重化するFast Flux手法とは逆に、ドメイン名を複数用意して多重化する手法をDomain Flux手法と呼ぶ[141]。この手法を用いる事で、一部のドメイン名が悪性サイトとして対策側にブラックリスト化されても、悪性サイトに別のドメイン名を用いる事でブラックリストをすり抜ける事ができる[141]

Domain Fluxを行う方法の一つは攻撃者自身が管理するドメイン(仮にexample.comとする)に○○.example.comというFQDNを生成し、○○の部分を短時間で変える、というものである(ドメインワイルドカード[141]

Domain Fluxでは疑似乱数を使ってドメイン名を生成する。このためのアルゴリズムをDGA(Domain Generation Algorithm)という[141]擬似乱数を利用するのは、C&Cサーバとそのコントロール下にあるマシンでドメイン名を同期するためである[141]。C&Cサーバとそのコントロール下にあるマシンで事前に擬似乱数の種を共有しておき、種と時刻情報を利用してドメイン名を生成するようにすれば、両者とも同一時刻には同一のドメイン名を取得できる[141]

攻撃・ペネトレーションテストで使われる手法やツール

本節では攻撃やペネトレーションテスト(システムに実際に攻撃をしかけてみる診断。詳細後述)で使われる手法やツールについて述べる。

ペネトレーションテスト用OS

ペネトレーションテスト用のLinuxディストリビューションとして、Kali Linux、Parrot Security OS、BackBoxなどがあり、前者2つはDebianベース、最後のものはUbuntuベースである。これらのディストリビューションにはペネトレーションテスト用の各種ツールがプレインストールされている。

意図的に脆弱に作られたツール

ペネトレーションテストの練習用として、意図的に脆弱に作られたツールが公開されている:

  • Metasploitable:意図的に脆弱性が残されたLinuxディストリビューションのバーチャルマシン
  • OWASP BWA (Broken Web Applications):意図的に脆弱性が残されたウェブアプリケーションを詰め込んだバーチャルマシン
    • OWASP Mutillidae:BWAに梱包されている脆弱なウェブアプリケーションの一つ

他にもBadstore、BodgeIt Store、amn Vulnerable Web Application (DVWA)、OWASP Bricks、WASP WebGoatb、WAPP、moth、Gruyere

Magical Code Injection Rainbow (MCIR)などがある。

攻撃対象の情報収集

スキャナ

攻撃者は標的組織を偵察する際や、侵入後に横断的侵害を行う際、スキャンを行うことで、標的組織のネットワークの情報を得る。スキャンはホストスキャンポートスキャンに大別でき[142]、前者はネットワーク上にあるホストのIPアドレス等を行うために行われ、後者はホスト上で空いているポート番号を知るために行われる[142]。ホストスキャンにはICMPプロトコルを利用したツールであるpingtracerouteが用いられ、ポートスキャンには例えばnmapのようなツールが用いられる。

nmapは単にホスト上の空いているポート番号を特定するのみならず、ホストに送ったパケットに対する返答のフォーマット等の情報から、ホストで動いているOS、サービス、およびそれらのバージョン番号などを特定する機能も備えており[142][143][144]、これらは攻撃者にとって有益な情報となる。この手法で動作しているアプリケーションを特定する事をバナーチェック、OSの種類やバージョンを特定することをTCP/IP スタックフィンガープリンティングという[145]

他にも下記のようなツールがある:

  • SING(Send ICMP Nasty Garbage) [146]、ICMPScan[146]:nmapのようにICMPをプロービングするツール[146]
  • Amap:アプリケーションのフットプリンティングを行うツール[147][148]。通常とは違う場所で動作しているアプリケーションをも特定可能である[147][148]
  • httprint:Webサーバのフィンガープリンティングツール[149][150]
  • xprobe2:OSフィンガープリンティングツール[151][152]

スニッファ

スニッファとはネットワーク上を流れるパケットを監視したり記録したりするツールの事で[153]パケット・スニッファとも呼ばれる[153]。攻撃目的ではなくセキュリティ目的で用いられる同種のツールをパケットアナライザ等と呼ぶが[153]、広義にはパケットアナライザもスニッファに含める[153]。フリーなものではWiresharktcpdumpなどがある。

ソーシャル・エンジニアリング

ソーシャル・エンジニアリングとは人間の心理的な隙や行動のミスなど「人」をターゲットにして機密情報を窃取する攻撃全般を指す[154][155][156]。手法としては例えば下記のものがある:

  • システム管理者や警察などになりすましてメールないし電話する事で個人情報等を聞き出す[155][156]
  • ショルダーハッキング(Shoulder surfing):PCを操作しているユーザの肩越しにパスワード等を盗み見る[155][156]
  • トラッシング:ゴミ箱に捨てられた紙媒体や記憶媒体から機密情報を得る[155][156]。スカベンジング[154]、スカビンジングとも[156]

パスワードクラッキング

パスワードクラッキングとは、総当たり攻撃辞書攻撃等の何らかの方法でパスワードを割り出す攻撃方法であり、推定したユーザID/パスワードでログイン試行を行うオンライン攻撃と何らかの方法で入手したパスワードハッシュ(パスワードのハッシュ値)などからローカルにパスワードを推測するオフライン攻撃とに大別される[157]。オフライン攻撃の対象となるパスワードハッシュはWindowsのSAMファイル、Linuxの/etc/shadowファイルなどにあるものを利用する[158]。またパスワードで保護されたOfficeファイル等も攻撃対象となる[158]

著名なオンライン攻撃ツールとしては、Bruter(Windows環境)[159][160]、ncrack(マルチプラットフォーム)[161][160]、TCP-hydra[162][163]がある。著名なオフライン攻撃ツールにはJohn the Ripper[158]、RainbowCrack[164]レインボーテーブルを用いてハッシュを解析する)、ophcrack[165]がある。

またWindowsのSAMファイルからパスワードハッシュを取得するツールとしてPwDumpがある[166]

パスワードリスト攻撃

Pass the hash攻撃

Metasploit

Metasploit Framework、あるいは単にMetasploitとは、エクスプロイトコードの作成、実行を行うためのフレームワークソフトウエアである[167]。Metasploitには様々なエクスプロイトコードが収録されており、アップデートを実行する事で新たなエクスプロイトコードを手に入れたり[168]、Exploit Databaseのようなエクスプロイト配信サイトからエクスプロイト(とそのエクスプロイトを適用できる脆弱なソフト)をダウンロードして用いたりできる[169]

脆弱性検査ツール

w3af、Nessus、OWASP ZAP、OpenVASなどがある。

横断的侵害を行うためのツール

ネットワークに侵入して横断的侵害を行う攻撃の手口の典型的パターンは

  • ipconfigやsysteminfoといったWindows標準コマンドで侵入した端末の情報を収集[170]
  • net等のツールでネットワーク上の他の端末の情報、ドメイン情報、アカウント情報等を収集し、次に侵入する端末を選ぶ[170]
  • mimikatzやPwDump等のパスワードやそのハッシュ値をダンプするツールで次に侵入する端末のユーザーのパスワード情報を入手[170]
  • netやat等のツールを駆使して他の端末に侵入[170]

というものである。

またプロキシやリダイレクタを使ってファイヤーウォールを突破する事で、侵入した端末からC&Cサーバや組織内の別の端末との通信経路を確立する[171]。その他ファイル圧縮ツールステガノグラフィーツールもデータ内容を隠蔽して送信する目的で使われる[171]

その他・複数機能を持つツール

  • netcatは正規のネットワークユーティリティで、「接続モードでは、任意のサーバ、ポートを指定し接続を行うことができ、telnetのように対話的に使用したり、ポートスキャナとして使用することもできる。待ち受けモードでは、任意のポートをで待ち受けを行い、接続してきたクライアントと対話することができる」[172]。バックドアのように使用する事も可能である[173]
  • LanSpy:ネットワークディスカバリーツール、ポートスキャナ[174][175]
  • tcptraceroute、tracetcp:ICMPの代わりにTCPレイヤでtracerouteを行う[176]
  • SMTP Relay Scanner:SMTPの不正中継調査[177]
  • snmpcheck、snmpwalk、SNScan:SNMPデバイスのディスカバリーツール[178][179]
  • SiteDigger、metagoofil:Googleハッキングツール[180][181]
  • dig:DNSへの問い合わせツール[182]
  • tcpdump、Wireshark:パケットモニタリングツール[183]
  • Cain and Abel:パスワードクラッキング、スニッファ、VOIPキャプチャ、RTPストリームリプレイ
  • MSN Protocol Analyzer:MSN Messengerのキャプチャ・プロトコルアナライザ[184]
  • hping:パケットジェネレータ、パケットキャプチャ・アナライザ。パケットジェネレータ機能はファイアウォールのテストなどに利用可能。

攻撃・ペネトレーションテストに利用できるサイト

以下のものがある:

類別 サイト 概要
マルウェア検体の調査 Threat Crowd 過去のマルウェア情報や関連情報の確認が可能[185]
Passive Total 同上。WHOIS履歴の参照も可能[185]
Virus Total ファイルやウェブサイトの検査が可能[185]
インターネット接続機器の検索 SHODAN ウェブサーバやIoT機器など、インターネットに接続している機器を調査可能[186]
Censys 同上[186]
脆弱性チェック QUALYS SSL Server Test SSLサーバの脆弱性や設定のチェック[186]
エクスプロイト集 Exploit Databsae エクスプロイト集
Googleハッキング Google Hacking Database 「パスワードや機密情報を探し出すGoogle検索ワードがカテゴリーごとに、集約されている」[187]
流出情報共有 Pastebin 元来は情報共有サイトだが、個人情報や機密情報の投稿にも用いられている[188]
Dumpmonitor Pastebinに載った流出情報をつぶやくtwitterアカウント[189]
脆弱性情報検索 PunkSPIDER 脆弱なウェブサイトとそのサイトの脆弱性を検索[190]

SHODANとCensys

ウェブサーバやIoT機器など、インターネットに接続している機器を調査できるウェブサービスとして、SHODAN[191]やCensys[192]などがある[186][193][194]。SHODANはポートスキャンにより接続している機器を特定し、特定した機器に対してバナーチェックを行う事により、機器の情報を得ている[195]。SHODANの利用者が例えば東京にあるApacheサーバの一覧を得たければ、SHODANに「apatch city:Tokyo」と打ち込んで検索する事ができる[196]。また、SHODAN MAPSの機能により、検索した機器の位置を地図上に表示可能である[197]

バナー情報により、検索結果には製品名やバージョン等もわかるため、攻撃者はこれを利用して脆弱性が適用可能な機器を見つける事ができる。なお、SHODANを使うには事前にユーザ登録が必要であり[198]、基本無料であるものの全機能を使うには低額の利用料を支払う必要がある[199]

CensysはZmapというネットワークスキャナでIPv4のインターネット空間をスキャンして情報を収集し、ZGrabというプロトコル解析ライブラリにより収集したデータを構造化データに加工する[200]。なお、ZmapがIPv4のアドレス空間全てをスキャンするのにかかる時間は45分に過ぎない[200]

Censysは無料で利用でき[193]、ユーザ登録は必須ではないが、登録していないユーザは1日4回までしか検索できない[193]。Censysはミシガン大学の研究者らが公開したものである[193]

ツール一覧

攻撃に利用可能なツール、コマンド、脆弱性として下記のものがある。なお、下記の表にはRDPのように、本来は攻撃ツールではないものの攻撃用にも利用できるものもリストアップされている。

分類 ツール・コマンド・脆弱性の例[201]
コマンド実行[201] リモートでのコマンド実行[202] PsExec PsExec2 wmiexec.vbs BeginX WinRM WinRS BITS[201][202]
任意のタイミングでコマンド実行[202] schtasks2[202]
パスワード、ハッシュの入手[201] PWDump7 PWDumpX Quarks PwDump Mimikatz(パスワードハッシュ入手 lsadump::sam、 sekurlsa::logonpasswords、チケット入手 sekurlsa::tickets) WCE gsecdump lslsass AceHash Find-GPOPasswords.ps1 Get-GPPPassword (PowerSploit) Invoke-Mimikatz (PowerSploit) Out-Minidump (PowerSploit) PowerMemory (RWMC Tool) WebBrowserPassView[201]
Pass-the-hash

Pass-the-ticket[201]

WCE (リモートログイン) Mimikatz (リモートログイン)[201]
通信の不正中継

(パケットトンネリング)[201][171]

Htran Fake wpad[201] ZXProxy ZXPortMap[171]
リモートログイン[201] RDP[201]
権限昇格・窃取 権限昇格[201] MS14-058 Exploit MS15-078 Exploit SDB UAC Bypass[201]
ドメイン管理者権限アカウントの窃取[201] MS14-068 Exploit Golden Ticket (Mimikatz) Silver Ticket (Mimikatz)[201]
ホストログインしたりするための[202]ローカルユーザー・グループの追加・削除[201] net user[201]
共有ポイント経由での攻撃ツール送信やファイルサーバーからの情報取のための[202]ファイル共有ツール[201] net use[201]
痕跡の削除[201] 攻撃に利用したファイルの復元できない削除[202] sdelete[201][202]
タイムスタンプ修正によるファイルアクセスの隠蔽[202] timestomp [201][202]
攻撃に使ったKerberosチケットのホストからの削除[202] klist purge[201][202]
攻撃関連のイベントログの削除[202] wevtutil[201][202]
情報収集[201] パスワード解析の為NTDS.DIT(NTDSのデータベース)を抽出[202] ntdsutil vssadmin [201][202]
攻撃対象選定等のためActive Directoryからアカウント情報を収集[202] csvde ldifde dsquery[201][202]
攻撃に利用可能なドメインコントローラーの問題を調査[202] dcdiag[201][202]
ホストが所属するドメインコントローラーの情報を取得[202] nltest[201][202]
ネットワーク内のホストの列挙、接続可能なポートの調査等[202] nmap[201][202]
APIやアプリの出すデバッグ情報を取得[171] dbgview[171]

攻撃への対策のフレームワークや考え方

サイバーセキュリティフレームワーク

NIST(アメリカ国立標準技術研究所)サイバーセキュリティフレームワーク(正式名称:重要インフラのサイバーセキュリティを向上させるためのフレームワーク)によれば、重要インフラのサイバーセキュリティ対策は以下の5つのフェーズに分類できる[203]

具体例[203] 担当する組織[204]
特定 資産管理、ビジネス環境、ガバナンス リスクアセスメント、リスク管理戦略 リスク管理部門 活動範囲の広い

CSIRT

防御 アクセス制御、意識向上およびトレーニング、データセキュリティ、情報を保護するためのプロセスおよび手順、保守、保護技術 - (2018年現在から見た)従来型のIT管理部門
検知 異常とイベント、セキュリティの継続的なモニタリング、検知プロセス いわゆるSOCCSIRT
対応 対応計画の作成、伝達、分析、低減、改善 危機管理部門
復旧 復旧計画の作成、改善、伝達 -


上の表でSOCCSIRTはセキュリティ対応のための組織である。両者の役割分担や関係性、業務内容等は企業毎に異なるが[205]、概ねSOCは「平時」の分析運用を行い[206]、CSIRTは「有事」のインシデント対応を行う[207]

このフレームワークは、それ以前の類似のフレームワークと比較した場合、攻撃が行われた後の検知、対策、復旧のフェーズの重要性を明確化した事と[208][209]、各フェーズの習熟度について言及した事に特徴がある[208]

このフレームワークでは「ガバナンスのサイクル」と「マネジメントのサイクル」を回すことがサイバーセキュリティ対策で重要だと主張している[210]

またおなじNISTが発行したSP800-61「コンピュータセキュリティ・インシデント対応ガイド」ではインシデント対応プロセスは、準備、検知および分析、封じ込めおよび根絶、インシデント後の活動の4段階に分類されるとしている[210]

以下、サイバーセキュリティフレームワークの各フェーズを説明するが、一部JPCERT/CCの文献を元に加筆した。

特定

サイバーセキュリティ対策をする上で基本となるのは、守るべき資産を特定し[203]、各資産のリスクを把握することである。

組織の置かれた状況の特定

産業分野やサプライチェーンにおける自社の位置づけ[211]、重要サービスを提供する上での依存関係と重要な機能等を把握し[211]、自組織のミッション、目標、活動に関する優先順位を決め[211]、伝達する必要がある[211]。JPCERT/CCは、守るべき資産を特定する前準備として、組織のプロファイルを作成することを推奨している[212]。このプロファイルには規模[212]や提供製品[212]のような基本的事項のみならず、システムダウンの影響度合い[212]や規制のレベル[212]などリスクアセスメントに必要となる情報も含める。また、組織のサイバーセキュリティ防御能力に関する文書を作成する[212]

またセキュリティに関する法規制を把握し[211]、自組織の情報セキュリティポリシーを定め[211]、セキュリティに関する役割と責任について内外のパートナーと調整や連携を行う[211]。さらにガバナンスやリスク管理のプロセスをサイバーセキュリティリスクに対応させる[211]

守るべき資産とそのリスクの特定

自組織内の物理デバイス、システム、ソフトウェアプラットフォーム、アプリケーション、外部情報システムといったリソースの一覧を作成し[211]、ネットワークの通信やデータフローを図示し[211]、これらのリソースやデータのうち、守らなければならないものとその理由、およびそれが抱える脆弱性を特定する[211][212][213]。この際、ビジネスに対する潜在的な影響とその可能性も特定する[203][212]。そしてそれら守るべき対象を守れなかった場合に発生するリスクを、脅威、脆弱性、可能性、影響等を考慮して分析し[212][211]、リスクに対処するためのコストや[212]リスクが顕在化した場合の減損[212]、対処後の残存リスク[212]を特定し、自組織の役割、事業分野等を考慮してリスク許容度を明確化する[211]。そしてビジネス上の価値に基づいてこれらのリソースやデータを優先度付けをする[203]。さらに自組織の従業員や利害関係者に対し、サイバーセキュリティ上の役割と責任を定める[211]。リスク管理のプロセスを自組織の利害関係者で確立、管理、承認する必要がある[211]

なお、保有資産の特定にはIT資産インベントリ検出ツールが利用でき[212]、未登録機器の発見にはDHCPサーバのロギング機能等が利用できる[212]。またアクセス監視の際、資産リストと突合する事で、承認されたデバイスのみがネットワークに接続されている事を確認できる[212]

なおリスク分析の際にはどのようなタイプの攻撃者が自組織が属する業界を攻撃するのかを事前に特定しておくのが望ましい[213]

防御

脆弱性管理による防御

脆弱性管理計画の作成・実施を行い[214]、脅威と脆弱性に関する情報を入手する必要がある[211]。JPCERT/CCによれば、脆弱性スキャン[215]セキュリティ設定共通化手順「SCAP」のチェックリストにより検証済みのスキャナを用いて[216]、毎週ないしそれ以上の頻度で行う必要がある[216]。これによりコードベース・構成ベース方法の脆弱性を検出する事が可能である[216]。攻撃検知のイベントログと脆弱性スキャン結果を突合することで、どの脆弱性が標的にされたのかを判別できる[216]。アプリケーション、OS双方に対し自動パッチ適用ツールを用いる事が望ましい[217]

ID管理とアクセス制御による防御

自組織の全ての従業員のIDに対してアクセス制御リスト(ACL)を定義し[212]、ACLに従って従業員の資産や関連施設への物理アクセス[214]やリモートアクセス[214]、データへのアクセス[212]を制限する。ACLは定期的に棚卸し[212]、人事の異動、追加、削減に際してアクセス権限の無効化[214]や従業員の審査[214]を行う。従業員等にシステムや資産に対する権限を与える場合には、最小権限の原則に従う[214]

システム開発時の防御

システムの開発ライフサイクル[214]や設定変更[214]を管理する。また開発の際には開発環境やテスト環境を実環境と分離することで情報漏えい等を防ぐ[214]

意識向上やトレーニングによる防御

全てのユーザをトレーニングし[214][218]、権限ユーザ[214]、上級役員[214]、利害関係者[214]、 物理および情報セキュリティ担当者[214]にポリシー、手順、契約に基づいた[214]役割と責任を理解させる必要がある[214]。またAPTなどの攻撃に対する演習を事前に行っておく必要がある[218]

データの防御

自組織のリスク戦略に従って[214]、保存されたデータや伝送中のデータの機密性、完全性、可用性を保証する[214]。データの可用性の保証に関しては十分な容量を確保し[214]、機密性に関しては漏洩対策を実施し[214]、完全性に関しては何らかの完全性チェックメカニズムを導入する[214]。データは定期的にバックアップ・テストする[214]。またデータはポリシーに従って破壊し[214]、資産の撤去、譲渡、廃棄も管理する[214]

なお情報はその機微度に応じて「高、中、低」等の格付けを事前に実施し[213]、自組織を狙う可能性がある攻撃者がどのような情報に関心を示すのかを特定しておく[213]事が望ましい。

保守運用作業における防御

システムのベースラインを設定・維持する必要がある[214]。保守と修理はポリシーや定められた手順に従って実施する[214]。重要な資産を保護するプロセスを定め[213]、重要なシステムに対して適用可能なセキュリティ管理策を全て実施していることを確認する[213]。保守や修理の際は、管理されたツールを用いてタイムリーに行い[214]、ログを記録する[214]。特に遠隔保守の際には、承認[214]、ログの記録[214]、不正アクセス防止を行う必要がある。監査記録やログの対象をポリシーに従って決め[214]、取得した監査記録やログをレビューする[214]。ログデータは、DNS[219]、プロキシ[219]、ファイアウォール[219]など重要機器に対して取得し、時刻はNTPにより同期する[219]。事前にセキュリティを強化し、構成管理を厳密に行ったOS等のイメージを作成しておき、従業員のPCや新規導入システムにはこのイメージをインストールする[217]

ネットワークのセキュリティ構成は、変更管理委員会によって文書化、確認、承認を行う[217]

その他の防御方法

セキュリティポリシー、プロセス、手順を維持し[214]、資産の物理的な運用環境に関するポリシーと規制を満たすようにする[214]。また保護プロセスを継続的に改善する必要がある[214]

インシデント対応[214]、事業継続[214]、インシデントや災害からの復旧計画[214]の実施・管理・テストを行う[214]。保護に使う技術の有効性の情報共有を行う[214]

取外し可能な外部記憶媒体はポリシーに従って保護したり、使用を制限したりする[214]

またJPCERT/CCによれば下記を行う事が望ましい:

  • 自組織のセキュリティ方針やセキュリティ計画に情報システム・重要データが扱う必要がある[213]
  • 自組織のネットワーク境界の外部および内部からペネトレーションテストを定期的に実行する必要がある[216]。ペネトレーションテストに用いるアカウントはコントロール・モニタリングし[216]、テスト終了後に除去するか通常機能に戻ることを確認する[216]
  • システムで使うソフトウェアが限定されている場合には、実行可能なソフトウェアのホワイトリストを作り[212]、そうでない場合は利用して良いソフトウェアとそのバーションを定めて無許可のソフトを検知できるようにする事でリスクを低減できる[212]。利用して良いソフトウェアが改竄されるリスクを低減する為、ファイル完全性チェックツールでモニタする事が望ましい[212][214]

検知

検知を行う前提条件として、ネットワーク運用のベースラインを定め[215]、データフローを特定・管理する[215]。そしてセキュリティイベントを検知できるよう[215]、ネットワーク[215]、物理環境[215]、個人の活動[215]、権限のない従業員・接続・デバイス・ソフト[215]、外部サービスプロバイダの活動[215]等をモニタリングし[215]マルウェア対策ソフトなどで悪質なコード、特にモバイルコードを検出できるようにする[215]

そしてイベントログを複数の情報源やセンサーから収集し、SIEMなどで一元管理して[219]、相互に関連付け[219]、検知したイベントを分析し[219]、その影響範囲を特定する[219]。また事前に定めたしきい値に従って[215]、検知したイベントをインシデントとみなすかどうかを判断する[215]

検知プロセスはテストし、継続的に改善する必要がある[215]。また説明責任が果たせるようにする必要がある[215]

対応

CSIRTの主たる担当業務である[204][207]。検知フェーズで発見したセキュリティイベントにタイムリーに対応できるよう対応計画を事前に定めておき[220]、法執行機関の支援が得られるよう情報共有や利害調整を行う[220]。そして対応計画にしたがってインシデント分類し[220]フォレンジックを行うなどして[220]セキュリティイベントを調査し[220]、その影響範囲を把握し[220]、事前に定めた基準に従ってインシデントの封じ込めないし低減を行う[220]。インシデント対応の結果学んだ教訓を生かして対応計画を更新する[220]

復旧

タイムリーに復旧できるよう事前に復旧手順を定め[221]、復旧の際にはその計画を実施する[221]。システムの復旧を行うのみならず、広報活動を管理するなどして評判回復に努める[221]。対応フェーズと同様、教訓を生かして復旧計画の更新も行う[221]

開発ライフサイクルにおけるセキュリティ確保

システムの安全性を確実に担保するにはシステム開発ライフサイクルの初期段階からセーフティ、セキュリティ、プライバシーなどを考慮しておくことが望ましい。開発プロセスのより早い段階でセキュリティを考慮する事を(開発プロセスを左から右に書いたときにセキュリティを考慮するのを左に寄せる事から)シフトレフトという[222][223][224]。特に、情報セキュリティを企画・設計段階から確保するための方策をセキュリティ・バイ・デザイン(Secure By Design、SBD)といい[225][226]、プライバシーに対する同様の概念をプライバシー・バイ・デザインという。

またDevOps(デブオプス[227]、開発 (Development) の担当者と運用 (Operations) の担当者が一体となった開発手法[227])の普及に伴い、これにセキュリティの確保も一体になった開発手法であるDevSecOps[228][229]も注目を集めるようになっている。DevSecOpsでは設計段階からセキュリティを意識することはもちろん、セキュリティ対策ツールを開発ライフサイクルに組み込むなどして脆弱性診断を自動化し、アプリケーションを修正するたびに脆弱性を作り込まないようチェックし[229]、利用しているライブラリの脆弱性を日々チェックするような活動も含む[229]

カオスエンジニアリング

サプライチェーンにおけるセキュリティ確保

システム開発ではその工程の一部を外注する事も多いため、サプライチェーン全てでセキュリティを担保する事が重要となる。このような調達時の脅威に対応する事をサプライチェーンチェーンリスクマネジメント(Supply Chain Risk Management、SCRM)という[230][231]。ISO/IEC 27036ではアウトソーシングの際のセキュリティのガイドラインが規定されている[230]。米国ではNIST SP800-161やNIST IR 7622にSCRMの規定がある[230]。またISO/IEC 20243には不良品や偽造品を排除するためのベストプラクティス等が規定されている[230]

また事業継続計画(BMC)の観点からもサプライチェーンの継続を図ることも重要であり、SCCM(Supply Chain Continuity Management)と呼ばれ、ISO 22318に規定されている[230]。なお災害復旧とサプライチェーンマネジメントをあわせてSCDRM(Supply Chain Disaster Recovery Management)と呼ぶ[230]

多層防御

多層防御とは、様々な階層で複数のセキュリティ対策を施す事で、重要部への侵入前に攻撃の検知および対応を行う事で[232][233]、軍事・戦闘の世界のDefense in Depth (縦深防御) を応用したものである[234]。複数の防御壁を設けて、一つの壁を突破されても次の壁で阻止して、機密情報に到達されてしまう確率を下げる事を目的とする[234]

多層防御の手法として以下で述べる入口対策、内部対策、出口対策の3つを取り入れる組織内対策や[235][236]、複数組織をまたがった攻撃連鎖を上流で断つ国レベルでの対策[236]などがある。

入口対策、内部対策、出口対策

入口対策はファイアウォール、ウイルス対策ソフト、脆弱性対策など、攻撃者やマルウェアが組織内に侵入するのを防ぐ対策手法で[237][238]標的型攻撃やAPTが普及する以前は有効であった。しかし標的型攻撃やAPTでは組織に侵入する方法が巧妙化しており[239]、しかも侵入方法の変化が激しいので[239]、入口対策だけで攻撃を防御するのは難しい[239][240]。そこで、攻撃者が組織内部に侵入しているのを前提として、組織の内部対策を行う事より侵入の拡大を防ぎ[238]、攻撃の外向き通信を遮断・監視する[238]出口対策により組織からの情報の持ち出し[237]やC&Cサーバとの通信を防ぐ必要がある。

サイバーレジリエンス

サイバーレジリエンスは攻撃を受けてしまう事を前提として、攻撃を受けた際に、どのように組織の機能を維持し、いかにすばやく対処・復旧するかという回復力(レジリエンス)を高めるべきという考え方である[241][242]世界経済フォーラムによる「グローバルリスク2013」を契機として「レジリエンス」という用語がビジネス等で使われるようになり、それと時期を同じくしてサイバーレジリエンスという用語も広まった[243]。なお「レジリエンス」という用語はISO22300では「複雑かつ変化する環境下での組織の適応能力」と定義されている[243]

セキュアなネットワーク構成

非武装地帯 (DMZ)

非武装地帯(DMZ、DeMilitarized Zone)はメールサーバウェブサーバ、(DNSコンテンツサーバ)、Proxyサーバといった、組織内、インターネット双方とアクセスする必要があるサーバ群を置いておくためのネットワーク領域で、組織内ネットワーク・インターネット・DMZの3つの領域間の通信をファイアウォールで制限する。ウェブサーバ等をDMZではなく組織内ネットワークに設置すると、ウェブサーバが用いるポートを開けて置かなければならない為、そのポートを利用してインターネットから組織内に攻撃を行う事が可能になってしまう。これを防ぐためにウェブサーバ等をDMZに設置する。

マイクロセグメンテーション

ネットワークを細かくセグメント分けする事[244]。マイクロセグメンテーションにより、セグメントをまたいだラテラルムーブメントやウィルスの二次感染を防ぐ事ができる[244][245]。実現手法としてh、スイッチングハブの各ポートにそれぞれ1台の機器を接続するというものがある[244]。また仮想マシン(ないし仮想デスクトップ)の場合は各仮想マシンに仮想ファイヤーウォールを立てる事で、同一ネットワーク上にある仮想マシンであっても、仮想マシン一台で一つのセグメントを構成できる[244][245]

ゼロトラスト

ゼロトラストはForrester ResearchのアナリストJohn Kindervag(ジョン・キンダーバグ[246])により提唱された概念である[247]。従来のセキュリティ対策ではネットワークの境界で攻撃の遮断が可能であり[248]、境界内は信頼できる事を前提としていたが、標的型攻撃や内部犯行の広がりによりこうした前提は崩れており[75]、攻撃者が内部に侵入してくるのを前提とした対策が必要となる[238][248]

それに対しゼロトラストは従来型のセキュリティ対策よりも「性悪説」に基づいており[249]、組織内ネットワークであっても、ユーザがデータやリソースにアクセスする際、ユーザが利用しているデバイスの信頼性とユーザ自身の信頼性とを動的に評価してデータやリソースへのアクセス認可を行う[248]。一般的にはゼロトラストネットワークはユーザ関連情報を管理する ID プロバイダ、リソースにアクセスできるデバイスのリストを管理するデバイス ディレクトリ、管理者が設定したポリシーにユーザとデバイスが適合しているかを判断するポリシー評価サービス、リソースへのアクセス制御を行うプロキシから構成され[248]、ゼロトラストネットワークのプロキシはユーザとリソースの間に置かれ、ユーザはプロキシでアクセス認可を受けた場合のみがデータやリソースにアクセスできる[248]

アクティブディフェンス

アクティブディフェンス(Active defense、能動的防御[250])は、実際の攻撃に先んじて脆弱性や攻撃方法を発見して予防策を積極的に構築する取り組みの事[251]。攻撃者が防御技術を研究して回避・無効化する事で[251]、対応が後手に回って攻撃側に主導権を握られるのを防ぐ[252]

アクティブディフェンスの基本的手法としては以下のものがある[253]

  • アノイヤンス(Annoyance):攻撃の労力を増加させる事[253]。デコイサーバや偽のDNSエントリなど各種デセプション技術で攻撃者を騙し、時間を稼ぐ等[253]
  • アトリビューション(Attribution):攻撃者の属性(Attribution)を明らかにする事[253]。攻撃されそうなサーバやファイルにウェブビーコンやマクロ等を仕込んで攻撃者のIPアドレスや位置情報を取得する等[253]
  • アタックバック(Attack Back):攻撃者に攻撃し返す事[253]

なおアタックバックはアクティブディフェンスに含まないとする意見もある[252]

フリーのアクティブディフェンスツールとしては、ADHD(active defence harbindger distribution)[254][255]、Artillery[255]、Nova (Network Obfuscation and Virtualized Anti-Reconnaissance)[255]、BearTrap[256]、Decloak[256]、Honey Badger[256]などがある。

Moving Target Defense

アクティブディフェンスの手法の一つ。これまでのセキュリティ対策では、静的なシステムに検知技術や防御技術を導入することでセキュリティを担保していたが、それに対しMoving Target Defense (MTD)は、守るべきシステムの構成、特にネットワークを動的に変更する事で、攻撃者がシステム内を探索したりシステム構成を予測したりするのを難しくする手法である[257][258][259]。従来のセキュリティ対策では、攻撃側がシステムを熟知しているのに対策側は攻撃者に関して断片的にしか知りえないという非対称ゆえの不利が対策側にあったが、MTDはこの種の不利を攻撃者にも背負わせようというアイデアである[257]

優先的に対策すべき箇所

優先的に対策すべき場所を示したガイドラインとして下記のものがある:

名称 概要
CISコントロール Center for Internet Securityが「最も危険な脅威からのリスクを最大限に減らす」ための評価項目(コントロール)を上位20項目をあげたもの[260]。2018年現在の最新版はVersion 7で、Version 6までは「CIS Critical Security Controls」(CIS CSC)と呼ばれていた[261][262]。Tripwireによれば、Version 6の20の評価項目のうち最初の6つを利用するだけで85%の攻撃を防ぐことができ、20個全てを利用すれば、97%超の攻撃を防げるという[263]
OWASP Top 10 OWASP(ウェブアプリケーションセキュリティに関する国際的なオープンコミュニティ[264])が作成した、ウェブアプリケーションにおける重要な脆弱性10項目とその脆弱性を作りこまないようにする方法とを記した資料[265]
Strategies to Mitigate Cyber Security Incidents オーストラリアサイバーセキュリティセンター(Australian Cyber Security Centre:ACSC。元はAustralian Signals Directorate(ASD)が作成していたものを引き継いだ)が提唱する重要項目[266]

CISコントロール

2018年現在の最新版であるVersion 7の20個の評価項目は以下の通りである[263][267]

分類 番号 評価項目 評価項目(和訳)
Basic 1 Inventory and Control of Hardware Assets ハードウェア資産の目録作成とコントロール
2 Inventory and Control of Software Assets ソフトウェア資産の目録作成とコントロール
3 Continuous Vulnerability Management 継続的な脆弱性管理
4 Controlled Use of Administrative Privileges 管理権限のコントロールされた利用
5 Secure Configuration for Hardware and Software on Mobile Devices, Laptops, Workstations and Servers モバイルデバイス、ラップトップ、ワークステーションおよびサーバにおけるハードウェアとソフトウェアのセキュアな設定
6 Maintenance, Monitoring and Analysis of Audit Logs 監査ログのメンテナンス、モニタリング、解析
Foundational 7 Email and Web Browser Protections eメールとウェブブラウザの保護
8 Malware Defenses マルウェア対策
9 Limitation and Control of Network Ports, Protocols and Services ネットワークポート、プロトコル、およびサービスの制限とコントロール
10 Data Recovery Capabilities データ復旧能力
11 Secure Configuration for Network Devices, such as Firewalls, Routers and Switches ファイヤーウォール、ルータ、スイッチといったネットワークデバイスのセキュアな設定
12 Boundary Defense 境界防御
13 Data Protection データ保護
14 Controlled Access Based on the Need to Know 「Need to Know」原則に基づいてコントロールされたアクセス
15 Wireless Access Control ワイヤレスネットワークのコントロール
16 Account Monitoring and Control アカウントのモニタリングとコントロール
Organizational 17 Implement a Security Awareness and Training Program セキュリティの意識向上とトレーニングプログラムの実施
18 Application Software Security アプリケーションソフトウェアのセキュリティ
19 Incident Response and Management インシデントへの対応とマネージメント
20 Penetration Tests and Red Team Exercises ペネトレーションテストとレッドチーム演習

OWASP Top 10

2017年度版の10項目は下記のとおりである[268]

番号 項目
A1:2017 インジェクション
A2:2017 認証の不備
A3:2017 機微な情報の露出
A4:2017 XML外部エンティティ参照(XXE)
A5:2017 アクセス制御の不備
A6:2017 不適切なセキュリティ設定
A7:2017 クロスサイトスクリプティング(XSS)
A8:2017 安全でないデシリアライゼーション
A9:2017 既知の脆弱性のあるコンポーネントの使用
A10:2017 不十分なロギングとモニタリング

Strategies to Mitigate Cyber Security Incidents

2018年現在は下記8項目[266]

項目 項目(和訳)
application whitelisting アプリケーションのホワイトリスト化
patching applications アプリケーションへのパッチ適用
configuring Microsoft Office macro settings マイクロソフトオフィスの設定のコンフィグレーション
application hardening アプリケーションのハードニング
restricting administrative privileges 管理者権限の制限
patching operating systems OSへのパッチ適用
multi-factor authentication 他要素認証
daily backups デイリーバックアップ

脆弱性診断とその関連

本節では、システムのセキュリティ上の問題点を洗い出す検査や診断について述べる。なお、こうした検査や診断は脆弱性検査、脆弱性診断、セキュリティ検査、セキュリティ診断等と呼ばれるが、これらの語の指す範囲は論者やセキュリティ企業により異なる場合があるので注意されたい[注 1]

このような用語上の混乱をさけるため、本節ではペネトレーションテスト等も含めた最広義の意味での脆弱性検査(すなわちIPA[269]意味での脆弱性検査)の事を「脆弱性診断関連の検査」と呼ぶことにする。

IPAによると、脆弱性診断関連の検査にはソースコードセキュリティ検査、ファジング、システムセキュリティ検査、ウェブアプリケーションセキュリティ検査、ペネトレーションテストの5つがあり[272]、これらの検査を行うフェーズと主な検査対象は下記のとおりである[272]。なお本節では、これら5つにレッドチームを加えた6つの検査について述べる。

検査名 主な利用フェーズ 主な検査対象
開発 運用 PC向けソフト 組み込みソフト ウェブアプリケーション その他
ソースコードセキュリティ検査
ファジング
システムセキュリティ検査 ネットワークシステム
ウェブアプリケーションセキュリティ検査 クライアントサーバ
ペネトレーションテスト サーバ

上の表の「主な利用フェーズ」は検査対象となる機器のシステムライフサイクルの中でどのフェーズでこれらの検査が利用されるのかを示している。なお、一般的にシステムの開発フェーズは企画、要件定義、設計、実装、テスト、納入という工程からなるが、これらの工程のうち脆弱性診断関連の検査が行われるのは実装工程とテスト工程である[273]

脆弱性診断関連の検査はPCI DSSコモンクライテリアのような基準や規格で定期的に実施する事が要求される場合がある[273]

ソースコードセキュリティ検査

ソースコードセキュリティ検査は、開発中のソフトウェアのソースコードをチェックする事で、セキュリティ上の問題点を発見する検査であり、おもに実装工程で行われる[274]。その目的は、脆弱性を引き起こしやすい関数をソースコードから抽出したり、構文解析により脆弱性であると思われる箇所を特定する事である[274]

検査は人間によるソースコードレビューにより行われることもあるし、何らかのツールやサービスを用いて自動的にソースコードを検査することもある[274]

なお、ソースコードセキュリティ検査は実装段階で混入する脆弱性を発見するものであるので、そもそもソフトウェアの設計そのものに脆弱性があってもそれを発見するのは難しい[274]

ファジング

ファジングは開発したソフトウェアに脆弱性を引き起こしやすい様々な入力を与える事で、脆弱性を発見する手法である[275](インプットとして極端に大きな値を入力してみるなど)。ファジングは実装工程やテスト工程において、何らかのツールやサービスを利用して実行される[275]

ソースコードセキュリティ検査がソースコードを利用する(ホワイトボックステスト)であるのに対し、ファジングはソースコードを使わない(ブラックボックステスト)ないしグレーボックステストである。

ソースコードセキュリティ検査と同様、ソフトウェアの設計そのものに含まれる脆弱性を発見するのは難しい[274]

制御システムセキュリティのEDSA認証ではファジングが必須になっているなど、ファジングの標準化の流れがある[276]

ファジングを出荷前に行う事により、出荷後に脆弱性が原因で回収等で莫大なコストが発生する可能性が下げられる。ファジングも導入費用とツールの保守費用をあわせて数百万から数千万円程度かかるが[277]、半年程度で投資回収できるとされる[277]

システムセキュリティ検査

システムセキュリティ検査は、システム上の機器に対してパッチのあたっていない脆弱性が存在しないか、不必要なポートが空いているなどの設定上の不備がないかを調べる検査である。何らかのツールやサービスを用いて主に開発時のテスト工程と運用時に行われる[278]。なお性能の良いシステムセキュリティ検査ツールであれば、既知の脆弱性はもちろん、未知の脆弱性も発見できる[279]

システムセキュリティ検査では検査のためにシステムをスキャン(脆弱性スキャン)する必要があり、スキャンにはパッシブスキャンとアクティブスキャンがある[280]パッシブスキャンはミラーポートを使ったりWiresharkなどのアナライザを使ったりした受動的なパケットキャプチャ等で脆弱性を発見する手法である。それに対しアクティブスキャンはスキャナが機器にパケットを送信してその反応を見るなど能動的な方法で脆弱性を発見する手法である。

パッシブスキャンよりもアクティブスキャンのほうがより多くの脆弱性を発見できる可能性が高いが[280]、その分システムに負荷をあたえたり[280]、障害の原因になったりする可能性がある。

また脆弱性スキャンはネットワークの外部から行う外部スキャンとネットワークの内部から行う内部スキャンに分類できる[280]。外部スキャンの場合、スキャンのための通信がネットワーク境界にあるファイヤーウォールに阻まれるため、内部スキャンほど多くの情報がとれない。しかし外部スキャンは攻撃者が外部から侵入可能な入口を発見できるなど、内部スキャンとは異なった役割を果たす事ができる[280]

システムセキュリティ検査は障害の原因になったり、検査対象が増えるにつれて検査費用が高くなるなどの事情があるため、ネットワーク全体に対して検査を行うとは限らず、一部の機器に限定して行われる事もある[278]

ウェブアプリケーションセキュリティ検査

ウェブアプリケーションセキュリティ検査はウェブアプリケーションに文字列を送信したり、ページ遷移を確認したり、ログ解析したりするなど、ウェブアプリケーションに特化した検査である[281]。何らかのツールやサービスを用いて主に開発時のテスト工程と運用時に行われる[281]。他の検査と同様、実装時に作り込んだ脆弱性は発見できるものの、設計段階で入り込んだ脆弱性を発見するのは難しい[281]

IPAによるとウェブアプリケーションセキュリティ検査ツールは3タイプに分けられる[282]。第一のタイプのものは、ブラウザとウェブサイトの間のプロキシとして動作するもので、検査実施者がブラウザでウェブサイトにアクセスした際に発生するリクエストをプロセスである検査ツールが補足し、取得したリクエストの一部を検査実施者が手動で検査用のコードを埋め込む形で書き換え、書き換えたリクエストをウェブサイトに送信してその反応をみる事で脆弱性検査を行う[282]

第二のタイプは検査ツールがウェブクライアントとして動作し、検査用コードの入ったリクエストをウェブサイトに自動送信し、ウェブサイトからのレスポンスを元に検査実施者にレポートを出力する[282]。第二のタイプのものはツールに予め用意されている量の検査用コードを試自動で試せるのが利点であるが、人力に頼る第一のタイプほど細かな検査はできない[282]

第三のタイプでは検査ツールは検査実施者が操作するブラウザとウェブサイトとの通信を(書き換えずに)補足し、補足した情報から不審な動作等を探して検査実施者にレポートとして出力する[282]。第一、第二のタイプと違い検査用コードをウェブサイトに送りつける事がないので、詳細な検査はできないが、その分検査によりウェブサイトに障害が発生する可能性が格段に低いという利点がある[282]

ペネトレーションテスト

ペネトレーションテストは実際の攻撃で使われる手口をそのまま利用する事で、人間が検査システムに攻撃をしかける事によりシステムの弱点を見つけ、システムが実際に攻撃されたときどこまで侵入され、どのような被害が発生するのか明らかにする検査であり[283]、基本的に運用フェーズに行われる[283]。ペネトレーションテストを実施するには攻撃手法に関する高度な知識を必要とするため、セキュリティ企業に依頼して実施する形が普通である[283]。実際の攻撃手法を用いて検査を行うため、脆弱性のみならずシステムの不適切な運用等も発見できる[283]

その性質上、他の検査よりもシステムに不具合を生じさせる危険が大きいため[283]、影響範囲を事前に特定し、復旧計画を立てて実施する必要がある[283]

テストは対象システムの構造をテストする人(ペンテスター)が知っているホワイトボックステストとシステム構造を知らないブラックボックステストにわけられ、さらに攻撃を開始する場所がシステム外部である外部テストとシステム内部である内部テストにわけられる[284]

レッドチーム

レッドチームはペネトレーションテストと同様、「レッドチーム」と呼ばれる攻撃チームが実際に攻撃をしかけてみる検査であり、[285]レッドチームに対抗する防御側をブルーチームと呼ぶ[286]。これらの言葉は元々軍事用語であり、敵軍であるレッドチームの視点で、自軍であるブルーチームの防御力や対応力を検証するものである[286]。レッドチーム検査は「脅威ベースペネトレーションテスト(Threat-Led Penetration Testing : TLPT)」とも呼ばれる[287][288]

レッドチーム検査はペネトレーションテストよりもさらに実践的な検査である。ペネトレーションテストと違い、防御側であるブルーチームが攻撃の発生を認知しておらず[289]、この状態でブルーチームがどこまで攻撃に耐えられるのかが試される。

レッドチーム検査ではハクティビスト、愉快犯、内部犯、金銭目的の犯罪者等、攻撃者の「ペルソナ」を作り、レッドチームのメンバーはそのペルソナになりきって攻撃を行う[290]。典型的には攻撃前に初期調査を行い、マルウェアの配送、システム上への攻撃基盤構築、権限昇格、内部調査、目的達成といった手順をたどる[290]

レッドチームはサイバー攻撃だけではなく、物理セキュリティや人的要素に対しても攻撃をしかける[286][290]。例えば初期調査では、ゴミ漁り[286]、エレベーターでの盗み聞き[286]、受付に「入館カードを忘れた」といって入り込む[286]などのソーシャル・エンジニアリング的な手法[290]、偽Wifiポイントの立ち上げによる盗聴[290]、SNSで情報発信を行っている社員からのOSINT[290]なども行われる。

レッドチームのようなサービスをセキュリティベンダーが提供するようになったのは、標的型攻撃が一般化したことにある[286]。標的型攻撃では上述のような物理要素・人的要素を犯す攻撃手法により情報収集されることもあり、こうした攻撃に耐えられるかを試すためにレッドチームのサービスが提供されるようになったのである[286]

その他の診断

ネットワークに接続された不正機器の検出を目的とするネットワークディスカバリや、不正な無線通信を検出するワイヤレススキャンなどがある[291]

脆弱性ハンドリングと脆弱性管理

脆弱性ハンドリング

脆弱性情報ハンドリングとは、新たに発見された脆弱性関連情報の届け出を発見者に促し、届けられた情報を整理して製品開発者の担当窓口に提供して対策方法の立案を促し、適切なタイミングで脆弱性関連情報と対策情報を周知することで、被害を最小化するための活動である[292][293]。ここで脆弱性関連情報とは脆弱性情報、脆弱性が存在する事の検証方法、およびその脆弱性を利用した攻撃方法(例えばエクスプロイトコード)の事を指す[294]。また脆弱性への対策方法は、修正方法(=パッチ適用)と回避方法に分類でき、回避方法とはパッチ以外の方法で脆弱性の影響度を回避・低減する方法、例えば脆弱性のある機能の無効化、代替ソフトへの移行、WAFの導入等がある[295]

攻撃者に脆弱性関連情報を悪用されるのを防ぐため、複数の製品が影響を受ける脆弱性の場合などにおいて、情報の公表に関して関係者間で一定の足並みをそろえる事(公開日一致の原則)が重要である[296]。特に海外機関と調整が必要な際にこの原則を破って単独で情報公開を行うと、今後の脆弱性ハンドリングから外される場合がある[296]

脆弱性ハンドリングの標準・ガイドライン

国際標準として以下のものがある[297]

  • ISO/IEC 30111 – Vulnerability handling process (脆弱性取扱い手順)
  • ISO/IEC 29147 – Vulnerability disclosure (脆弱性開示)

日本において脆弱性ハンドリング方法の概略は経済産業省告示「ソフトウエア製品等の脆弱性関連情報に関する取扱規程」[298]に規定され、その詳細は「情報セキュリティ早期警戒パートナーシップガイドラライン」[299]に規定されている[300]。規定されている手順は、脆弱性が発見されたのがソフトウェア製品なのかウェブサイトなのかで異なる。

ソフトウェア製品の脆弱性に対するハンドリング手順

ソフトウェア製品の脆弱性関連情報の発見者はその情報をIPAの窓口[301]に届け出し、IPAはその情報をJPCERT/CCに通知する[302]。JPCERT/CCは製品開発者にその情報を連絡し、製品開発者は脆弱性の検証や対応方法を考える[302]。JPCERT/CCは製品開発者と調整しながら脆弱性関連情報の公開スケジュールを決める。IPAとJPCERT/CCはスケジュールで定められた期日に脆弱性への策方法および対応状況を公表すする[302]。IPAは原則四半期毎に統計情報[303]を公表する[302]

ウェブサイトの脆弱性に対するハンドリング手順

ウェブサイトの脆弱性関連情報の発見者がその情報をIPAの窓口に届け出するところまでは上の手順と同様だが、ウェブサイトの場合、IPAはJPCERT/CCを介さずに直接ウェブサイト運営者に脆弱性関連情報を通知し[300][304]、ウェブサイト運営者が脆弱性を修正する[304]。ソフトウェアの場合と異なりIPAやJPCERTの側が脆弱性情報を公開する事は基本的にはない。個人情報漏洩等があった場合、その事実を公表するなどの処置はウェブサイト運営者が行う[304]

個人情報が漏洩している可能性があるにもかかわらず、ウェブサイト運営者が対応しない場合は、IPAが個人情報保護法34条に従った措置(主務大臣による勧告や命令)を依頼する[304]

IPAは原則四半期毎に統計情報[305]を公表する[304]

脆弱性に関する情報源

脆弱性の情報源としては、各種ニュースサイト以外に、脆弱性情報データベース、ベンダアドバイザリ、注意喚起サイトがある[306]。また攻撃情報の情報源としては、前述した脆弱性の情報源の他、攻撃コードデータベースがある[307]

脆弱性情報データベース

脆弱性ハンドリング等によって集められた脆弱性関連情報を公開するデータベースの事。主なものとして下記のものがある。

名称 概要
Common Vulnerabilities and Exposures(CVE) 脆弱性に固有の識別番号を割り振ったデータベースで、詳細情報は外部サイトや他の脆弱性データベースに任せている。アメリカ合衆国国土安全保障省(DHS)のNCSDの資金のもとMitre社のNational Cybersecurity FFRDCが運営。
National Vulnerability Database(NDV) アメリカ国立標準技術研究所(NIST)が管理する脆弱性情報データベース。CVEで命名された脆弱性情報の詳細情報をNVDで提供している。
Japan Vulnerability Notes (JVN) JPCERT/CCIPAが共同で管理している[308][309]脆弱性情報データベース。脆弱性ハンドリングの結果挙がってきた脆弱性関連情報のみならず、海外の調整機関と連携した脆弱性情報も載る[309]。海外連携情報元としてはCERT/CCのTechnical Cyber Security AlertsやVulnerability Notes、CPNIのCPNI Vulnerability Adviceなどがある[308]
JVN iPedia JVNのサイト内にある、脆弱性対策情報データベース[310]。JVNがいち早く一般に周知することを目的にしているのに対し、JVN iPediaでは脆弱性が公開されてから一週間程度を目安に、JVNに掲載されたもの以外にも国内外問わず脆弱性対策情報を広く公開している[310]
Open Source Vulnerability Database (OSVD) 脆弱性に関するオープンソースのデータベース[311]

ベンダアドバイザリ

ベンダや開発者のサイト、ブログ、アップデート情報、リリースノート等に自社製品の脆弱性情報やその対策情報が提供されている事があり、ベンダアドバイザリ[306]セキュリティアドバイザリ[312][313]等と呼ばれている。ベンダアドバイザリは脆弱性情報の形で公開されない場合もあるので、注意が必要である[306]。セキュリティ担当者は基本的には各製品のサイト等を参考にしてベンダアドバイザリ手に入れる必要があるが、各種脆弱性情報データベースに載らないベンダアドバイザリを収集している有償サービスも存在するので、こうしたサービスから情報を得る事も可能である。

注意喚起サイト

広く使われている製品に対して、脆弱性の周知と対策の呼び掛けを行っているサイト[306]。国内ではJPCERT/CC[314]、警察庁[315]、IPA[316]等が注意喚起を行っており、海外ではUS-CERT[317]やICS-CERT[318](制御システムが対象)等がある[306]

攻撃コードデータベース

攻撃コード(エクスプロイト)を収集したデータベースで[307]、Exploit DB[319]などがある[307]

脆弱性評価に関する指標

Security Content Automation Protocol(SCAP)

SCAP(エスキャップと発音[320])は、アメリカ国立標準技術研究所(NIST)が策定した「脆弱性管理、コンプライアンス管理の一部を機械化(自動化)することにより、情報システムに対するセキュリティ対策の負荷軽減と情報セキュリティ施策の推進の両立を目的とした仕様群」[321]である。 2015年現在、SCAPには以下の6つの仕様が規定されている[322]

略称 名称 概要
CWE Common Weakness Enumeration ベンダーに依存しない共通の脆弱性分類方法[323]。脆弱性をツリー構造で分類[323]
CVE Common Vulnerabilities and Exposures 脆弱性毎に「CVE-西暦-連番」という形のCVE識別番号(CVE-ID)を付与し脆弱性の概要(Description)、参考URL(References)、ステータス(Status、「候補」もしくは「登録」)を記述[324]。CVE識別番号はベンダーに依存しない共通の脆弱性識別子[324]
CVSS Common Vulnerability Scoring System ベンダーに依存しない共通の脆弱性の評価手法に従い点数化[325]。脆弱性の技術的な特性を表した「基本評価基準」、現時点での危険度を表した「現状評価基準」、製品利用者毎に評価が変わる「環境評価基準」に対し脆弱性の危険度を0.0~10.0の評価値(大きいほど危険)で表現[325]
CCE Common Configuration Enumeration 「設定上のセキュリティ問題」を解決するためにコンピュータのセキュリティ設定項目に一意の番号(設定項目識別子)を付与する仕様[326]
XCCDF eXtensible Checklist Configuration Description Format プログラム上や設定上のセキュリティ問題のチェック項目をXMLで記述するための仕様[327]
OVAL Open Vulnerability and Assessment Language コンピュータのセキュリティ設定状況を検査するための仕様[328]

その他の指標

略称 名称 概要
CAPEC Common Attack Pattern Enumeration and Classification 共通的な攻撃パターンを網羅的に列挙し、分類したもの。US-CERTによるスポンサーのもとMitre社が作成している。類似した攻撃を共通化し、ツリー構造で攻撃を分類している。
MAEC Malware Attribute Enumeration and Characterization、マルウェア特徴属性一覧[329] マルウェアの動作、痕跡、攻撃パターンなどを記述するためのXMLベースの仕様[329]
CEE Common Event Expression:共通イベント記述[329] ログなどのイベントを記述するための仕様[329]
IODEF Incident Object Description Exchange Format インシデント情報交換メッセージフォーマット。RFC 5070に規定されている。
CybOX Cyber Observable eXpression、サイバー攻撃観測記述形式[329] オブジェクト」と「イベントフィールド」を用いて記述する[329]。オブジェクトは「ファイル、レジストリキー、プロセスなど、サイバー攻撃活動によって観測された事象の主体を記述」[329]し、イベントフィールドは観測事象中に発生した動作を記述するもので」[329]、例えば「ファイルを削除した、レジストリキーを作成した、HTTP GET要求を受信したなど、あるオブジェクトに対して行われた動作を記述」[329]する。

脆弱性管理

脆弱性管理とは「自社の脆弱性の状況を常に掌握して、より頻繁かつ効果的に修正するためのプロセス」の事である[330]。脆弱性管理で行うプロセスはツールやサービスによって異なるものの、IT資産の目録作成[331][332]、守るべきIT資産の優先度付け[331]、IT資産の脆弱性の発見[331][332][333][334]、脆弱性のリスクレベルの特定[330][331][332]と対策優先度の決定[330][331]、脆弱性への対処[331][332]ないしその支援[334]、対処状況の一覧化[333][334]といったプロセスを含む。

セキュリティ対策技術

境界防御・サーバ防御技術

ファイヤーウォール

ファイヤーウォールはネットワーク境界に設置して不正な通信を遮断する技術である。通信を許可・遮断するIPアドレスやポート番号をしていするタイプのファイヤーウォールをパケットフィルタリング型のファイヤーウォールという。パケットフィルタリング型のうち、管理者により予め決められたテーブルにしたがって通信の許可と遮断を行うものをスタティック型という。それに対しダイナミック型のパケットフィルタリングでは、ネットワーク境界内はネットワーク境界外より安全だという前提の元、境界内から境界外への通信が発生したときは、その返答が境界外から帰ってきた場合のみ例外的に通信を許可する。ステートフルパケットインスペクションはダイナミック型の特殊なもので、TCP/UDPセッションを認識して、正当な手順のセッションに属する場合のみ通信を許可する。

パケットフィルタリング型が通信の許可・遮断機能のみを持つのに対し、それ以外のファイヤーウォールは通信の中継機能を持つ。サーキットレベルゲートウェイ型ファイヤーウォールは、ファイヤーウォールを通過する際IPアドレスを付け替え、ネットワーク境界内のIPアドレスが境界外にもれないようにする。アプリケーションゲートウェイ型ファイヤーウォールはHTTPなどアプリケーション層のプロトコルを理解してプロキシとして振る舞う。コンテンツをキャッシュして通信速度を早くする他、有害なサイトのフィルタリングを行ったり、マルウェア対策ソフトを組み込んでファイヤーウォールをまたぐ通信に含まれるマルウェアを検知したりできる。

IDS/IPS

IDS(Intrusion Detection System、侵入検知システム)は不正侵入の兆候を検知し、管理者に通知するシステムである[335]IPS(Intrusion Prevention System、侵入防止システム)も不正侵入の兆候を検知するところまではIDSと同様だが、検知した不正を自動的に遮断するところに違いがある。両者を合わせてIDPSという場合もある[336]センサーないしエージェントと呼ばれるアプライアンスないしソフトウェアを利用して通信などの情報を集める事により不正を検知する。センサーやエージェントの集めた情報は管理サーバに送られ、管理サーバ側でも複数のセンサー・エージェントの情報を相関分析する事で不正を検知する。

IDPSは以下の4種類に分類できる[337]

分類 センサー・エージェントの主な設置・インストール場所
ネットワークベースIDPS ネットワーク境界[338]
無線IDPS 監視対象の無線ネットワークの通信範囲内や、無許可の無線ネットワーク活動が行われている懸念のある場所[338]
NBA(Network Behavior Analysis) 組織内ネットワークフローの監視ができる場所、もしくは組織内と外部ネットワークの間の通信フローの監視ができる場所[338]
ホストベースIDPS 攻撃を受けやすい公開サーバや機密情報が置かれているサーバなどの重要ホスト[338]。その他PCのようなクライアントホストやアプリケーションサービスにもインストールされる[339]

ネットワークベースのIDPSとNBAはどちらもネットワークを監視する点では共通しているが、前者は主に組織LANと外部ネットワークの境界などネットワーク境界に設置され、境界をまたぐ通信を監視するのに対し、NBAは組織LAN内に設置され、LAN内の通信を監視する点に違いがある。

ネットワークベースIDS、IPSを略してそれぞれNIDSNIPSと呼ぶ。同様にホストベースIDS、IPSをそれぞれ略してHIDSHIPSという。

ネットワークベースのIDPSのセンサー設置方法としては、監視対象の通信が必ず通る場所にIDPSを設置するインライン型[340]、監視対象の通信が必ず通る場所にスパニングポート、ネットワークタップ、IDSロードバランサ等を設置する事で監視対象の通信をコピーし、コピーした通信をIDPSで監視する受動型がある[340]。攻撃の遮断や回避のようなIPSとしての機能を利用する場合はインライン型が必須である[340]

インライン型の場合、ファイヤーウォールが攻撃と考えられる通信を遮断するのでファイヤーウォールの前に設置するか後ろに設置するかで取得できる情報や、IDPSへの負荷が異なる。ファイヤーウォール前後両方を監視するためにIDPS機能とファイヤーウォール機能がハイブリッドになった製品もある[340]

受動型はネットワークの複数箇所の通信をコピーして集約した上で解析できるという利点がある。例えばファイヤーウォールの前後およびDMZの通信を全てコピーして解析するといった行為が可能になる[340]

WAF

WAF(Web Application Firewall)は、ウェブアプリケーション脆弱性を悪用した攻撃からウェブアプリケーションを保護するセキュリティ対策の一つ[341]。WAFはウェブサイトの前に設置し、ウェブアプリケーションの脆弱性に対する攻撃と思われる通信の遮断等を行うものであり、LANとインターネットの境界などに設置されることが多い通常のファイヤーウォールとは(その名称にもかかわらず)機能が異なる[342]。WAFが検知する攻撃はウェブサイトへのものに特化しており、HTMLを解釈してクロスサイトスクリプティングSQLインジェクションなどの攻撃を遮断する。

攻撃を遮断する点においてIPSと類似するが、IPSはOSやファイル共有サービスなど様々なものに対する攻撃を遮断するために不正な通信パターンをブラックリストとして登録しておくのに対し、WAFの防御対象はウェブアプリケーションに限定されている為ブラックリスト型の遮断のみならず、正常な通信を事前登録してホワイトリスト型の遮断も行うことができる[343]

WAFを導入する主なケースとして、レンタルサーバ提供ベンダーや、複数のグループ企業を束ねている大手企業など、直接自分で管理していないウェブアプリケーションを保護したい場合、他社が開発したウェブアプリケーションを利用しているなど自分では脆弱性を防ぐことができない場合、事業継続の観点からウェブアプリケーションを停止できず脆弱性を行ったりパッチを当てたりできない場合等があり[344]、根本対策のコストよりもWAFの導入・運用のコストのほうが安い場合にWAFを導入する[344]

WAFにはHTTP通信(リクエスト、レスポンス)を検査し、検査結果に基づいて通信を処理し、処理結果をログとして出力する機能がそなわっている[345]。通信の検査は前述のようにホワイトリスト、ブラックリストを用いて行う。検査結果に基づいた通信の処理としては、そのまま通過させる、エラー応答を返す、遮断する、通信内容の一部を書き換えた上で通過させる、という4通りがある[346]。またセッションのパラメータの正当性やHTTPリクエストの正当性を確認してCSFR等の攻撃を防ぐ機能、ウェブサイトの画面遷移の正当性を確認する機能、ホワイトリストやブラックリストを自動更新する機能、ログをレポートの形で出力する機能、不正な通信を管理者にメール等で通知する機能等がついている事もある[347]

なお、たとえばウェブアプリケーションの認可機能に問題があるが、HTTP通信自身には問題がないケースなどではWAFは異常を検知してくれないので別の対策が必要となる[348]

メールフィルタリング・URLフィルタリング

Web レビュテーション

Webレピュテーションは様々な手法でウェブサイトを評価する事で、不正と思われるサイトへの接続を制御・抑制する技術である[349]。ユーザがウェブアクセスする際、アクセス先のURLをWebレピュテーションを提供しているセキュリティベンダーに問い合わせ、アクセスのブロック等を行う[350]。これにより不正サイトへのアクセスを制限できるのはもちろん、改竄された正規サイトに埋め込まれた不正サイトへのリンクへのアクセスもブロックできる[350]。またユーザによるアクセスのみならず、マルウェアによる外部接続も検知・遮断できる[351]

Webレピュテーションの評価基準には例えば以下のものがある:

  • ウェブサイトの登録年月日:悪性サイトは作成日が比較的新しいものが多い為[351]
  • ウェブサイトの安定性:悪性サイトはDNSやIPアドレスを頻繁に変える(fast flux)事が多い為[351]
  • 特定のネームサーバが複数のドメインで利用されているか否か:フィッシングサイトはこのような特徴を持つものが多い[351]

レピュテーションのアイデアはマルウェア検知にも応用されており、「ファイルレピュテーション」や「プログラムレピュテーション」などと呼ばれている[352]

エンドポイント対策技術

エンドポイント(=パソコン、PDA、携帯電話などのネットワーク端末[353])のセキュリティ対策ツールはEPP(Endpoint Protection Platform:エンドポイント保護プラットフォーム)とEDREndpoint Detection and Response)に大きく分ける事ができる[354]。EPPがマルウェア感染から防御するためのものであるのに対し、EDRはマルウェアに感染してしまったことを検知(Detection)してその後の対応(Response)を行うためのものである[354][355]。EPPに分類されるものとしてマルウェア対策ソフト、パーソナルファイアウォール、ポート制御、デバイス制御などがある[356]

EDR

EDRは標的型攻撃やゼロデイ攻撃などによりマルウェア感染が防げないという現実に対応して登場したもので[357]、エンドポイントにインストールするクライアントソフトと、それを一括管理するサーバないしアプライアンスからなる[357]。感染の検知や対応が目的なので、エンドポイントを監視して攻撃の兆候を検知し、ログを取得して組織全体のログデータと突合し、必要に応じて攻撃遮断などの応急処置を取ったりする[355][358]。EDRが攻撃検知に用いる情報の事をIOC(Indicator of Compromise、侵害痕跡)と呼び、具体的にはファイルの作成、レジストリーの変更、通信したIPアドレス、ファイルやプロセスのハッシュ値などがある[357]。なおEDRはガートナーのアナリストが2013年に定義した用語である[358]

リモートブラウザ

ブラウザ経由でのマルウェア感染を防ぐため、ブラウザのセッションをリモートから提供する手法のこと[359]。ブラウザのセッションは「ブラウザ・サーバ」という社内サーバもしくはクラウドから提供される[359]。Webページのレンダリングはブラウザ・サーバ側で行われ、エンドポイントには無害化した描画情報ないしレンダリング結果の画面ストリームのみが送られる[360][361]

ブラウザ・サーバはブラウズ・セッションごと、タブごと、もしくはURLごとにリセットされるので、ブラウザ・サーバ自身が汚染される危険はない[361]

情報漏えい対策技術

情報の機密性、完全性、可用性を守るため、情報の管理、更新、消去といった情報ライフサイクル管理(ILM, Information Lifecycle Management)の方法がISO 15489やJIS X 0902に規定されるなど[362]、セキュアな情報管理が求められる。このための技術として暗号化や署名といった暗号技術の他、USBポートのコントロールやe-メールの監視による情報の持ち出し制御、DLPなどがある。

DLP

DLP(Data Loss Prevention)は、機密情報の不正持出しを防ぐための技術である[363][364][365]。合意された定義は存在しないため、広義には暗号化やUSBポートのコントロールもDLPに含まれる場合がある[365]。しかし多くの場合DLPは、機密情報に関するポリシーをサーバで管理し、そのポリシーに従って情報の移動、持ち出し、利用等を制限したり遮断したりする技術である[363][364][365]。システムにある機密情報を洗い出す特定機能や洗い出した機密情報を監視する機能もついている場合が多い[363][365]

DLPは機密情報をそのコンテンツ内容やその情報が利用されるコンテキスト(利用時間や環境等)などから特定する[366]。機密情報を解析する方法は、正規表現により事前に定められたポリシーを利用するもの、構造化データの全体一致を調べるもの、非構造化データの部分一致を調べるもの、ベイズ法などを利用した統計解析を行うもの、インサイダー取引に似た情報など何らかのコンセプトに従って上述した手法を組み合わせるもの、情報に対して「カード情報」などのカテゴリ化を定義して解析するものなどがある[366]

その他の技術

検疫ネットワーク

検疫ネットワークは未登録の端末や、パッチがあたっていないなどポリシーに違反した端末を組織のネットワークから遮断する技術であり[367]、次の3つのステップで構成される事が多い:

  • 検出・検査:未登録の端末やポリシー違反の端末を検出・調査する[367]
  • 隔離:ポリシー違反の端末を組織のネットワークから遮断し、代わりに隔離されたネットワークである検疫ネットワークにつなげる[367]
  • 修復(治療):ポリシーに従って、検疫ネットワーク内でパッチを当てたり、マルウェアの定義ファイルを更新したりする[367]

UBA、UEBA

UBA(User Behavior Analytics)もしくはUEBA(User and Entity Behavior Analytics)は、システムに攻撃者が侵入した後のユーザの振る舞い等、ユーザを中心にした分析を行う事で攻撃を検知する技術全般を指す[368][369][370]。分析に用いるのはエンドポイントやネットワークのセキュリティデバイス、Active Directory等の認証サーバ、Webプロキシ、Net Flowなどのネットワークのトラフィック、データベース等のログ情報である[370]。その実装形態はいろいろありSIEMやログ管理と連携するものもあれば、エンドポイントにエージェントソフトをインストールものもある[368]

分析の目標はユーザの振る舞いを追跡して通常業務から逸脱した異常を検知する事で[368][370]、具体的にはアカウントの不正使用、侵害されたアカウントやホスト、データや情報の漏洩、内部偵察行為などを検知する[368]

ユーザは大量の行動ログを残すので、UBAではApache Hadoopのようなビッグデータ解析基盤を用いる事が増えている[371][372]

CASB

CASB(キャスビー[373]。Cloud Access Security Broker、クラウド・アクセス・セキュリティ・ブローカー[373])は2012年にガートナーが提唱した概念で[374]、ユーザにより勝手に使われているSaaSを可視化し[373]、機密情報の持ち出しなどを防いだりする事を目的とする[373]。ガートナーによればCASBは以下の4つ機能を持つ事を特徴とする。

  1. 社内ユーザーが用いているSaaSをシステム管理者が可視化する機能[374]
  2. アクセス権限違反やや機密情報の持ち出しをチェックしたりブロックしたりするデータセキュリティ機能[374]
  3. セキュリティ監査のためのコンプライアンス機能[374]
  4. セキュリティの脅威から防御する機能[374]

CASBの実装形態は3つある:

  1. クラウドサービスへアクセスするためのゲートウェイを社内に設置し、全てのクラウドアクセスをそこに集約させる形態[373][374]
  2. ユーザ端末にエージェントをインストールしてクラウドアクセスを監視する形態[374]。第一のものと違い社外にでる事もあるモバイル端末のクラウドアクセスも監視できるという利点がある[374]
  3. SaaSベンダ側が提供するAPIを利用する形態[374]。APIを通じてユーザがSaaS上に置いた情報等を監視する事ができるという利点がある[374]

ハニーポットとサイバーデセプション

いずれも攻撃者やマルウェアを騙す事で攻撃者の行動を観察したりシステムを防御したりする技術である[375][376][377][378]ハニーポットは例えば囮サーバなど脆弱性なシステムに見せかけたものを用意して攻撃者を騙し、攻撃者の侵入方法、侵入語の行動を観察する技術である[379]。ハニーポットの主な利用方法は攻撃者の行動の観察で[375]、例えば囮サーバで攻撃者が何をしたのかから攻撃者の目的を知る、といった用途で用いる。

実際のソフトウェアを用いたハニーポットを高対話型ハニーポット、ソフトウェアを模擬するエミュレータを使った(ので一部の対話しか再現できない)ハニーポットを低対話型ハニーポットという[379]。高対話型の方が現実環境に近いので低対話型よりも多く攻撃者の情報を集められるが、その分低対話型よりも負荷が高く、ハニーポットを攻撃者に乗っ取られた場合の危険も低対話型よりも大きい[379]。またインターネット上に設置したハニーポットに攻撃者を誘い込んで受動的観測を行うタイプと囮のウェブクライアント(ハニークライアント)で悪性サイトにアクセスするなどして能動的観測を行うタイプがある[379]

これに対しサイバーデセプション(Cyber Deception)は、いわば「次世代ハニーポット」として位置づけられる技術で[375][376]、主に攻撃から防御したりや攻撃目標の達成を遅延させたりする目的で用いられる技術である[375]。デコイサーバ(囮サーバ)等を設置する事はハニーポットと同様だが[375]、ハニーポットが攻撃者の情報を集めるためにネットワーク境界の外のインターネット上に設置される傾向があるのに対し、サイバーデセプションでは標的型攻撃により攻撃者がプライベートネットワーク内に侵入してくる事を前提にしてプライベートネットワーク上に囮を設置し、攻撃検知や防御のための時間稼ぎに利用される[375]。設置されるものとしては、デコイサーバの他に、囮サービス、囮クレデンシャル、囮ファイル等がある[375]。サイバーデセプションにおいて、囮として用いる情報全般をハニートークンといい[380]、例えばメールアドレス、プライバシー情報、アカウント情報等がハニートークンとして用いられる[380]

サンドボックス

サンドボックス(砂場)は隔離環境の事で、セキュリティ分野では、(不正な振る舞いをするかもしれない)プログラムをサンドボックス内で実行することで、そのプログラムの影響がサンドボックスの外に及ばないようにする目的で用いられる。隔離環境で実際にプログラムを実行してみる事により、従来のシグナチャ型マルウェア対策ソフトでは検知できなかったマルウェアを検出できる[381]。ただし、プログラムを実行して確認してみるという性質上、シグナチャ型のものよりも解析に時間がかかる[381]

マルウェアの中にはサンドボックスへの対抗策が施されているものもある。対抗策としては例えば以下のものがある:

  • マルウェアがサンドボックス内に置かれている事を察知してサンドボックス外とは振る舞いを変える[381]
  • 特定の時間しか動作しないようにしてサンドボックスでの検出を逃れる[381]
  • ファイルレスマルウェア(=メモリ上にのみ存在しファイルとしては存在しないマルウェア)を用いる事により、ファイルを対象にするサンドボックス製品から逃れる[382]

SOAR

SOAR(Security Orchestration Automation and Response、セキュリティのオーケストレーションと自動化によるレスポンス[383])はいわば「次世代SIEM」に位置づけられる製品群で[384][385]、ガートナーの定義によれば、「セキュリティの脅威情報やアラートを異なる情報源から集める事を可能にするテクノロジーで、標準化されたワークフローに従って標準化されたインシデントレスポンス活動を定義し、優先度付けし、駆動するのを手助けするために、インシデント解析やトリアージが人間とマシンの協調を梃子にして行われるもの」[384]の事である。

多くのSOAR製品はダッシュボード機能やレポート機能を持っており[384]、インシデントレスポンスや脅威情報の機能を持っているものもある[384]。また分析官の手助けをするために機械学習の機能を備えているものもある[386]

Breach & Attack Simulation (BAS)

BASは仮想的な攻撃を行う自動化ツールであり[387]、その概念はガートナーが2017年に提唱された[388]。ガートナーの定義によればBASは「ソフトウェアのエージェント、仮想マシン、ないしそれ以外の手段を用いる事により、企業のインフラに対する (内部の脅威、ラテラルムーブメント、データ抽出(exfiltlation)を含む)全攻撃サイクルの継続的かつ一貫したシミュレーションを行う事を企業に可能にする」技術を指す[388]

BASはシミュレーションにより企業のセキュリティ上の脅威を顕在化させたり、レッドチームやペネトレーションテストを補完するためにSOCの人員によって用いられたりする[388]

サイバーキルチェーンとの対応

以下のようになる[47][45][389][390][391]

検出[45]

Detect[389]

拒否[45]

Deny[389]

中断[45]

Disrupt[389]

低下[45]

Degrade[389]

欺き[45]

Deceive[389]

含有

Contain[390]

入口対策 偵察 Web分析 FW ACL FW ACL
武器化 NIDS NIPS インライン型マルウェア対策ソフト e-メールの遅延転送 NIPS
配送 ユーザの慎重さ プロキシフィルタ アプリケーションFW
攻撃 HIDS ベンダーパッチ EMET、DEP ゾーン内のNIPS
インストール マルウェア対策ソフト EPP
出口対策 遠隔操作 NIDS FW ACL NIPS Tarpit DNSリダイレクト TrustZone
内部対策 目的実行 ログ監査 QoSのスロットル率制限[392] ハニーポット

サイバーキルチェーンの原論文に載っているのはdetect、deny、disrupt、degrade、deceive、destroyの5つであり[391]、これはアメリカ合衆国国防総省のInformation Operations方針に載た軍事の分野の対策手段をAPTにも適用したのである[391]。ただし原論文でdestroyは空欄であったので[391]、上の表からは省いた。また文献[389][390]を参考にして他の列を加えた。

主なセキュリティツール・サービスの一覧

日本ネットワークセキュリティ協会(JNSA)はセキュリティのツール・サービスを以下のように分類している

分類[393] 具体例、解説[393]
統合アプライアンス 複数のセキュリティ機能をあわせ持つツール
ネットワーク脅威対策ツール ファイアウォール、アプリケーションファイアウォール
VPN
IDS/IPS
コンテンツセキュリティ対策製品 マルウェア対策
スパムメール対策、メールフィルタリング
URLフィルタリング
DLP
アイデンティティ・アクセス管理製品 個人認証システム(例:ワンタイムパスワード、ICカード等による本人確認)、生体認証システム
アイデンティティ管理製品
ログオン管理・アクセス許可製品
PKI関連
システムセキュリティ管理製品 セキュリティ情報管理
脆弱性管理
ポリシー管理、設定管理、動作監視制御
暗号製品 -
情報セキュリティコンサルテーション 情報セキュリティ、情報セキュリティ管理全般のコンサルテーション
情報セキュリティ診断・監視サービス
情報セキュリティ関連認証・審査・監査の機関・サービス
セキュアシステム構築サービス ITセキュリティシステムの設定・仕様策定
ITセキュリティシステムの導入・選定支援
セキュリティ運用・管理サービス セキュリティ統合監視・運用支援サービス(SIEMの運用など[394]
各種セキュリティ製品(ファイアウォール、IDS/IPS、マルウェア対策、フィルタリング)の監視・運用サービス
脆弱性検査サービス(ペネトレーションテスト、ソースコード解析など[394]
セキュリティ情報支援サービス
電子認証サービス
インシデント対応サービス
情報セキュリティ教育 -
情報セキュリティ保険 -

APT対策

APT対策のためのシステム設計

コネクトバック通信対策

C&Cサーバとのコネクトバック通信ではhttpやhttpsを使う事が多いので[395]、透過型プロキシは通過してしまう[395]。このため透過型でないプロキシを立て、ユーザ端末のブラウザのプロキシ設定をオンにし[395]、プロキシを経由していない通信はファイヤーウォールでインターネットに接続前に遮断する必要がある[395]。アプリケーションの更新などはWSUSのような中間配布サーバを立てるか、個々のアプリケーションに対してプロキシを指定する[395]。後者の場合、通信ログからファイヤーウォールで遮断されたアプリケーションを特定してホワイトリストをチューニングする必要がある[395]

またマルウェアの中にはプロキシに対応したものもあるので[396]、プロキシの認証機能を有効にし[396]、ユーザ端末のブラウザ側でもID/パスワードのオートコンプリート機能を禁止する必要がある[396]。プロキシはディレクトリサービスと連動するなどしてユーザ単位の認証ができるものが望ましい[396]。またActive Directoryを使えば配下にある端末のオートコンプリート機能を一括で禁止できる[396]

ドメインと連携したシングルサインオン機能を使っている場合はコネクトバック通信も自動的に認証を通ってしまう可能性があるので[396]、プロキシの認証ログを監視し、(窃取されたユーザIDの使い回しによって)異なるユーザ端末から同一の時間帯に同一ユーザIDによる認証が異なるIPアドレスから行われていないか、業務時間外などの不自然な時間帯に特定端末で定期的に認証がなされていないかといった事を、検知ルールにより自動的にチェックする仕組みを作る必要がある[396]

またマルウェアはC&Cサーバとのセッションの維持のためCONNECTメソッドを悪用する事があるので、プロキシのアクセス制御リストにより、業務に必要なポート(httpの80番やhttpsの443番)以外のCONNECTメソッドを遮断する必要がある[397]。さらにログの監視ルールを作ることで、長期間維持されているセッションや不自然な時間帯のセッションを遮断する必要がある[397]。マルウェアの中には切断されたセッションを規則的に再接続するものがあるので、ファイヤーウォールのフィルタリングでセッションを強制遮断する事によりそうしたマルウェアを発見できる[397]

ラテラルムーブメント対策

攻撃者がラテラルムーブメントを行う目的として、運用サーバやそれを管理する端末に侵入するというものがある[398]。そこでユーザ端末のあるセグメントと運用管理セグメントをLANポートレベルで分離し、ユーザ端末のセグメントから運用管理セグメントへの通信を遮断する必要がある[398]。さらにサーバの管理者には通常業務に使う端末とは別に運用専用端末を用意して、運用管理セグメントには運用専用端末からのみアクセスするようにする事で、管理者の端末を経由してユーザ端末セグメントから運用管理セグメントに侵入されるのを防ぐ[398]。運用専用端末がマルウェアに感染しないよう、運用専用端末からはインターネットに接続できないようにする必要がある[398]

リモートからの管理を許容しなければならない場合は、リモート管理を行う端末をユーザ端末セグメントにおき、運用管理セグメントの入口に認証と操作ログ管理機能を持ったトランジットサーバを置く[398]

部署をまたいだラテラルムーブメントを防ぐため、部署や業務内容毎にネットワーク分離をする必要がある[398]

また攻撃者はWindows端末の管理共有サービスを利用して、攻撃ツールを他の端末に仕込み、タスクスケジューラやPsExecを用いてその不正ツールをリモート実行するので[399]、端末の管理共有サービスを無効にする必要がある[399]

業務上管理共有を無効にできないサーバに関しては、Windowsサーバ側でタスクスケジューラやPsExecのリモート実行を検知する為、それぞれタスク追加イベントのID 106、サービス追加イベントのID 7045を監視する必要がある[400]。Active Directoryを使えば、配下のWindows端末の管理共有サービスを一括で無効にできる[399]。またActive Directoryにより、配下のWindows端末のWindows ファイアウォールを一括で有効にできる[399]

Active Directoryの認証失敗時のログを取得できるよう設定し[400]、ユーザ端末セグメントから管理運用セグメントへの認証試行を監視する[400]。また機密情報等、攻撃者が欲しがる情報を保有している部門のユーザ端末に、管理者権限などの高い権限を持っているかのような名称のトラップアカウントを作り[400]、トラップアカウントから管理運用セグメントへの認証試行を監視する事で、攻撃者によるユーザ端末の不正利用を検知する[400]。なお、トラップアカウントのパスワードはActive Directoryで一括変更する事で、無効なパスワードに設定しておく必要がある[400]

また攻撃者が無作為なIPアドレスを探索しているとすれば、組織内のネットワーク上にデコイサーバを用意し、そこにアクセスしてきた端末を検知するという手段もあるが[401]、攻撃者が無作為なIPアドレス探索を実際に行っているかは分からないため[401]、その効果は不明である[401]

権限昇格対策

攻撃者は権限昇格の為ユーザ端末にキャッシュされている管理者権限のアカウント情報を窃取しようとするので[402]、これを防ぐために、ユーザ端末で使用するアカウント権限を必要最低限にする必要がある[402]

具体的には、ユーザ端末で使用するアカウントはDomain Usersグループ(ユーザ端末の一般ユーザ権限を持つグループ)に登録していかなる管理者権限を付与せず、ユーザ端末のメンテナンスを行うアカウントはOperatorsグループ(ユーザ端末のローカル管理者権限を持つグループ)に登録してDomain Adminsグループなどドメインの管理者権限を持つグループには登録しないようにする[402]。またユーザ端末のローカル管理者などそれ以外のローカルアカウントは、トラップアカウント以外原則全て無効にする[402]

ドメイン管理者アカウントは可能な限り利用しないようにし、ドメイン管理者権限が必要な作業を運用記録として管理し、Active Directoryの認証ログと月に一度など定期的に突き合わせて、ドメイン管理者権限の不正利用がないか確認する必要がある[402]。運用記録の負荷軽減のため、システム管理製品のメッセージ監視機能等を使ってActive DirectoryのDomain Adminsグループのログイン履歴を監視し、ログインした事実を管理者に送信する事で実作業と突き合わせるようにするとよい[402]

攻撃の検知と把握

APTの標的となっている組織は、攻撃を検知してからでないと防御を行う事ができないので[403]、サイバーキルチェーンの早いステージで攻撃を検知する事が重要である。そのために以下で説明するインディケータとプロファイルを作成する事が有益である。

インディケータ

APT攻撃が行われている事を検知するには、攻撃を客観的に指し示す指標(インディケータ[57][58]に注目する必要がある。インディケータには以下の3種類がある[58]

名称

(日本語)

名称

(英語)

概要 具体例
基本的インディケータ[404] atomic indicator[58] 攻撃者の侵入を示す、より小さな情報に細分できない情報[58] IPアドレス[58][404]、URL[404]、マルウェアのファイル名[404]、e-メールアドレス[58]、脆弱性識別子[58]
複雑なインディケータ[404] computed indicator[58]直訳:算出インディケーター インシデントに関するデータから導出されたインディケータ[58] マルウェアのハッシュ値[58][404]、(IDSのシグナチャなどに使われる[404])正規表現[58]、C&Cサーバの特性[404]
パターンによるインディケータ[404] behavioral indicator[58]直訳:行動インディケーター 上記2種類のインディケータを組み合わせたインディケータで[58]、攻撃者固有の行動様式から観察可能な性質[404]。大抵の場合、何らかの値や組み合わせ論理で条件付けされている[58]。例えば「攻撃者は正規表現○○にヒットするネットワークトラフィックにより生成されたバックドアから□□の頻度△△のIPアドレスに侵入し、MD5ハッシュ値が☆☆なものにファイルを置き換える」といったインディケータ[58] 標的型メールの特徴[404]、マルウェアの行動パターン[404]、マルウェアのアーティファクトからわかる違い[404]、好んで使用するゼロデイ[404]、使用するインフラ、ホップポイント(≒踏み台)[404]、DNSのレジストリの詳細[404]、レジストラパターン[404]、ポートのパターン[404]、標的となる従業員[404]、標的となるデータ種別[404]、補完された戦略的ギャップデータ[404]

どのインディケータがどの攻撃フェーズに対応するのかを明確化する事で、インシデント対応がしやすくなる[404]

APT攻撃を特定するには、分析官は特定した攻撃のパターンを解析したり他の組織と強調したりする事でインディケータを明らかにし、それらインディケータをツールなどを使って成熟させ、そしてその成熟させたインディケータを使って攻撃を特定するというサイクルを回す必要がある[58]

こうしたインディケータは、攻撃目標[404]、狙われるシステム[404]、侵入方法[404]、攻撃ツール[404]、攻撃に使う外部資源[404]、攻撃の痕跡[404]、テクノロジーギャップ[404]、攻撃者の知識[404]といったものを分析するために使われる。逆に言えば、こうした事項から逆算して必要なインディケータを割り出す事ができる[404]

プロファイルの作成

APTを行っている攻撃者は、経済的理由から同じ攻撃ツールを使い回すなど一定のパターンを繰り返す傾向があるので[403]、APTのキャンペーン毎のプロファイルを作り、過去の傾向を統合する事でインディケータを改善し、検知できるステージを早める必要がある[403][405]

プロファイルの内容を充実させる方法としては、SIEMなどのログ相関分析エンジンを利用して複数の侵入行為に対してサイバーキルチェーンの各ステージにおけるインディケータの類似度を分析する事で攻撃の傾向を掴む[403][405]、というものがある。

プロファイルに含むデータとしては例えば、攻撃者の特性[405]、共犯者[405]、攻撃者の選好分野[405]、標的となった文書[406]、活動時間帯[406]、関連インディケータ[405]、マルウェアやツールキットの分析結果[406]、このAPTを追跡している他のCERT[405]、アナリストの任意のメモ[405]などがある。プロファイルは定期的に見直し[406]、最新に保つ必要がある。

なお、プロファイルが攻撃者に漏れては元も子もないので、プロファイルは極めて機密性が高く保ち、アナリストに必要な場合だけ必要な共有するようにする必要がある[405][406]

攻撃の予測

攻撃キャンペーン毎にどの時期にどのくらいの活動をしたのかを明示したヒートマップを作成する事で、APTの長期的な影響を理解し、休止中のAPTが攻撃を再開したときの潜在的予測分析が可能である[407][408]

インシデント対応における調査

インシデント対応時に対策側が把握すべき事は以下の4つのフェーズに分類できる[409]

フェーズ 知るべき事 調査対象
攻撃の有無の把握 攻撃メールか否か メール、不審なファイル
感染の有無の把握 PCの永続化、PCの実行痕跡、PCの感染頻出箇所、プロキシサーバ、ファイヤーウォール
被害状況の把握 通信先、侵入元、被害範囲、情報漏えい状況 メールサーバ、プロキシサーバ、DNSサーバ、ファイヤーウォール、同一セグメントのPC、組織内のPC・サーバ、Active Directoryの侵害状況、ファイルサーバの侵害状況、初期感染の徴候、感染したPC・サーバの詳細調査とフォレンジック
対策の有効性の把握 プロキシサーバ、DNSサーバ、ファイヤーウォール

以上の調査のため、下記のものを調べる必要がある[409]

調査対象 調査箇所
メール 不審なファイル
メールサーバ メールログ
DNSサーバ クエリログ
プロキシサーバ アクセスログ
Active Directory レジストリ、ファイルシステム、イベントログ
PC レジストリ、ファイルシステム、イベントログ
ネットワーク接続情報[410]

感染の把握の有無や被害範囲を把握する目的で行う調査としては下記のものがある[411]

評価対象 実施内容
感染頻出箇所 不審ファイル・攻撃ツールの有無
永続化設定 感染頻出箇所の抽出、既知攻撃類似点の抽出、公開情報との比較、実フォルダ確認
実行痕跡 バイナリ解析(可読化)、感染頻出箇所の抽出、実フォルダ確認、不審ファイル・攻撃ツールの有無
外部通信 通信先の抽出、公開情報との比較

感染頻出箇所の調査

前述したマルウェアが保存されやすい箇所を調べる事でマルウェアの痕跡が発見できる可能性がある[103]

永続化の痕跡の調査

マルウェアの永続化の痕跡を以下の方法で発見できる可能性がある[412]

永続化方法 調査方法
スタートアップ起動プログラム レジストリ操作ツール
サービス起動プログラム
スタートアップフォルダ
レジストリ操作ツール、リンクファイル情報の収集、PowerShell によるリンクファイル内容の収集
タスクスケジューラ タスク管理ツール

レジストリ情報はreg.exeで収集可能である[412]。調査すべきレジストリの詳細は文献[413]を参照されたい。

実行痕跡の調査

マルウェアなどアプリケーションを実行した痕跡が残る代表的な箇所として下記のものがある[103]

実行痕跡 概要
Prefetch Files C:\Windows\Prefetch フォルダのpfに最近128個のアプリケーション起動時の各種情報(起動時の読み込みファイル、実行回数等)が保持されている。
最近使ったファイ

C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\Recentフォルダにlnkファイルとして最近エクスプローラー経由で使ったファイル名が保存される。
最近使ったOffice

ドキュメント

C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Office\Recentフォルダにlnkファイルとして最近使ったOfficeドキュメントが保管されている。
AppCompatCache レジストリHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCacheに最近1024 個のアプリケーション実行時のキャッシュ情報(フルパスを、実行ファイル名、最終更新日、サイズ、ファイルの実行可否など)が保存されている。
UserAssist レジストリHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssistにエクスプローラー経由で実行したプログラム情報が保存されている。
RunMRU レジストリHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRUに「ファイル名を指定して実行」で実行したプログラム情報が保存されている。
TypedURLs レジストリHKEY_CURRENT_USER\Software\SOFTWARE\Microsoft\Internet Explorer\TypedURLsにInternetExplorer でアクセスした直近のURL(25 個~50 個)が保存されている。

AppCompatCacheやUserAssistはそのままでは可読でないので、何らかの可読化ツールで可読にする必要がある[414]。AppCompatCacheの可読化ツールとしては例えばShimCacheParser.pyがある[414]

またNTFSのUSNジャーナルやマスター ファイル テーブルにも実行痕跡が残るし[202]、ネットワークにも実行痕跡が残るのでパケットキャプチャによりその痕跡を探る事ができる[202]

他にも以下のような実行痕跡を調査する必要がある:

  • 攻撃者はラテラルムーブメントの際、攻撃ツールをPsExecでリモート実行する事が多いので[400][415]、レジストリKEY_USERS\SID\Software\Sysinternals\PsExecを調査する事でその実行痕跡を調査する必要がある[415]
  • 攻撃ツールが実行環境に合わずにクラッシュしてその痕跡を残す可能性があるので、C:\ProgramData\Microsoft\Windows\WER\ReportArchiveからアプリケーションのクラッシュ情報を調査する必要がある[416]

外部通信の調査

外部通信情報はDNS キャッシュとネットワーク接続情報から取得する[410]。前者はipconfig /displaydnsコマンドにより、後者はnetstatコマンドにより取得できる[410]

脅威インテリジェンス

脅威インテリジェンス(スレットインテリジェンス、セキュリティインテリジェンスとも[417])はガートナーの定義によれば、資産に対する既存もしくは今後発生する危険への対応の意思決定を知らせる事に使う事ができる証拠に基づいた知識で、例えば文脈、メカニズム、インディケーター、含意(implication)、および実行可能なアドバイスなどを含む[418]。APT対策には脅威インテリジェンスが重要である[407]

脅威インテリジェンスサービス

脅威インテリジェンスサービスとは、脅威および脅威因子を複数の情報源から収集し、それを分析したりフィルタリングしたりしてセキュリティ管理システム用の管理レポートやデータフィードとして提供するサービス全般を指す[417]。一般的な有償サービスでは、データフィード以外に、顧客のリスク状態に合わせてカスタマイズしたアラートや定期的な脅威レポートも提供し[417][419]、これにより顧客が脅威情報収集に費やすリソース(時間、労力、専門知識等)を減らす[417]。 脅威インテリジェンスのサービス提供者はインターネットを監視してどのIPアドレスがどのIPアドレスとどんな通信を行っているのか、どのIPアドレスがどんなウィルスを配布しているかなど、IPアドレス間の関係性や悪質度を解析する[420]。さらに不正プログラムの情報[420]、脆弱性情報[420]ダークウェブなどアンダーグラウンドのコミュニティで取引されている違法な商品やサービス[421]、それらを扱っている組織や人物像[421]、諸外国のサイバー攻撃の情報[421]なども用いて解析を行う。そして顧客に例えばフィッシング詐欺で用いられるなど悪意のある使われ方をしたりするIPアドレス、ドメイン、URLの情報、マルウェアのハッシュ値などをデータフィードとして提供する[419]

STIX

SXIX(Structured Threat Information eXpression、脅威情報構造化記述形式)はサイバー脅威インテリジェンスを機械可読な方法で他者と共有するための仕様であり[422][423]、セキュリティコミュニティが攻撃をより理解し、攻撃への準備や対応をよりうまく、早く、正確に行う事を可能にする[423]

なお、STIXのバージョン1はXML形式で脅威インテリジェンスを記述していたが、バージョン2ではJSON形式で記述する[424]

TAXII

TAXII(Trusted Automated Exchange of Intelligence Information[425]、検知指標情報自動交換手順[426])はSTIXで記述された脅威インテリジェンスをHTTPS上でシンプルかつスケーラブルな方法で通信するためのプロトコルである[425]

CISO

CISO(Chief Information Security Officer、最高情報セキュリティ責任者)は企業などで情報セキュリティを統括する役員のことで[427][428]、サイバーセキュリティ対策に関する全社的統括に業務責任を負っている[429]。それ以外にもIT戦略(コンプライアンス、リスクマネジメントに関するセキュリティ対策、セキュリティ実施計画やルール策定等)[429]、システム企画におけるセキュリティ実装計画[429]、IT環境における事業継続計画[429]、ディザスタリカバリ[429]情報セキュリティマネジメント[429]に関して支援・補佐する。

主な業務内容はセキュリティポリシーの策定[428]、個人情報の扱い運用やその監査[428]、コンピュータのセキュリティ対策[428]、機密管理規程の策定[428]、リスク管理[428]、情報漏洩事故の防止[428]、有事の際の対応[427]などを統括する事である。

なお個人情報に関しては「CPO」(Chief Privacy Officer:最高プライバシー責任者)という役職を別に授ける事もある[427]。情報システムの企画、導入、運用、更新を統括するCIO(Chief Information Officer:最高情報責任者) とは別の役職であるが[427]、兼任する場合もある[427]。またCSO (Chief Security Officer:最高セキュリティ責任者) は日本ではCISOと同義である事が多いが[427]、海外ではCISOとは別で、全社的な保安対策を担当を統括する役職を指す[427]

経営者がCISOに指示すべき主な重要事項は以下の通りである[430][431][432]

経営者が認識すべき3原則 分類 サイバーセキュリティ経営の重要10項目
経営者がリーダーシップをとったセキュリティ対策の推進 サイバーセキュリティリスクの管理体制構築  1 サイバーセキュリティリスクの認識、組織全体での対応方針の策定
 2 サイバーセキュリティリスク管理体制の構築
 3 サイバーセキュリティ対策のための資源(予算、人材等)確保
サイバーセキュリティリスクの特定と対策の実装  4 サイバーセキュリティリスクの把握とリスク対応に関する計画の策定★
 5 サイバーセキュリティリスクに対応するための仕組みの構築★
 6 サイバーセキュリティ対策におけるPDCAサイクルの実施
インシデント発生に備えた体制構築  7 インシデント発生時の緊急対応体制の整備★
 8 インシデントによる被害に備えた復旧体制の整備★
サプライチェーンセキュリティ対策の推進  9 ビジネスパートナーや委託先等を含めたサプライチェーン全体の対策及び状況把握
ステークホルダーを含めた関係者とのコミュニケーションの推進 10 情報共有活動への参加を通じた攻撃情報の入手とその有効活用及び提供

経営者はCISOを任命し、CISOが策定したサイバーセキュリティ対応方針や実施計画を承認する[433]。策定したセキュリティ対応方針は組織の内外に示す[434]。上述の表にあるように、CISOは自身を中心としたサイバーセキュリティリスク管理体制を構築し、経営リスク委員会等他の体制と内部統制、災害対策等について整合を取る必要がある[431]。また「★」がついている項目はCSIRTなどのセキュリティ対応部門に実務を担わせる[431]

SOCとCSIRT

業務内容と対応組織

企業などに存在するセキュリティ対応組織には、SOCとCSIRTの2種類が存在し、これら2つの主な仕事は以下の2点に集約される[6]

  • インシデント発生の抑制
  • インシデント発生時の被害最小化

セキュリティ対応組織の実務は、体制の検討、構築、見直しといった導入のフェーズ、概ね平時に行われる運用のフェーズ、インシデントが発生した「有事」においてインシデントに対応するフェーズからなる[435]。全体の運営は、短期に回す運用・対応のサイクルと、この短期サイクルを踏まえて導入の見直しを行う長期サイクルからなっている[435]

以上の業務をSOC、CSIRTという2種類の組織で行う。これら2つ組織の役割分担や関係性、業務内容等は企業毎に異なるが[205]、それぞれ概ね以下のような仕事を担う:

組織名 主な業務
SOC 概ね平時の営みの分析運用を行う[206]。組織のセキュリティに関するセンサー的な役割を担い[436]、インシデント検知のための分析、セキュリティ対応システムの監視やメンテナンスなど、[207]。狭義にはリアルタイムアナリシスとディープアナリシスを担当する[206]
CSIRT 概ね有事の営みを担当し、インシデント対応を行う[207]

文献[437]は、CSIRTがインシデントに対して行なう活動全般をインシデントマネジメントと呼び、インシデントマネジメントには、有事の対応に相当するインシデントハンドリング以外に以下の活動が含まれるとしている[437]

  • 脆弱性対応(パッチの適応等)
  • 事象分析
  • 普及啓発
  • 注意喚起
  • その他インシデント関連業務(予行演習など)

種別

CSIRTには、企業などの組織内に存在する組織内CSIRTの他に、国や地域を代表する国際連携CSIRTや、JPCERT/CCのように複数のCSIRTの連携を行うコーディネーションセンターなどがあるが[438]、本項では特に断りがない限り組織内CSIRTに関して述べるものとする。

またSOCには自組織で運営するものと、専門業者に外部委託するものがある[439]。両者を区別する場合、自組織で運営するものをプライベートSOCと呼ぶ[439]。一方、SOC機能等の外部委託先となるセキュリティサービスとしてMSS(Managed security service)があり[440]、MSSを提供する事業者をMSSプロバイダーMSSP)と呼ぶ[440]。MSSPは例えば以下の機能を提供している:

  • SOC機能[440]
  • リモートでシステムのセキュリティをリアルタイムに監視[440]
  • セキュリティ対策装置の運用[440]
  • セキュリティインシデント発生時の対応支援を提供する[440]

セキュリティ対策装置の攻撃アラートの検知時には、その内容を調査・分析して重要度や影響度を契約企業に通知し、対応を実施する[440]。またセキュリティ対策装置の運用の一環として、装置のソフトウェア更新を行ったり、ポリシー設定やシグネチャの変更や更新を行ったりする[440]。さらに稼動状況や対応作業の報告を行ったり、リアルタイムに状況をレポートしたり、契約企業からの問い合わせ対応を行ったりもする[440]

なおMSS事業者の呼称は業者毎に異なっており、「MSSP」以外にも「MSP(マネージドサービスプロバイダー)」、「MSSP(マネージドセキュリティサービスプロバイダー)」、あるいは単に「SOC」等とも呼ばれる[440]。またMSSPの業態には、専業事業者以外に、SIer、ISP、ハードウェアベンダがサービスを提供する場合もあり[440]、サービス内容としてMSS以外にIT システムの運用や機器の稼働監視提供している場合がある[441]。またMSS は24 時間365 日体制で提供される場合が多い[441]

関連組織

SOCやCSIRTはリアルタイムアナリシスやインシデント対応などのためにネットワークの運用管理部門であるNOC(Network Operations Center)と協調する必要がある[442]

また経営層や組織内のリスク管理委員会とも連携を取る必要がある。リスク管理委員会とCSIRTとの関係は、経営層の直下に両者が並列して存在する場合もあれば、経営層の直下にリスク管理委員会があり、更にその下にCSIRTがある場合もある[443]

リアルタイムアナリシス

SOCに求められる主な機能の一つで、ログを参照監視してインシデントの予兆を発見する[444][445]。監視するログとしては主に以下のものがある[444][445]

  • ファイアウォールなどのネットワーク装置のログ
  • IDS/IPSWAFといったセキュリティ機器のアラートログ
  • Webサーバなどのアクセスログ
  • Active DirectoryDNSなど各種システムからのログ
  • ユーザ利用端末のログ

SIEMのようにログを収集・正規化し、複数のログを相関分析する機器を用いる事で、職人芸的なログ分析能力などの属人性を廃して膨大な量のログを分析する[444][445]

ログの分析は以下の2つをトリガーとして行う[444]

  • セキュリティ機器のルールやシグネチャ条件に合致したイベントの発生によるアラートをトリガーにして分析を開始する[444]
  • 一つのログを定点観測する事で、時間あたりのログの量が急激に増えるなどの現象をトリガにして分析を開始する[444]

上述した分析だけでは不足する場合は、詳細な分析として以下を行う[445]

  • 専用のネットワークキャプチャ装置やセキュリティ装置を用いたパケットキャプチャ[445]
  • エンドポイントやサーバから必要なデータを取得[445]

以上に加えリアルタイムアナリシスでは、トリアージ(後述)に必要となる情報の収集を行う[445]

SOCにはその活動内容の報告が求められ、定期報告と必要に応じた臨時報告を行う[445][446]。定期報告は大手ソフトウェアメーカーが定期的にパッチをリリースする1週間後程度を目安として行われる事が多い[446]。報告内容は被害端末の情報、攻撃手法、攻撃経路、情報漏えいの有無、影響度、すぐに行うべき短期的な対処策等である[445]。不明なものは不明と明記する事が望ましい[445]。また分析に関する問合せ対応も行う必要がある[445]

インシデントハンドリング

CSIRTに求められる主な機能の一つで、インシデントの発生確認、迅速な封じ込め、影響範囲特定とその文書化、全容解明、復旧といった技術より作業の他に[447]、ビジネスやネットワークに及ぼす混乱を最小限にとどめ、インシデントに対する世間の認識をコントロールし、犯人に対する訴訟の準備をするといった作業も含まれる[447]

インシデントハンドリングは技術的な作業のみにとどまらないので、一般的に

  • 何が発生したのかを判断して損害を評価する調査チーム
  • 攻撃者を排除して被害者のセキュリティ体制を強化する修復チーム
  • 何らかの形の(経営層、社員、ビジネスパートナー、一般に対する)広報活動

で構成される[448]。インシデント管理責任者はCISO、CIO、もしくは彼らから直接任命を受けた人物がその任務にあたる[449]

CSIRTはインシデントと思しき情報をユーザやSOC、外部組織等から検知/連絡受付したら、その情報をトリアージし、対応すべきと判断したインシデントに対してインシデントレスポンスを行い[450]、最後に報告/情報公開を行う[450]

検知/連絡受付

インシデントと思しき情報は自組織内部の保守作業で発見される場合、IDSのような何らかの異常検知システムで発見される場合、外部からの連絡により発見される場合の3通りがある。

よってCSIRTは、

  • 保守作業で発見されるケースが増えるよう、インシデントの検知に必要なチェック項目とチェック方法を予め定めておく必要がある[451]
  • 保守作業ないし異常検知システムでインシデントと思しき情報が発見された場合に備え、何を持って異常とするのかを事前に定めておく必要がある[451]
  • 外部からの連絡が増えるよう、事前に問い合わせ窓口を用意し、自組織のWebサイト等で公開しておく必要がある[451][452]。またWHOISにCSIRTのグループアドレスを登録してメンバの誰でも対応できるようにする必要がある[451][452]

トリアージ

CSIRT のリソースを有効に使うため、対応すべきインシデントの優先度付けを行うフェーズである[453]。そのために、何を守るべきか等の活動ポリシーを明確化し、事前にトリアージの判断基準を決めておく[453]

インシデントと思しき情報があったら情報提供者から必要情報を入手し[453]5W1Hを整理する(「Why」は後回しでも良い[453])。そして単なる勘違いでないか、CSIRT の対応すべきか等を判断する[453]。対応する場合は後述するインシデントレスポンスを行う。対応しないと判断したら、セキュリティポリシーに照らして可能な範囲で情報提供者や関係者等に回答する[453]。対応の有無にかかわらず、必要に応じて注意喚起等の情報を発信する[453]

なお本稿では文献[453]に従ってトリアージをインシデントハンドリングに含めたが、文献[445]ではトリアージをリアルタイムアナリシスに含めている。

インシデントレスポンス

トリアージの結果、CSIRTが対応すべきと判断したケースにおいて、インシデントに対応するフェーズである。

まず事象を分析して、CSIRTで対応すべきか、技術的な対応が可能か等を冷静に再判断し[454]、対応が必要だと判断した場合は対応計画を策定し[454][455]、具体的な対応活動・攻撃の抑止措置を取る[455]。この際必要に応じてIT 関連部署や外部組織と連携し[454][456]、経営層と情報共有し、外部の専門機関等に支援を依頼する[454]。対応が終了したら、セキュリティポリシーに照らして可能な範囲で情報提供者や協力者等に回答する[454]

調査では、攻撃経路、使われた攻撃ツール、被害を受けたシステム、攻撃の手口、攻撃者が達成したことなどを特定し、被害の評価を行い、さらにインシデントが行われた期間はいつか、インシデントが継続中か否かといった事も特定する[456]

優先度の低いインシデントは電話やメールでリモート対応する[456]。リモート対応ができないときや、厳格な証拠保全が必要な場合は、物理的拠点に直接向かい、オンサイトで対処を行う[456]。なお詳細な分析に関してはディープアナリシスの節で記述する。

このフェーズでは、調査や訴訟のために証拠を保全する事を重要である[457]。またインシデント対応が完了するまで、インシデント分析の進捗状況などの対応状況の管理をする必要がある[452]

報告/情報公開

必要に応じ、プレスリリース、監督官庁への報告、組織内部への情報展開等を行う[458][456]

ディープアナリシス

インシデントの全容解明と影響の特定のため、被害を受けたシステムの調査、漏えいしたデータの確認、攻撃に利用されたツールや手法の分析などを行う[459]

具体的には

  • ネットワークログ、PCAP、その他リアルタイム分析の対象ではないログを用いたネットワークフォレンジック[460]
  • 被害に遭ったマシンのメモリや記憶媒体を用いたデジタルフォレンジック[460]
  • マルウェアの検体解析[460]

等を行う事で攻撃の全容を解明し[460]、犯罪捜査や法的措置を行う可能性がある場合は証拠を保全する[460]

文献[461]ではディープアナリシスをSOCの業務としている。

全般的な運営

方針策定

以下を策定し、必要に応じて改善する:

  • 取り扱うべき事象、対応範囲、運営体制、行うべき取り組みなどの全体方針[462]
  • インシデント発生時、脆弱性発見時、脅威情報発見時のトリアージ基準とそれぞれに対する具体的なアクションの方針[462]
  • 体制、業務プロセス、システム、人材育成、キャリアパスなどの全体像の把握と立案[462]

全般的な運用業務

  • 人員等のリソース管理[462]
  • 人材確保[463]
  • 対応の効果測定と品質改善[462]
  • ネットワークやエンドポイントのセキュリティ機器の運用管理、分析基盤、アナリシスツール、業務基盤等の運用管理[464]

その他の業務

SOC・CSIRTの業務として、以上に挙げたもの以外に以下のものがある。

資産管理

防御対象となるサーバ、端末、ネットワーク装置などの資産やネットワーク構成を把握する[465]。把握した情報は、脆弱性管理、分析、インシデント対応等に利用する[465]

脆弱性管理・対応

資産管理の結果得られた資産リストに関する脅威情報を収集し、対応が必要な資産を特定し、その資産の管理部門に通達する[465]。さらに脅威への対応状況を管理する[465]。この目的のためにプラットフォーム診断、Webアプリケーション診断などを自動脆弱性診断ツールで実行する他[465]、必要に応じて手動の脆弱性診断を行う。

情報収集・注意喚起

下記の情報を収集する:

  • 内部インテリジェンス(リアルタイム分析やインシデント対応に関する情報)[466]
  • 外部インテリジェンス(公開された新たな脆弱性情報、攻撃動向、マルウェア挙動情報、悪性IPアドレス/ドメイン情報など)[466]

これらの情報を定期的にドキュメント化し、周知する[466]。重大な脆弱性等に関しては速報も出す必要がある[466]

予行演習・社員教育・普及啓発等

  • 標的型メール訓練の実施[465]
  • ソーシャルエンジニアリングテストの実施[465]
  • 攻撃が起きたという想定でのサイバー攻撃対応演習とその結果の反映[465]
  • 社内研修・勉強会の実施ないしその支援[463]
  • 社内セキュリティアドバイザーとして活動[463]

内部統制支援

内部統制の監査データで必要となるログの収集と報告、内部不正が発覚した際の支援、内部不正の検知や防止の仕組みの確立支援等を行う[463]

社内外の組織との連携

利用しているセキュリティ製品・サービスの提供元との情報交換や、セキュリティ対応を行っている組織の集まりにおける情報交換など[463]。CSIRTによるコミュニティとしては、例えばFIRST (Forum of Incident Response and Security Teams)、APCERT (Asia Pacific Computer Emergency Response Team)、日本シーサート協議会などがある[467]

PSIRT

PSIRT(Product Security Incident Response Team)は「組織が開発・販売する製品、ソリューション、コンポーネント、サービスなどの、脆弱性リスクの特定や評価、対処に焦点を当てた」組織内機能で[468]「自社製品の脆弱性への対応、製品のセキュリティ品質管理・向上を目的」とする[469]

PSIRTと組織内CSIRTの違いは、前者はその活動の中心が製品のセキュリティであるのに対し、後者は組織のインフラを構成するコンピュータシステムやネットワークのセキュリティに重きを置いている点にある[469]。ただしPSIRTは組織内CSIRTと協調する事で相乗効果を発揮する[469]

PSIRTの組織構造は「分散モデル」、「集中モデル」、「ハイブリッドモデル」に分類できる[470]。分散モデルでは、「PSIRT 自体はごく小規模な組織であり、製品開発チームの代表者と協力して脆弱性に対処する」[470]。分散モデルでは脆弱性のトリアージや修正プログラム提供は製品開発チームが行い[470]、PSIRTはそのための支援やガイドラインの作成等を行う[470]。集中モデルではPSIRT は多くのスタッフを抱え、「各部門から選抜されたスタッフが組織の製品セキュリティを担当する上級幹部に報告する」[470]。脆弱性のトリアージや修正プログラム提供はPSIRTがチケッティングシステムを管理してリーダーシップを発揮する[470]。ハイブリッドモデルは両者の中間形態である[470]

「組織の規模が大きく、多様な製品ポートフォリオを持つ組織」[470]は分散モデルが適している。一方「より小さい組織や同種の製品ポートフォリオを持つ組織」[470]では「高度なセキュリティスキルと専門知識を1 つの領域に集中」[470]できる集中モデルが適している。

PSIRTの活動内容はCSIRTのそれとかぶる部分も多いが、開発関係者との連携[471]、製品のライフサイクル・リリースタイミング・サービスレベルアグリーメントを意識したセキュリティ確保[472]、脆弱性発見者との交流[473]、サプライチェーンの上流・下流との交流[473]、バグバウンティ(脆弱性報奨金)の提供[474]もしくはバグバウンティベンダとの交流[475]など、PSIRT固有の活動もある。

制御システム・IoT機器のセキュリティ

制御システムのセキュリティ

制御システムとは、例えば

  • エネルギー分野(電力、ガス等)、石油・化学、鉄鋼業プラントにおける監視・制御[476]
  • 機械・食品等の工場の生産・加工ライン[476]
  • 施設管理、鉄道運行管理[477]

などで用いられるシステムの事である。インターネットの普及に伴い、制御システムの機器も汎用で標準的なプロトコルを用いて制御用データを送受信するようになり[478]、システムにもWindows やUNIXなどの汎用OSが利用されるようになっている[478]。こうした理由により、制御システムもインターネットを経由したサイバー攻撃のリスクに晒されており、セキュリティ対策が必要となる。制御システムは社会インフラで利用される事が多いので、サイバー攻撃のリスクは大きく、場合によってはサイバーテロの標的になったり、国家によるサイバー攻撃を受けたりする場合もある(例えばスタックスネットの事案)。

制御システムの特徴

制御システムでも情報セキュリティのCIA、すなわち下記の3つは重視される[10]

  • 機密性 (Confidentiality): 情報へのアクセスを認められた者だけが、その情報にアクセスできる状態を確保すること
  • 完全性 (Integrity): 情報が破壊、改ざん又は消去されていない状態を確保すること
  • 可用性 (Availability): 情報へのアクセスを認められた者が、必要時に中断することなく、情報及び関連資産にアクセスできる状態を確保すること

しかし制御システムのセキュリティでは重要度がC、I、Aの順番ではなく、A、I、Cの順番である[11][12]。また以下のHSEの3つも重視される[12][13]

  • 健康Health)
  • 安全Safe)
  • 環境への影響(Environment)

以下の表は制御システムと情報システムとでセキュリティに対する考え方の違いを整理したものである[479]

制御システム 情報システム
セキュリティの優先順位 AICの順。継続して安全に動く事を重視。 CIAの順。情報が適切に管理され、情報漏えいを防ぐ事を重視。
保護対象 モノ(設備、製品)、サービス(連続可動) 情報
システムのサポート期間 10年~20年 3~5年
求められる可用性 24時間365日安定稼働。

(再起動は許容されないケースが多い)

再起動は許容範囲のケースが多い
運用管理 現場技術部門 情報システム部門

CSMS

一方向性ゲートウェイ

アプリケーションホワイトリスト

IoT機器のセキュリティ

IoT機器とは家電、オフィス機器、自動車、信号機などのモノでインターネットにつながる機能を有しているものを指す。IoT機器はLinuxやWindowsなどの汎用OSがカスタマイズして搭載されている[480]。IoT機器の多くでは、設定変更を行うためウェブサーバ機能が搭載サれており、他にもFTPSMBのサーバ機能、メールサーバ機能等が搭載されていることもある[480]

IoT機器は出荷した初期設定状態ですぐ利用できる事が想定されているため、初期設定ではログイン認証機能が設定されていないことも多く[481]、こうしたIoT機器がファイヤーウォールを隔てることなく直接インターネットに接続されることも多い[481]。このため複合機ウェブカメラから機密情報や個人情報が漏洩したり[481]、ブロードバンドルーターなどのIoT機器の設定を不正に変更してユーザを悪性サイトに誘導したり[481]スパムメール送信やDoS攻撃に利用されるなど攻撃の踏み台にしたり[481]といったインシデントが起きている。

日本国のサイバーセキュリティ推進体制

サイバーセキュリティ基本法

サイバーセキュリティ基本法はサイバーセキュリティに対する脅威の深刻化と内外の諸情勢の変化に伴って2014年に可決、2016年に改正された法律である。この法律の目的はサイバーセキュリティに関する施策を総合的かつ効果的に推進し、経済の向上と持続的発展、国民の安心・安全、国際社会の平和と安全、および日本国の安全保障に寄与する事である(第一条)[482]

またこの法律は、サイバーセキュリティの施策に関する基本理念、国や地方公共団体の責務、サイバーセキュリティ戦略の策定など施策の基本事項を定め、さらにサイバーセキュリティ戦略本部を設置する事を定める(第一条)[482]

サイバーセキュリティ戦略本部と内閣サイバーセキュリティセンター

サイバーセキュリティ基本法第24条により内閣にサイバーセキュリティ戦略本部を置く事が定められており[483]、内閣官房組織令第1条により内閣官房に内閣サイバーセキュリティセンター(NISC)を置く事が定められている[484]。サイバーセキュリティ戦略本部の庶務はNISCが行うこととされている。それぞれの概要は下記のとおりである[485][483][486][487]

組織名 根拠法令 構成員 役割 関連組織
サイバーセキュリティ戦略本部 サイバーセキュリティ基本法第24条 以下の事の事務(26条1項):
  1. サイバーセキュリティ戦略の案の作成及び実施の推進
  2. 政府機関などにおけるサイバーセキュリティに関する対策の基準の作成、およびその基準に基づく施策の評価、監査等の施策の実施の推進
  3. 政府機関などで発生したサイバーセキュリティに関する重大な事象に対する施策の評価
  4. (原因究明のための調査を含む)

開催する会議として以下がある:

  • サイバーセキュリティ対策推進会議(CISO等連絡会議)
  • 重要インフラ専門調査会
  • 研究開発戦略専門調査会
  • 普及啓発・人材育成専門調査会
下記と緊密連携を取る
  • 国家安全保障会議(NSC)
  • 高度情報通信ネットワーク社会推進戦略本部(IT総合戦略本部)
内閣サイバーセキュリティセンター(NISC) 内閣官房組織令第1条
  • 内閣サイバーセキュリティセンター長(内閣官房副長官補が兼務。4条の2第3項)
  • 副センター長(内閣審議官)
  • 上席サイバーセキュリティ分析官
  • サイバーセキュリティ補佐官
基本戦略グループ サイバーセキュリティ政策に関する中長期計画や年度計画の立案

サイバーセキュリティ技術動向等の調査・研究分析

下記と協力体制を取る:
  • 重要インフラ所管省庁
    • 金融庁
    • 総務省
    • 厚生労働省
    • 経済産業省
    • 国土交通省
  • 閣僚本部員6省庁
    • 警察庁
    • デジタル庁
    • 総務省
    • 外務省
    • 経済産業省
    • 防衛省
国際戦略グループ サイバーセキュリティ政策に関する国際連携の窓口機能
政府機関総合対策グループ 政府機関等の情報セキュリティ対策を推進するための統一的な基準の

策定、運用及び監査

情報統括グループ サイバー攻撃等に関する最新情報の収集・集約

政府機関情報セキュリティ横断監視・即応調整チーム(GSOC)の運用

重要インフラグループ 重要インフラ行動計画に基づく情報セキュリティ対策の官民連携
事案対処分析グループ 標的型メール及び不正プログラムの分析

その他サイバー攻撃事案の調査分析

サイバーセキュリティ担当大臣

サイバーセキュリティ戦略本部に関する事務を担当する国務大臣の通称としてサイバーセキュリティ担当大臣と呼ぶことがある。事務局であるNISCは内閣官房に属するが、同国務大臣担当大臣内閣府特命担当大臣とも異なる無任所大臣であり、辞令等によってサイバーセキュリティ担当とする補職が行われているものではない。デジタル市場競争本部の設置について(2019年9月27日閣議決定)などにおいて、本部員に「サイバーセキュリティ戦略本部に関する事務を担当する国務大臣」が指定されている。

サイバーセキュリティ協議会

平成30年のサイバーセキュリティ基本法改正によりその創設が決定された[488]。その目的は「専門機関等から得られた脅威情報を戦略的かつ迅速に共有」する事であり[489]、そのために「官民の多様な主体が相互に連携して情報共有を図り、必要な対策等について協議を行う」[489]。NISCと専門機関を事務局とし[489]、国の行政機関、地方公共団体、重要インフラ事業者、サイバー関連事業者、教育研究機関、有識者等をその構成員とする[489]。構成員には秘密保持と協議会への情報提供の協力とが課せられる[489]

サイバーセキュリティ戦略

サイバーセキュリティ戦略本部はサイバーセキュリティ戦略というサイバーセキュリティに関する基本的な計画を作り、閣議決定する[483][490]。その内容は下記のとおりである(サイバーセキュリティ基本法12条2項)[483]

  1. サイバーセキュリティに関する施策についての基本的な方針
  2. 国の行政機関等におけるサイバーセキュリティの確保に関する事項
  3. 重要社会基盤事業者や地方公共団体等におけるサイバーセキュリティの確保の促進に関する事項
  4. その他サイバーセキュリティに関する施策を総合的かつ効果的に推進するために必要な事項

政府統一基準{"@context":"http:\/\/schema.org","@type":"Article","dateCreated":"2023-05-23T16:57:49+00:00","datePublished":"2023-05-23T16:57:49+00:00","dateModified":"2023-05-23T16:57:49+00:00","headline":"サイバーセキュリティ","name":"サイバーセキュリティ","keywords":[],"url":"https:\/\/www.wiki2.ja-jp.nina.az\/サイバーセキュリティ.html","description":"サイバーセキュリティ 英 cyber security は サイバー領域に関するセキュリティを指す 目次 1 概要 2 定義 2 1 ISO IEC 27032 2012の定義 2 2 基本法の定義 3 攻撃者 3 1 種類 攻撃の目的 3 2 サイバー犯罪の産業化 3 3 国家が関与する攻撃 4 標的型攻撃 APT攻撃 4 1 サイバーキルチェーン 4 1 1 類似のモデル 4 2 準備ステージ 4 3 偵察ステージ 4 4 武器化ステージ 4 5 配送ステージ 攻撃ステージ インストールステージ 4 5 1 マルウェア配送手法 4 5 2 標的型メール 4 5 3 マルウェア配布ネットワーク 4 5 4 バナーチェック ブラウザ","copyrightYear":"2023","articleSection":"ウィキペディア","articleBody":"サイバーセキュリティ 英 cyber security は サイバー領域に関するセキュリティを指す 目次 1 概要 2 定義 2 1 ISO IEC 27032 2012の定義 2 2 サイバーセキュリティ基本法の定義 3 攻撃者 3 1 種類 攻撃の目的 3 2 サイバー犯罪の産業化 3 3 国家が関与する攻撃 4 標的型攻撃 APT攻撃 4 1 サイバーキルチェーン 4 1 1 類似のモデル ","publisher":{ "@id":"#Publisher", "@type":"Organization", "name":"www.wiki2.ja-jp.nina.az", "logo":{ "@type":"ImageObject", "url":"https:\/\/www.wiki2.ja-jp.nina.az\/assets\/logo.svg" },"sameAs":[]}, "sourceOrganization":{"@id":"#Publisher"}, "copyrightHolder":{"@id":"#Publisher"}, "mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/www.wiki2.ja-jp.nina.az\/サイバーセキュリティ.html","breadcrumb":{"@id":"#Breadcrumb"}}, "author":{"@type":"Person","name":"www.wiki2.ja-jp.nina.az","url":"https:\/\/www.wiki2.ja-jp.nina.az"}, "image":{"@type":"ImageObject","url":"https:\/\/www.wiki2.ja-jp.nina.az\/assets\/images\/wiki\/69.jpg","width":1000,"height":800}}