AWS - CloudHSM Enum

ゼロからヒーローまでのAWSハッキングを学ぶ htARTE(HackTricks AWS Red Team Expert)

HackTricksをサポートする他の方法:

HSM - ハードウェアセキュリティモジュール

Cloud HSMは、安全な暗号鍵の保存のためのFIPS 140レベル2の検証済みハードウェアデバイスです(CloudHSMはハードウェアアプライアンスであり、仮想化されたサービスではありません)。これは、5.3.13がプリロードされたSafeNetLuna 7000アプライアンスです。2つのファームウェアバージョンがあり、選択するものは実際のニーズに基づいています。1つはFIPS 140-2の準拠用であり、新しいバージョンが使用できます。

CloudHSMの異例の特徴は、それが物理デバイスであることです。したがって、他の顧客と共有されず、一般的にはマルチテナントと呼ばれます。これは、専用のシングルテナントアプライアンスであり、あなたのワークロードにのみ利用可能です。

通常、デバイスは15分以内に利用可能になります(容量がある場合)。ただし、一部のゾーンでは利用できない場合があります。

これはあなた専用の物理デバイスであるため、鍵はデバイスに保存されます。鍵は別のデバイスにレプリケートしたり、オフラインストレージにバックアップしたり、スタンバイアプライアンスにエクスポートする必要があります。このデバイスは、S3やKMSのようなAWSの他のサービスによってバックアップされていません。

CloudHSMでは、サービスのスケーリングを自分で行う必要があります。ソリューションに実装する暗号化アルゴリズムに基づいて、暗号化ニーズを処理するのに十分なCloudHSMデバイスをプロビジョニングする必要があります。 Key Management ServiceのスケーリングはAWSによって実行され、需要に応じて自動的にスケーリングされるため、使用量が増えるにつれて必要なCloudHSMアプライアンスの数も増える可能性があります。ソリューションをスケーリングする際にはこれを考慮し、ソリューションが自動スケーリングを備えている場合は、十分なCloudHSMアプライアンスがソリューションをサポートするために必要な最大スケールが考慮されていることを確認してください。

スケーリングと同様に、CloudHSMのパフォーマンスはあなた次第です。パフォーマンスは、使用される暗号化アルゴリズムとデータを暗号化するために鍵をアクセスまたは取得する頻度に基づいて異なります。Key Management ServiceのパフォーマンスはAmazonによって処理され、需要に応じて自動的にスケーリングされます。CloudHSMのパフォーマンスは、より多くのアプライアンスを追加することによって達成され、必要に応じてデバイスを追加するか、より高速なアルゴリズムに暗号化方法を変更することで、パフォーマンスを向上させることができます。

ソリューションがマルチリージョンである場合、第2リージョンにいくつかのCloudHSMアプライアンスを追加し、プライベートVPN接続などを使用してクロスリージョンの接続を確保する必要があります。マルチリージョンのソリューションを持つ場合は、鍵をレプリケートし、運用するリージョンに追加のCloudHSMデバイスを設定する必要があります。複数のリージョンにわたって6台または8台のデバイスが配置され、暗号化キーの完全な冗長性が有効になるシナリオにすぐに入る可能性があることに注意してください。

CloudHSMは、セキュアな鍵の保存のためのエンタープライズクラスのサービスであり、企業の信頼のルートとして使用できます。PKIでプライベートキーを保存し、X509実装で証明書機関キーを保存できます。AESなどの対称アルゴリズムで使用される対称鍵に加えて、KMSは対称鍵のみを保存し、物理的に保護します(証明書機関として機能することはできません)。したがって、PKIおよびCAキーを保存する必要がある場合、CloudHSM1台または2台または3台が解決策となる可能性があります。

CloudHSMはKey Management Serviceよりもかなり高価です。CloudHSMはハードウェアアプライアンスなので、CloudHSMデバイスをプロビジョニングするための固定コストと、アプライアンスを実行するための時間ごとのコストがかかります。特定の要件を満たすために必要なCloudHSMアプライアンスの数だけコストがかかります。 さらに、SafeNet ProtectVソフトウェアスイートなどのサードパーティソフトウェアの購入、統合時間、および労力についても考慮する必要があります。Key Management Serviceは使用量に基づいており、持っている鍵の数と入出力操作に依存します。多くのAWSサービスとシームレスに統合するため、統合コストはかなり低く抑えられるはずです。コストは、暗号化ソリューションにおいては二次的な要因として考慮すべきです。暗号化は通常、セキュリティとコンプライアンスのために使用されます。

