現代の組織は、オペレーティングシステム、ワープロアプリケーション、人事・財務ツール、バックアップおよびリカバリソリューション、データベースシステムなど、多種多様なソフトウェアに依存しています。これらのソフトウェア資産は、重要なビジネス業務にとって不可欠であることが多い一方で、大きなセキュリティリスクも伴います。たとえば攻撃者は、脆弱なソフトウェアを狙って企業ネットワークへのアクセスを得ることができ、さらにデータを盗む、暗号化する、あるいはビジネス業務を妨害する可能性のある悪意のあるソフトウェア(malware)を自らインストールすることもあります。
CIS Control 2 は、これらのリスクを軽減するために設計されています。すべての組織に対して、包括的なソフトウェア資産(ソフトウェア棚卸し)を作成し、導入済みのすべてのソフトウェアを定期的に見直すこと、実行可能なソフトウェアを制御することなどを含む、健全なソフトウェア管理プログラムを策定するよう助言しています。
厳選した関連コンテンツ:
CIS Control 2:Inventory and Control of Software Assets(ソフトウェア資産の棚卸しと管理)に含まれる7つのサブコントロールの内訳は以下のとおりです。
2.1. ソフトウェアの棚卸し(インベントリ)を確立し、維持する
ネットワーク内のコンピューターにあるすべてのソフトウェアについて、詳細な記録を作成し、維持してください。各ソフトウェア資産には、できるだけ多くの情報を含めます。例:タイトル、提供元(パブリッシャー)、インストール日、対応しているシステム、業務上の目的、関連URL、デプロイ方法、バージョン、廃止(デコミッション)日など。この情報は、ドキュメントまたはデータベースに記録できます。
ソフトウェアの棚卸し(インベントリ)を常に最新の状態に保つため、少なくとも年に2回は見直して更新してください。以下のサブコントロールの一部では、どのソフトウェアを削除すべきか、またその理由についてのガイダンスが示されています。
2.2. 承認済みソフトウェアが現在もベンダーのサポート対象であることを確認する
重要なベストプラクティスの1つは、承認済みソフトウェアのインベントリに含まれるすべてのオペレーティングシステムおよびソフトウェアアプリケーションが、引き続きベンダーによってサポートされていることを確認することです。サポートされていないソフトウェアはセキュリティパッチや更新プログラムを受け取れないため、サイバー犯罪者が既知の脆弱性を狙うことが多いという点から、組織のリスクエクスポージャが高まります。
環境内で古くなった、またはサポートされていないソフトウェアを見つけた場合は、速やかに代替ソリューションの導入を検討してください。代替が利用できず、サポートされていないソフトウェアが業務に必要である場合は、それがもたらすリスクを評価し、リスクを軽減するための対策(ミティゲーション)を調査します。次に、例外事項、実施した対策、および残留リスクの受容について文書化してください。
2.3. 未承認のソフトウェアに対処する
従業員が、IT部門の承認を得ずに業務用システムへソフトウェアをインストールしてしまうことがあります。このような未承認ソフトウェアを削除すると、ビジネスに対するリスクを低減できます。未承認のソフトウェアが必要な場合は、承認済みツールのリストに追加するか、ソフトウェアインベントリに例外として文書化してください。
可能な限り頻繁に、少なくとも毎月、未承認のソフトウェアがないか確認してください。
2.4. 自動化されたソフトウェア資産棚卸しツールを活用する
ソフトウェアの棚卸しを手作業で作成・維持することは時間がかかり、ユーザーのミスも起こりやすくなります。したがって、可能な限り、インストール済みソフトウェア資産を発見し、記録するプロセスを自動化することがベストプラクティスです。
たとえば、Netwrix Change Tracker は、アプリケーション名、バージョン、日付、パッチレベルなどを含め、組織内にインストールされているすべてのソフトウェア資産を自動的に追跡できます。
2.5. 承認済みのソフトウェアを許可リストに登録する
どれほど最善を尽くしても、許可されていないソフトウェアがシステムにインストールされないことを確実にするのは難しい場合があります。そのため、許可されたアプリケーションだけが実行できるようにする統制(コントロール)を実装することも重要です。
許可リスト(allowlist)はブロックリストよりも厳格です。許可リストでは、指定されたソフトウェアのみを実行可能にしますが、ブロックリストは単に、特定の望ましくないプログラムの実行を防ぐだけです。
ルールと商用テクノロジーの組み合わせを使って、許可リスト(allowlist)を実装できます。たとえば、多くのアンチマルウェア製品や一般的なOSには、許可されていないソフトウェアの実行を防ぐ機能が含まれています。Applocker のような無料ツールも利用可能です。さらに、ツールによっては、インストール済みプログラムのパッチレベルに関する情報を収集し、最新のソフトウェアバージョンだけを使うことを確実にするのに役立つ場合もあります。
詳細な許可リスト(allowlist)には、ファイル名、パス、サイズ、署名などの属性を含めることができます。これにより、明示的にリストされていない不正なソフトウェアをスキャンする際にも役立ちます。
2.6. 許可リストに登録された認可ライブラリ
ソフトウェアのインベントリと、許可されたソフトウェアの allowlist を維持することに加えて、ユーザーがアプリケーションを含むファイルを、許可されたライブラリからのみ読み込むようにすることが重要です。さらに、誰もが不明または未検証のソースからファイルをシステムにダウンロードしないよう教育し、このポリシー違反が原因で、攻撃者がシステムやデータにアクセスできるようになるなどのセキュリティリスクを理解していることを確認してください。
2.7. 許可されたスクリプトの allowlist を作成する
ソフトウェアのインストールやその他の管理業務では、スクリプトインタプリタが必要になることがよくあります。しかし、サイバー犯罪者はこれらのスクリプトエンジンを狙って、システムやプロセスに損害を与える可能性があります。許可されたスクリプトの allowlist を作成しておくことで、未承認のユーザーや攻撃者のアクセスを制限できます。システム管理者は、誰がこれらのスクリプトを実行できるかを判断できます。
このコントロールでは、IT チームがすべてのスクリプトに対してデジタル署名を行うことが求められます。手間がかかるかもしれませんが、システムを確実に保護するために必要です。これを実装するための技術的手法には、バージョン管理やデジタル署名などがあります。
概要
包括的なソフトウェア資産管理は、組織のシステムとデータのセキュリティにとって不可欠です。CIS Control 2 は、ソフトウェア管理ソリューションを特定、監視、そして自動化するプロセスを組織が進めるためのガイダンスを提供します。この統制は、次の3つの実践に要約できます。
- すべてのソフトウェア資産を特定し、文書化したうえで、不必要で古くなった、または脆弱性のある
- 承認済みのソフトウェア allowlist を作成し、未承認ソフトウェアのインストールと使用を防ぐのに役立てましょう。
- 一貫したスキャンとアップデートにより、ソフトウェアアプリケーションを監視し管理しましょう。
ソフトウェアのインベントリを手作業で作成・維持することは、時間がかかりすぎ、またエラーが発生しやすいため、どのような現代的なネットワークでも現実的なアプローチとは言えません。 Netwrix Change Tracker は、システムにインストールされているすべてのソフトウェアを追跡し、承認済みのソフトウェア一覧からの逸脱(ドリフト)について常に把握できるように、その作業を自動化します。さらに、欠落しているパッチやバージョン更新を特定するためにも利用でき、IT システムのセキュリティをより強化するのに役立ちます。
共有する
もっと詳しく
著者について
Dirk Schrader
セキュリティ リサーチの VP
Dirk Schrader は Netwrix の Resident CISO (EMEA) であり、セキュリティ リサーチの VP です。CISSP (ISC²) および CISM (ISACA) の資格を持つ、IT セキュリティ分野で 25 年のベテランとして、サイバー脅威に取り組むための現代的なアプローチであるサイバー レジリエンスの推進に取り組んでいます。Dirk はキャリアの初期に技術およびサポートの役割からスタートし、その後、大規模な多国籍企業から小さなスタートアップまでで、営業、マーケティング、プロダクト マネジメントのポジションへと移行しながら、世界中のサイバーセキュリティ プロジェクトに携わってきました。彼はサイバー レジリエンスを実現するために、変更管理と脆弱性管理に取り組む必要性について、多数の記事を発表しています。