シークレットは、パスワード、トークン、キーなどの少量の秘密データを含むオブジェクトです。多くの場合、機密情報または外部サービスへのアクセスを制御するために、ユーザーまたはサービスを認証するために使用されます。シークレット管理は、ワークロード間でのシークレットの配布を制御および適用するのに役立つ不可欠なツールです。このセクションでは、Kubernetes 環境に展開されている静的に定義されたシークレットを検出して防止する方法について説明します。

Carbon Black Cloud シークレット管理は、ワークロードに挿入された静的シークレットを検出して防止するのに役立ちます。ポリシー ルールを使用して、シークレットを検出および防止できます。

注: シークレット検出はデフォルトでは無効になっています。クラスタを作成または編集する際に、この機能を有効にすることができます。 クラスタの追加と Kubernetes センサーのインストールを参照してください。

シークレットに関するデータは、Carbon Black Cloud コンソールの次の画面で入手できます。

ロール

次のロールは、Carbon Black Cloud シークレット管理を使用できます。

[DevOps と DevSecOps]

  • イメージ ビルド フェーズでコンテナ内の静的に定義されたシークレットを検出して防止します。
  • イメージ情報を検査して、潜在的なセキュリティ違反またはコンプライアンス違反の検出に役立ちます。
  • ワークロード情報を検査して、潜在的なセキュリティ違反またはコンプライアンス違反の検出に役立ちます。
  • ポリシーを使用して静的シークレットを持つイメージを使用するワークロードを拒否し、セキュリティとコンプライアンスを強化します。
  • 静的シークレット ポリシー違反を確認して軽減します。
  • 既存の調査にシークレットを含め、優先順位を付け、リスク プロセスを軽減します。
  • 静的に定義されたシークレットを含むファイルを検出します。
  • 展開されたすべてのイメージのシークレットをスキャンします。

[DevOps と開発者]

  • イメージ情報を検査して、潜在的なセキュリティ違反またはコンプライアンス違反の検出に役立ちます。
  • 静的シークレット ポリシー違反を確認して軽減します。

シークレット検出

シークレットは次の方法で検出されます。

シークレットの検出方法のリスト

データ タイプ

次の表に、キャプチャされたシークレット データ タイプの例を示します。

表 1. キャプチャされたシークレット データの例
ソース カテゴリ シークレット タイプ 秘密鍵 シークレット値
/.aws ファイル キーワード ディテクタ aws_access_key_id JKSN...3E3Q
RUN /bin/sh -c eco hi --password "pddj...f837" # buildkit コマンド キーワード ディテクタ パスワード pdhj...f837
azure ラベル Azure ストレージ アカウントのアクセス キー azure abcd...uv==
GITHUB_KEY ENVIRONMENT_VARIABLE Github 認証 GITHUB_KEY ghu_...UKpr

シークレット タイプ

次の表に、Carbon Black Cloud が検出するシークレットのタイプを示します。

Azure ストレージ アカウントのアクセス キー

JFrog Artifactory 認証情報

AWS クライアント ID

AWS シークレット キー

Amazon Marketplace Web Service (MWS) キー

HTTP Bearer 認証

パスワードを含む URL

Github 認証

JSON Web トークン

Mailchimp API キー

npm 認証トークン

プライベート キー

Sendgrid API キー

Slack トークン

Square 認証

Stripe API キー

Twilio 認証