非人間のアイデンティティガバナンスの理解に関する見解

他のアイデンティティによって参照されることなしにアイデンティティが存在できるかどうか。それをどのように知ることができますか?
それはセキュリティ技術の記事には少し哲学的に思えるかもしれませんが、それは非人間のアイデンティティに取り組む際に心に留めておくべき重要なポイントです。実際のセキュリティに関するより良い質問は、「アイデンティティが対話できない場合、存在すべきか」ということです。私たちはその最初の質問に答えることができないかもしれませんが、現実の性質を証明することはコンピュータサイエンスの範囲外です。しかし、多くの人々が、機械アイデンティティが存在するかどうか、なぜ存在するか、そして存在すべきかどうかという問いに答えるためにNHIガバナンスツールを構築するために精力的に取り組んできました。

秘密の拡散を排除する未来は、秘密に頼る非人間のアイデンティティのライフサイクルと相互依存を把握することを意味します。でもなぜ今なのでしょうか?NHIsとその存在に関するいくつかの前提を再検討してみましょう。

非人間のアイデンティティとは何ですか?

進む前に、この会話の文脈でNHIを定義しましょう。

In the simplest terms, a non-human identity, also commonly referred to as a machine identity or a workload identity, is any entity that is not human and can perform an action within your system, most commonly interacting exclusively with other non-humans.

これは、データソースとやり取りし、処理されたデータを報告システムに送信する必要があるKubernetesポッドかもしれません。これは、中央サーバーにデータを供給するIoT(Internet of Things)センサーかもしれません。これは、Slackベースのチャットボットかもしれません。エンティティが作成後、作業を行うために直接人間の入力が必要ない場合、そのアイデンティティを「非人間」と考えるべきです。

これらの例に共通していることは、すべて別のシステムとやり取りするという点です。これらを世界中と通信させたい場合、他の非人間のエンティティを指し示し、それらがどのようにやり取りすべきかをプログラムで記述するだけで簡単です。ただし、おそらくこれらのシステムが安全に通信することを望んでいるはずで、特定の状況下で特定のエンティティにのみアクセスを許可する必要があります。これが、アクセス管理のためのシークレットの進化を促してきました。シンプルなユーザー名とパスワードのペアからAPIキー、証明書へと。

正直に言うと、これはNHIの広義の定義です。ただし、機械エンティティに関心を持つ際には、これらがどのように秘密を通じて関連付けられるかを考えることで関心を絞り込むことができます。アクセスと通信を可能にします。

すべてのNHIは他のシステムに接続する

入力を受け取らず、出力を生成せず、アドレス可能なインタフェースを持たないスタンドアロンアプリケーションを構築できますか?そのようなアプリケーションは、思考実験の外に存在するのでしょうか?考えるのは楽しいですが、現実は、私たちが関心を持つすべてのNHIは、他のエンティティと通信するために存在しているということです。

NHIは本質的に他のシステムやサービスとの接続を必要とし、その目的を達成します。この相互接続性により、すべてのNHIは相互依存のウェブのノードとなります。NHIのガバナンスの観点からは、これらの接続の正確で動的なインベントリを維持し、関連するリスクを管理する必要があります。たとえば、1つのNHIが侵害された場合、それが何に接続しているのか、攻撃者が後でどのようにアクセスして横断して移動できるかを考える必要があります。

適切なNHIガバナンスには、これらの関係をマッピングおよびモニタリングするためのツールが含まれている必要があります。手動で行う方法はいくつかありますが、実際に求めているのは、何が何に接続されているのか、何に使用されているのか、誰によって使用されているのかを自動的に知る方法です。システムを保護するという観点から考えると、すべてのNHIが必ず秘密を持っているという重要な事実を活用して、保護されたアプリケーション内のすべてのNHIに関するマップを作成できます。


すべてのセキュアNHIには秘密が必要です

任意の2つのNHI間で信頼される通信を確立するためには、APIキー、トークン、または証明書などの一意の秘密が存在する必要があります。この秘密を使用してNHIの正体を証明し、エコシステム内でマッピングすることができます。問題は、これらの秘密をどこで探すかという点です。

