Japan
サイト内の現在位置
CIS Controls®の実装状況を評価するためのツール「CIS CSAT」のご紹介
NECセキュリティブログ2024年2月2日
こんにちは。NEC サイバーセキュリティ戦略統括部のU松(ハンドルネーム)です。今回はCIS Controls Self Assessment Tool (以降、CIS CSAT)[1]のご紹介になります。CIS CSATはCIS Critical Security Controls® (以降、CIS Controls®)[2]の対策の実装状況を評価することができるツールです。名前の通りCIS®が提供するツールで、無償版のCIS-Hosted CSAT [3]と、有償版(有料のCIS SecureSuite® Membership [4]向け)のCIS CSAT Proがあります。本記事では有償版のCIS CSAT Proをご紹介しますが、どんなツールかご興味がある方は無償版のCIS-Hosted CSATを使ってみてください(無償版には、作成できる組織ツリーの数、同じ組織内で同時に実行できる評価の数、ロールの制御、スコアリングの方法等、いくつかの点で制限や違いがあります。またCIS CSAT Proがオンプレミスであるのに対し、CIS-Hosted CSATはCIS®がサーバを管理しています)。
- ※本記事は筆者が参考文献や実際のツールを調査・使用して独自に執筆したものであり、その内容についてCIS®による承認を受けたものではありません。
CIS Controls®とは
CIS Controls®は様々な組織・システムを保護するために利用できるサイバーセキュリティ対策のベストプラクティス集です。最新のVersion 8は下記18項目(コントロール)で構成されており、さらに各コントロールにはそのコントロールを実装するための具体的な対策(セーフガード。Version 8より以前はサブコントロールと呼ばれていた)が記載されています。Version 8には153のセーフガードがあります。(本記事では後述のツール紹介を含め、Version 8について扱います)。
CIS Controls® v8の18コントロール(※):
- Control 01 組織の資産のインベントリと管理
- Control 02 ソフトウェア資産のインベントリと管理
- Control 03 データ保護
- Control 04 組織の資産とソフトウェアの安全な構成
- Control 05 アカウント管理
- Control 06 アクセス制御管理
- Control 07 継続的な脆弱性管理
- Control 08 監査ログ管理
- Control 09 電子メールとWebブラウザの保護
- Control 10 マルウェアの防御
- Control 11 データ復旧
- Control 12 ネットワークインフラストラクチャ管理
- Control 13 ネットワークの監視と防御
- Control 14 セキュリティ意識向上とスキルのトレーニング
- Control 15 サービスプロバイダーの管理
- Control 16 アプリケーションソフトウェアセキュリティ
- Control 17 インシデントレスポンスと管理
- Control 18 ペネトレーションテスト
- ※各コントロールの日本語訳はCIS Controls® v8日本語訳版 [5]より
CIS Controls®は様々な企業がコントロールを適用できるようセーフガードに優先順位をつけています。具体的にはセーフガードを3つの実装グループ(実装グループ1~3)に分けています。実装グループ1は(全ての企業が実施すべき)一般的な攻撃を防ぐための対策で、ITやサイバーセキュリティの専門知識があまりなく、また保有するデータに求められる機密性もさほど高くない企業を対象としています。2、3と上がるにつれ、ITやサイバーセキュリティの専門人材を雇用でき、また高い機密性や完全性、可用性を求められるデータや資産、サービスを保有するような企業を対象とした、より高度な攻撃に対処するための対策となっていきます。(上位の実装グループは下位の実装グループを包含しています)。
CIS CSAT Proのダウンロード・インストール
今回はCIS CSAT Pro v1.14.1を使用しました。CIS CSAT ProはCIS SecureSuite® Membershipに加入済みであればCIS WorkBench [6]からダウンロード可能です(導入・ユーザガイド [7]はインターネット上で公開されています。本記事もそちらを参考にしています)。インストーラはWindows用とUnix用がありますので、インストール予定のOSにあわせたものをダウンロードします。今回はWindows Server 2022にインストールしました。
ダウンロードしたインストーラを実行するとインストールが始まります。インストール時にはEmail設定(任意。パスワードを忘れた場合やタスク割り当て時のメッセージを送信する場合などに使用します)やMFAの設定、Adminユーザの設定などを行います。またCIS CSAT ProはNeo4jを使用するため、こちらのダウンロードも必要です。
ログインから評価の実施
インストールが完了するとログインできるようになります。ブラウザ(現状公式にサポートされているものはGoogle Chromeのみ)を立ち上げ、https://<hostname>にアクセスします(TLSを使わない設定の場合はhttp://<hostname>:8080)。
ログインするとユーザのホーム画面が表示されます。この画面では当該ユーザで閲覧可能な組織(後述)、評価(後述)などの情報を確認できます(下記図はインストール時に作成したAdminユーザのホーム画面。また既にいくつかの組織や評価を作成後のもの)。
初回ログイン後は、ユーザや組織、評価を作成していきます。
はじめにユーザの作成からご説明します。ユーザの作成はユーザ管理画面(User Management。上部メニューの歯車アイコンから選択可能)から行え、ユーザ名、パスワード、Emailアドレス、システムプロファイル(後述)を選択し、作成します。
システムプロファイルはツール全体に対するアクセスレベルを決定するもので、System AdminとBasicの二種類があります。ユーザ作成時には、作成するユーザに必要な権限にあわせて適切な方を選択します。
- System Admin:ツールに対する完全な権限を持つシステムプロファイル。トップレベルの組織の作成や他のユーザの編集等が可能。
- Basic:権限が制限されたシステムプロファイルで、トップレベルの組織の作成やユーザ管理画面(User Management)へのアクセスなど、ツールレベルの管理アクションはできない。このシステムプロファイルのユーザは、組織やユーザに関する情報へのアクセスが、そのユーザが所属する組織ツリーに制限される。
次に組織の作成です。CIS CSAT Proでは組織を作成し、その組織の中で評価(CIS Controls®の各セーフガードの実装状況の評価)を行います。組織はツリー構造を構成でき、トップレベルの組織の下にサブ組織を構成していくことができます(サブ組織の下にさらにサブ組織を作成することも可能です)。例えば、トップレベルが会社、サブ組織が事業部といった具合に作成できます。評価対象にあわせて作成するとよいでしょう。
トップレベルの組織の作成は(System Adminシステムプロファイルを持つユーザであれば)ユーザホーム画面の「Create Organization」ボタンから行えます。組織名、その組織のWebサイトのURL、業界を入力し、作成します。
作成した組織の情報は、組織情報画面(Organization Info)で確認できます。この画面では情報の確認の他に、(後述する適切な組織ロールを持つユーザであれば)「Sub-organizations」セクションでサブ組織の作成が、「Users in Organization」セクションで組織へのユーザの追加が、「Assessments」セクションで評価の作成が行えます。
組織にユーザを追加する場合は、適切な組織ロールを選択する必要があります。組織ロールはその組織、組織の評価、組織のユーザに対しユーザが実行できる操作を決定するもので、Admin、Full User、Basic Userの三種類があります。
- Admin:その組織や組織の評価への完全なアクセス権限を持ち、その組織に所属するユーザのロールを管理することができるロール。サブ組織の作成や新しい評価の作成も可能。
- Full User:組織の既存の評価を実施するための完全なアクセス権限を持つロール。(サブ組織や新しい評価の作成、ユーザのロールの編集はできない)。
- Basic User:組織の評価へのアクセスが一部に制限されているロール。自身に割り当てられたタスクのみ表示/「完了」(後述)することが可能。(サブ組織や新しい評価の作成、ユーザのロールの編集はできない)。
後述の評価を担当するユーザなど、必要なユーザを適宜組織に追加していきますが、追加する際は、そのユーザに必要な権限にあわせて適切なロールを選択する必要があります。
組織の作成が完了すると評価を作成できます。評価の作成は、組織情報画面(Organization Info)の「Assessments」セクションにある「Start New Assessment」ボタンから行います(エクスポートされた別の評価からデータをインポートする方法もありますが、本記事では扱いません)。作成時には期限、評価の名前、評価のテンプレート(「CIS Controls v7.1 with Simple Scoring」と「CIS Controls v8.0 with Simple Scoring」の2種類から選択可能)、実装グループを選択します。
評価を作成後、評価に関する情報は評価ごとのダッシュボードで確認できるようになります(Full User以上のロールが割り当てられている場合)。
ダッシュボードの詳細は後述しますが、図6中の「CIS C01」~「CIS C18」ボタンは1~18のコントロールに対応し、クリックすると各コントロールのコントロールビューに遷移します。コントロールビューでは当該コントロールの説明やセーフガードなどを確認できます。
評価作成後は実際に評価を実施していきます。基本的な流れは、①まず各セーフガードに適切な担当者(ユーザ)を割り当てる、②割り当てられた担当者がそのセーフガードについて、組織やシステムでどの程度実装できているかを評価し、結果を入力する、③②での評価結果をレビュアー(①の割り当てを実施したユーザ)が検証する、となります。それぞれ詳しくご紹介します。
- ①
-
ユーザの割り当て:
各セーフガードに適切なユーザを割り当てます(Full User以上のロールが必要)。割り当てはセーフガード毎に割り当てることも、一括で割り当てることもできます。セーフガード毎の場合は、各セーフガードのセーフガードビュー(セーフガードの説明や評価のための機能などが設置されたビュー(下記)。コントロールビューなどから確認可能)の「Assign User」ボタンから実施し、ユーザと期限を選択した上で割り当てを行います。
また、一括で割り当てを行いたい場合は、「Assessment Summary」タブ(図6上部のメニュー(評価ナビゲーションメニュー)でダッシュボードから切り替え可能)で行えます。
割り当てが行われると、割り当てられたユーザの「Assigned Tasks」リスト(評価ナビゲーションメニューから確認可能)に割り当てられたセーフガード(タスク)が追加されます。 -
- ②
-
割り当てられた担当者による評価
セーフガードを割り当てられた担当者(ユーザ)は自身の「Assigned Tasks」リストからセーフガードを確認し、各セーフガードの評価を行っていきます。リストからセーフガードを選択すると、セーフガードビューに遷移するので、そこで評価を行います(図10はBasic Userロールが付与されたユーザで実施する場合のイメージ。a、b、cと赤色の囲いは筆者が付けたもの)。
図10のaの領域にはそのセーフガードのタイトルや説明、実装グループが記載されています。「Applicable?」トグルはそのセーフガードを今回の評価の対象とするかを切り替えられるものです。図10のbの領域にはスコアリングやその他評価に関係するボタンなどが配置されています。図10のcの領域にはこのセーフガードの現在のスコア値(後述)やこのセーフガードと他のフレームワークとのマッピングに関する情報などが記載されています。
具体的な評価方法ですが、CIS CSAT Proでは各セーフガードに基本的に1~5のスコア(下記)を付けます。
スコア:- 1 (0-20%)
- 2 (21-40%)
- 3 (41-60%)
- 4 (61-80%)
- 5(81-100%)
- Not Applicable
- Not Available
スコア1~5の横の範囲はそのセーフガードが実装されている範囲を表し、例えばそのセーフガードを組織全体の75%で実装できている場合は4を選択します。ただし、独自の評価尺度を持っている場合はこれに縛られる必要はなく、その独自の尺度で1~5のスコアリングを付けても良いようです。決定したスコアは、セーフガードビューの「Safeguard Score」(図10のbの領域)へ入力します(選択式)。またユーザはエビデンスやコメントを付けることができます(図10のbの「Upload Evidence」ボタン、「Add Comment」ボタン)。アップロード可能なエビデンスファイルは最大15MBで、zip形式で圧縮されます。また、投稿したコメントはDiscussionセクションに表示されます(図11を参照)。
担当者の付けた1~5のスコアは(スコア-1)×25の計算式でパーセント表示に変換され、セーフガードビュー右側(図10のcの領域)の「Score」の値として用いられます(「Not Applicable」と「Not Available」はスコアの観点からは「1 (0-20%)」と同様に扱われます)。
当該セーフガードの評価が完了した場合は「Complete」ボタン(図10のbの領域)を押し、担当者による評価を「完了」させます(以降、この意味で完了という言葉を使う場合は「」を付けます)。「完了」すると、そのユーザの「Assigned Tasks」リストからそのセーフガードが消え、当該セーフガードをそのユーザに割り当てたユーザの「Pending for Validation Tasks」リスト(検証待ちリスト。評価ナビゲーションメニューから確認可能)にそのセーフガードが追加されます。 -
- ③レビュアー(割り当てを実施したユーザ)による評価の検証
②の評価が「完了」すると検証が行えるようになります。検証を行うユーザは、自身の「Pending for Validation Tasks」リストから検証待ちのセーフガードを選択し、検証を行っていきます。セーフガードビューで②の担当者が付けたスコア、エビデンス、コメント等を確認できるので(図12)、それらを基に判断を行います。問題がなければ「Validate」ボタンで検証作業を完了させ、問題がある場合は適宜「Send Back」ボタンで差し戻しを行います。(検証を行うユーザも検証が完了する前であれば、エビデンスのアップロードやコメントの投稿が行えます)。検証が完了すると検証を行ったユーザの「Pending for Validation Tasks」リストから当該セーフガードが削除されます。
以上が各セーフガードの評価の一連の流れになります。
全てのセーフガードの評価が完了したと判断した場合は、その評価をcloseします(Adminロールが必要)。closeした評価は引き続き表示は可能ですが、編集ができなくなります(ただし、Adminロールを持つユーザであればcloseした評価を再openできます)。
進捗や結果の確認
最後にダッシュボードについてみていきます。ダッシュボードでは評価の概要や進捗、スコアの平均値などを確認できます。各コントロールの実装状況は基本的に各コントロールの適用対象かつ検証まで完了したセーフガードのスコア(セーフガードビューの「Score」)の平均値で表されます(以降、断りがない限り、これを「コントロールのスコア」と呼称します)。
図を基にダッシュボードの情報をいくつかご説明すると、図13の「ASSESSMENT AVERAGE」では評価全体の平均値が(コントロールのスコアの平均値。少なくとも一つのセーフガードが今回の評価の対象となっているコントロールの平均)、「ASSESSMENT COMPLETED」では評価が「完了」したセーフガードの割合が、「ASSESSMENT VALIDATED」では検証まで完了したセーフガードの割合が確認できます。(「Industry Average Service」を利用している場合は、「INDUSTRY AVERAGE」で組織作成時に選択した業界の平均値も表示可能ですが、本記事では扱いません)。また「CIS C01」から「CIS C18」の各ボタンの色は当該コントロールのスコアにあわせたものになっており、視覚的に各コントロールの状況を確認することが可能です。各ボタンをクリックし、コントロールビューに遷移すれば、コントロール毎に平均値や進捗状況などを確認できます。
各コントロールのスコアは棒グラフでも表示されます(図14。「Industry Average Service」を利用している場合は、組織作成時に選択した業界の平均値も表示可能)。この他、評価全体の平均値の月ごとの推移(折れ線グラフ)や実装グループごとの平均値の棒グラフも用意されています。またこれらの情報をpptx形式で出力する機能や、セーフガードレベルの評価状況等の情報をCSV形式で出力する機能もあります。
ダッシュボード以外にも前述の「Assessment Summary」タブではセーフガードの一覧を表示でき、一括設定以外に、各セーフガードのアサイン状況や「完了」、検証状況などの確認、セーフガードの検索等が行えます(Full User以上のロールが必要)。
また評価ナビゲーションメニューで「Calendar」タブに切り替えれば、期限が割り当てられているタスクの確認を行えます(Full User以上のロールが必要)。各タスクにカーソルを合わせることで詳細を確認できる他、進捗については先頭のチェックマークでも確認できます(チェックマーク二つ:検証まで完了、チェックマーク一つ:「完了」しているが検証されていない、チェックマーク無し:「完了」もしていない)。
まとめ
今回はCIS CSAT Proをご紹介しました。インストール作業は簡単で、また使いやすいツールと感じました。評価の部分では直観的で分かりやすいスコアリング方式が採用されている他、エビデンスやコメントを付けることができ、その評価をするに至った根拠の提示や議論がしやすいと思いました。このようなチェックをチェックシートなどで行った場合、担当者とレビュアー間での意思疎通やコミュニケーションが課題になることも多いと思いますが、CIS CSAT Proではこれら機能により、こうした課題も解決しやすいと感じました。この他、ダッシュボードで評価結果を色やグラフで確認でき(チェックシートでも実現は可能ですが、それなりに手間がかかります)、現状のセキュリティ対策状況の把握や今後の課題の分析がしやすいと感じました。また「Calendar」タブ等で評価の進捗管理がしやすい点もメリットとして挙げられると思います。
今回ご紹介したのは有償版のCIS CSAT Proですが、前述の通り無償版もございますので、自組織・システムのCIS Controls®の実装状況を評価・確認されたい方は使ってみてはいかがでしょうか。本記事がその一助となれば幸いです。
参考文献:
- [1]CIS Controls Self Assessment Tool (CIS CSAT)
https://www.cisecurity.org/controls/cis-controls-self-assessment-tool-cis-csat - [2]CIS Critical Security Controls
https://www.cisecurity.org/controls - [3]CIS CSAT Log-in to your account
https://csat.cisecurity.org/accounts/login/ - [4]CIS SecureSuite® Membership
https://www.cisecurity.org/cis-securesuite - [5]
- [6]CIS WorkBench
https://workbench.cisecurity.org/ - [7]CIS Controls Self Assessment Tool Document Library
https://csat-pro.docs.cisecurity.org/en/stable/
執筆者プロフィール
U松(ゆーまつ)※ハンドルネーム
セキュリティ技術センター 実装技術レギュレーショングループ
NECグループのセキュア開発・運用を推進。主にOS・ミドルウェアの要塞化ツールの開発、脆弱性診断ツールの評価、セキュリティ関連ドキュメントの作成を担当。
「Hardening 2022 DECADE」グランプリ。
情報処理安全確保支援士(RISS)、CISSP Associate 保持。
執筆者の他の記事を読む
アクセスランキング