CloudHSMでは、鍵にアクセスできるのはあなただけであり、詳細には触れませんが、CloudHSMでは独自の鍵を管理します。KMSでは、あなたとAmazonが共同で鍵を管理します。AWSには、両方のソリューションで鍵にアクセスできないようにするための多くのポリシーセーフガードがあります。主な違いは、鍵の所有権と管理に関連するコンプライアンスであり、CloudHSMでは、あなた専用のハードウェアアプライアンスを管理および維持し、独占的にアクセスできます。

CloudHSMの提案

  1. CloudHSMをHAセットアップで常に展開し、別々の可用性ゾーンに少なくとも2つのアプライアンスを配置し、可能であれば、AWSの別のリージョンまたはオンプレミスに3つ目を展開します。

  2. CloudHSM初期化する際には注意してください。この操作は鍵を破壊するため、他に鍵のコピーがあるか、これらの鍵がデータの復号化に必要であることを絶対に確認してください。

  3. CloudHSMは特定のファームウェアおよびソフトウェアのバージョンのみをサポートしています。アップデートを実行する前に、ファームウェアまたはソフトウェアがAWSでサポートされていることを確認してください。アップグレードガイドが不明確な場合は、いつでもAWSサポートに連絡して確認できます。

  4. **ネットワーク構成は決して変更してはいけません。**覚えておいてください、これはAWSのデータセンターにあり、AWSが基本ハードウェアを監視しています。つまり、ハードウェアが故障した場合、AWSが交換しますが、それが故障していることを知っている場合に限ります。

  5. **SysLogフォワーダを削除または変更しないでください。**常にログを自分の収集ツールに向けるために、SysLogフォワーダを追加できます。

  6. SNMP構成には、ネットワークとSysLogフォルダと同じ基本的な制限があります。これを変更または削除しないでください。追加のSNMP構成は問題ありませんが、すでにアプライアンスに存在するものを変更しないようにしてください。

  7. AWSからのもう1つの興味深いベストプラクティスは、NTP構成を変更しないことです。変更した場合の具体的な影響は明確ではありませんので、ソリューションの残りの部分に同じNTP構成を使用していない場合は、2つの時間ソースを持つ可能性があります。これを認識し、CloudHSMが既存のNTPソースとともに維持される必要があることを知っておいてください。

CloudHSMの初期起動料金は、あなた専用のハードウェアアプライアンスを割り当てるための$5,000であり、現在のCloudHSMの運用時間あたりの料金は$1.88であり、約$1,373/月です。

CloudHSMを使用する最も一般的な理由は、規制上の理由で満たす必要があるコンプライアンス基準です。KMSは非対称鍵のデータサポートを提供しません。CloudHSMは非対称鍵を安全に保存できます

公開鍵はプロビジョニング中にHSMアプライアンスにインストールされるため、SSH経由でCloudHSMインスタンスにアクセスできます。

ハードウェアセキュリティモジュールとは

ハードウェアセキュリティモジュール(HSM)は、暗号鍵を生成、保存、管理し、機密データを保護するために使用される専用の暗号デバイスです。暗号機能をシステムの他の部分から物理的および電子的に分離することで、高いセキュリティレベルを提供するよう設計されています。

HSMの動作方法は、特定のモデルや製造元によって異なりますが、一般的には以下の手順が発生します:

  1. 鍵生成:HSMは安全な乱数生成器を使用してランダムな暗号鍵を生成します。

  2. 鍵保存:鍵はHSM内で安全に保存され、認証されたユーザーまたはプロセスのみがアクセスできます

  3. 鍵管理:HSMは、鍵のローテーション、バックアップ、取り消しなど、さまざまな鍵管理機能を提供します。

  4. 暗号操作:HSMは、暗号化、復号化、デジタル署名、鍵交換など、さまざまな暗号操作を実行します。これらの操作はHSMの安全な環境内で実行され、不正アクセスや改ざんから保護されます。

  5. 監査ログ:HSMはすべての暗号操作とアクセス試行を記録し、コンプライアンスおよびセキュリティ監査の目的に使用できます。

HSMは、安全なオンライン取引、デジタル証明書、安全な通信、データ暗号化など、さまざまなアプリケーションで使用できます。金融、医療、政府など、高いセキュリティレベルが必要な産業でよく使用されます。

全体として、HSMによって提供される高いセキュリティレベルは、それらから生の鍵を抽出することが非常に困難であり、そのような試みはしばしばセキュリティ違反と見なされます。ただし、特定の目的のために認証された人員によって生の鍵が抽出される可能性がある特定のシナリオが存在するかもしれません。

TODO
htARTE(HackTricks AWS Red Team Expert) でAWSハッキングをゼロからヒーローまで学ぶ

HackTricksをサポートする他の方法:

最終更新