現代の企業では、特に大規模な企業では、秘密が存在する場所は基本的に2つしかありません。最初の選択肢は、ベストプラクティスで最も安全な選択肢であり、CyberArkのConjur、HashiCorpのVault、またはAWS Secrets Managerなどのシークレット管理システムです。もう1つの選択肢は、はるかに安全でないが、残念ながら非常に一般的なものです:秘密が保管庫の外、コード内、または平文の構成内にある場合です。

エンタープライズの秘密管理プラットフォーム、一般にボールトとして知られるものは、NHI(ネットワーク機械アイデンティティ)が使用する秘密を保存し保護するために重要です。ボールトは、すべての秘密に対する真実の単一のソースを提供し、それらが静止時に暗号化され、厳格にアクセス制御され、無許可のアクセス試行が監視されることを保証します。これは、単一のエンタープライズ秘密管理プラットフォームに標準化されていることを前提としています。実際、多くの組織では同時に多くのボールトが使用されており、すべてのボールト間の同期が追加の課題となります。

チームは、これらの秘密の存在に基づいてすべての既存の機械アイデンティティをマッピングできます。複数の秘密管理ソリューションを持つエンタープライズでは、どのボールトに秘密が含まれているかを把握し、いくつかのボールトに同じキーを冗長に保存するオーバーヘッドを削減する必要があります。

すべてのNHI秘密には起源のストーリーがあります

機械は自分自身に権限を付与したりアクセスしたりすることはできません。すべての機械アイデンティティは、人間のアイデンティティによって作成されたか、または人間のアイデンティティを表しています。NHIのガバナンスには、すべての秘密がその起源に追跡可能で、安全に配布され、正当なアイデンティティにリンクされていることを保証するために、秘密の作成追跡が含まれなければなりません。この側面は、適切に秘密管理プラットフォームを使用することで考慮される可能性がありますが、私たちのデータは、一部の秘密が年々漏洩していることを示し続けています。秘密が一部の割合で年々漏洩しているのは、これらのボールトソリューションを一貫して使用していないからです。

私たちは、チームがインシデントの対策を行うのを支援する経験から知っています。秘密の作成者はほとんど常に、クレデンシャルをエコシステムに最初に導入した人物であることを。また、コードの履歴や他のシステムのタイムスタンプ情報から、これが最初に見られた時期を知ることができ、それが作成されるか、少なくとも意義ある形で存在する可能性が最も高い時期であることがわかります。

これは、他のどこにも適切に記録されたり文書化されていない可能性のある重要な詳細です。NHIを活用できるように秘密を作成した人物を理解すると、NHIライフサイクルの始まりを本当に理解できるようになります。

すべてのNHI秘密は、一定の権限セットを付与する必要があります

作成される際、すべてのNHI秘密には特定の権限セットが付与される必要があります。スコープが、アイデンティティがどのようなアクションを実行し、どのシステムで実行できるかを決定します。これにより、権限のスコープ設定と施行がガバナンスの重要な構成要素となります。

基本的に、秘密のスコープを理解することが企業のセキュリティにとって重要である理由は2つあります。1つ目は、設定ミスや特権を与えすぎた秘密が、機密データや重要システムへのアクセス権を誤って付与してしまう可能性があるため、攻撃面が大幅に増加することです。顧客のPIIにアクセスできるシステムに誤って書き込み権限を与えてしまった場合を想像してみてください。それは、脅威行為者が見つけて悪用するのを待つ時限爆弾です。

また、秘密情報が漏洩したり危険にさらされた場合、チームはその権限がどのように構成されているかを理解するまでそれを置き換えることができません。たとえば、ミッションクリティカルなマイクロサービスの秘密情報が誤ってパブリックなGitHubリポジトリにプッシュされたとします。その場合、組織外の誰かによって発見され、使用されるまでの時間の問題です。最近のプラクティショナーの声レポートでは、IT意思決定者が、これらの重要な秘密情報を交代させるのに、平均27日かかることを認めています。チームは、日数ではなく、秒または分で対応できる必要があります。

検出された秘密情報に関する追加のコンテキストを提供するツールが必要です。漏洩が発生した際に露出している資産や脅威行為者によって与えられる潜在的な被害を迅速に理解することは、インシデントへの対応の際に非常に役立ちます。ダッシュボードビューまたはAPIコールからそれを正確に置き換える方法を知っていることは、侵害と、イライラした攻撃者が持っている鍵が無効であることを発見する違いになる可能性があります。

すべてのNHI秘密情報は交代する必要があります。

機械のアイデンティティには、その寿命の中で多くの秘密を持つことができ、そしておそらく持つべきです。資格情報が数ヶ月や数年間、あるいは最悪の場合、永遠に残されていると、NHIの秘密が露出したり、漏洩される可能性がますます高くなります。手動のローテーションはエラーを起こしやすく、運用上の負担が大きくなります、特に何千ものNHIが存在する環境では。秘密のローテーションプロセスを自動化することは、NHIのガバナンスの基本であり、秘密が期限切れになる前にまたは漏洩される前に更新されることを確実にします。

あなたの保管庫にある秘密のいずれに対しても、ローテーションは単純なスクリプト作成の問題であるべきです。ほとんどの秘密管理プラットフォームはスクリプトその他のメカニズムを提供して、古い秘密を安全に置き換えたり取り消したりする繊細なプロセスを処理します。

しかし、これらの保管庫の外にあるNHIの秘密や、複数の保管庫にまたがる同じ秘密はどうでしょうか?良い秘密スキャンプラットフォームは、これらの保管庫とシームレスに統合される必要があります。それによって、チームはこれらの秘密をより簡単に見つけて安全に保管し、自動化されたローテーションの準備をすることができます。GitGuardianのCyberArk’s Conjurとの参照実装は、ストレージとローテーションプロセス全体を完全に自動化する方法について詳しく説明しています。

すべてのNHIsを特定し、それらがいつ作成されたかを知ることによって、それらが回転する必要がある時期も予測することができます。どの秘密がどれほど長く生存すべきかは各チームが判断しますが、作成後に回転されたことがない秘密は交換が必要です。1年以上前に作成された秘密、またはミッションクリティカルなシステムの場合、数日でもできるだけ早く回転させる必要があります。

すべてのNHIには寿命がやってくる

NHIは、その人間の対応物と同様に、有限の寿命を持っています。サービスが廃止される、置換される、または不要になるときに廃止されることがあります。未使用の秘密や古い接続の持続を防ぐためにNHIの無効化とクリーンアップを取り組まないと、セキュリティの死角が生まれます。しかし、その秘密が有効である場合、NHIの道の終わりにいるかどうかをどのように知るのでしょうか?

1つの答えは、NHIが他のアクティブなシステムに接続しなくなったときにはもはや存在していないはずであるということです。これにより、攻撃者が使用されていないNHIの秘密や古い接続を悪用して環境に侵入することができなくなります。攻撃者は秘密が適切に使用されるべきかどうかを気にしません。彼らができることについてだけを考えます。

NHIの秘密が許可するすべての関係をマッピングすることで、システムが他のアイデンティティに接続されていなくなったときを特定できます。アイデンティティが通信できる方法がもうない場合、それとその秘密はもはや存在すべきではありません。これは、秘密をシークレットマネージャーに保存する必要がなくなることを意味し、保存および管理するものが1つ減ることを意味します。

NHIs周りの世界を理解することはセキュリティにとって重要です。

2022年に、CyberArkの調査によると、1つの人間のアイデンティティに対して、少なくとも45個の非人間のアイデンティティを管理する必要があることが示されました。現在、その比率はおそらく1対100に近く、さらに増加しています。NHIガバナンスとライフサイクル管理に取り組むのに最適な時期は数年前でした。次に最適な時期は今です。

非人間アイデンティティセキュリティにはフルサイクルアプローチが必要であり、NHIの秘密がどこにあるかだけでなく、同様に重要なのは他のNHIがどのように関連しているかを明らかにすることです。すべての産業でNHIガバナンスを大規模に実施するのは遅れています。秘密を見つけて適切に保存することは物語の始まりに過ぎません。NHIの秘密の範囲、年齢、実装者、および回転すべき時期などの他の文脈情報をよりよく文書化し理解する必要があります。

機械アイデンティティが人間を上回っていても、この問題を解決するために一人で作業する理由はありません。みんなで協力して取り組むべきです。

Source:
https://dzone.com/articles/understanding-non-human-identities-governance