CAの秘密キーを保護する方法は?


24

私は自分の認証局(CA)を内部使用のみに実装しようとしています。

現在、CAプライベートが悪用されることは決してないという問題があります。そのため、現在、秘密鍵は暗号化されています。

秘密鍵のセキュリティを強化するために他に何ができますか?


Webサーバーを実行しているOSを入手できますか?おそらく、ファイルにアクセス許可を設定して、アプリとスーパーユーザー以外の誰もが読み取れないようにすることができます。
リリンド

RHELを実行しています
-JMW

回答:


25

私は、CAキーのセキュリティがビジネスの継続的な成功に不可欠である会社で働いていました。このため、キーは、暗号化するために端末に接続された物理トークンを使用して少なくとも2人が存在する必要があるカスタムプロトコルを使用して暗号化されました(これらのトークンは少なくとも5つあり、2つを組み合わせても機能します)。端末は、CAキーを使用して実際のマシンから物理的に分離されました。ユーザーが暗号化を解除したインターフェイスは、暗号化トークンを入力し、キーで「署名」するものを選択できるVT220端末でした(暗号化解除されたキーへのアクセスを許可しない)。このシステムでは、少なくとも4人がキーを侵害するために協力する必要があり、2人のトークン所有者、データセンターにアクセスできる人、

この種のセットアップの詳細に興味がある場合は、ブルースシュナイアーがコンピューターセキュリティの設計と実装に関するすばらしいサイトを持っています。

http://www.schneier.com/

彼はまた、このようなシステムの基礎と、より安全なインフラストラクチャ(ポケットプロテクターを着用していない人でも読める)の構築方法を理解するのに役立った、非常に良い本Applied Cryptographyを出版しました:

http://www.schneier.com/book-applied.html


2
また、2キー操作(またはm、m> = n、n> 1のいずれかのn)も優れた予防策です。失敗のコスト)。
MadHatterは、

1
2人の許可された人が仕事をしているときに、rootアクセスを持つ人がメモリの内容をファイルにダンプできないのはなぜですか?これは、ルートを持っている人が、マシンからメモリダンプを取得するために必要な追加リソースのみでキーを取得できることを意味します。
Slartibartfast

監査された物理的アクセス制御は、監査された論理的アクセス制御と同様にこの種のセキュリティにとって重要です。署名操作にはボックスに対する権限は必要ありません(その制御はany-n-from-m要件によって処理されます)。そのため、キー署名が行われているときにルートパスワードの所有者がそこにいるべきではありません。(S)彼女はシステムメンテナンスアクティビティに必要になりますが、これらはスクリプト作成者以外の誰かが事前に作成した正確なスクリプトに従って実行し、知識のある第三者がリアルタイムで監査する必要があります。
MadHatterは

16

大きな利点の1つは、専用CAの秘密CAキーをネットワークから完全に遮断することです。次に、このマシンで新しい証明書に署名し、場合によっては生成し、物理メディアを使用して新しい証明書をCAマシンから転送します。

もちろん、セットアップなどには、マシンの物理的な可用性に関する考慮事項、および許可されたメディアの制限も含まれます。よく旅行するUSB​​スティックは、おそらく最良の選択ではありません...

(これは、セキュリティと利便性のトレードオフに関する非常に明確な例です。)


Airgapは優れたセキュリティ予防策です。リムーバブルメディアの危険性は、署名ボックスを設定して自動実行しない、SUIDバイナリを許可する、またはその他の方法でそのようなメディアの実行可能ファイルを信頼することで軽減できます。
MadHatterは、モニカをサポートします

これは、スマートカードを使用してキーを生成、保存、使用することでさらに最適化できます。スマートカードは、改ざんに対する保護機能を備えた専用のマシンと考えてください(基本的に、チップはキーを放棄するよりも破損するため、より複雑なシステムでは処理が困難です)。プロトコルスタックが適切に監査された可能性があります。
サイモンリヒター

2番目にスマートカードの提案をしますが、リスクがあります。キーを1か所にしか配置できない場合、キーにアクセスできなくするために必要なハードウェアは1つだけです。ただし、1つ以上のスマートカードは、安全なキーの生成と保管の実践において重要な部分を形成する可能性があると思います。
-Slartibartfast

自動実行の問題について。guiファイルマネージャーの場合、リストされたファイルのスマートプレビュー/サムネイルを実行しようとしていないことを明示することをお勧めします。それ自体は危険ではありませんが、既存の脆弱性への攻撃ベクトルになり得ます。
-andol

セキュリティが非常に重要な場合は、追記型CD-Rを用意します。
ライライアン

15

私はそれらが両方とも優れていると思うので、私は他の2つの答えに賛成し、コメントしました。 両方に行くことにした場合、それが適切かもしれませんが、キーを侵害するのに最適な時期は使用されていないため、キーの初期生成には注意することを強くお勧めします適用されます)が、生成時に、一度限りであると、破壊がはるかに容易になります。

キー生成セレモニーの実施に関するこの優れたガイドでは、キー生成のセキュリティ保護に役立つ標準プロトコルの一部について概説しますが、それらは主に(a)複数の知識豊富な監査人が目撃したすべてのものを持ち、(b) (c)エグゼキュータ以外の誰かが作成した所定のプロトコルに従って行われるすべて。


うん、最初のキー生成についての良い点。
-andol

7

深刻度に応じて、FIPS 140-2(http://en.wikipedia.org/wiki/FIPS_140#Security_levels)ハードウェアを使用してCAキーとそれらのキーのバックアップを保存することを検討する必要があります。ルートCAをオフラインにして物理的に保護できるように、ルートCAと中間CAを1つずつ用意する必要があります。ルートは、新しい中間CAを更新または署名するためにのみ必要ですが、中間CAは日々の運用のためにオンラインのままです。他の人が示唆しているように、n of m制御による安全なキー生成とキー管理が重要です。

VeriSign(現在のシマンテック)CPSは、商用CAがそのキーを生成および保護する方法の優れたリファレンスです。5章と6章、特にhttp://www.verisign.com/repository/cps/をご覧ください(私は数年間VeriSignで働いていました)

また、NISTには、キー管理(http://csrc.nist.gov/publications/drafts/800-57/Draft_SP800-57-Part1-Rev3_May2011.pdf)および生成に関するいくつかの優れた出版物があり、会社にもCPSが必要です。 CAの管理に使用するポリシーとプラクティスを指定します。IETFは良いテンプレートを提供します:http : //www.ietf.org/rfc/rfc2527.txt


1

素晴らしい質問といくつかの素晴らしい答えも。

盲目的に先に充電するのではなく、この問題を考慮するだけで、他のほとんどの人よりも約90%先行していることに留意してください。

それを念頭に置いて、ここで他のアドバイスをとったので、私は単に追加します。あなたの栄光に休まないでください。証明書の発行、失効、クラッキングなどに関する一般的な問題と、鍵の生成と管理に使用する特定の製品の脆弱性と問題の両方について、セキュリティと暗号のニュースに注目してください。

最後に、物理的セキュリティ。「ハッカーの証拠」を作ることは、あなたの建物で契約清掃業者として仕事を得て、ルート証明書を含むディスクをいつか私のポケットに入れることができれば助けにはなりません。どれだけ多くの人がそれを見逃しているのか驚くでしょう。


@jmwを聞いてうれしいです-私が言ったように、あなたはすでにほとんどの人の90%または多分99%の先を行っています。物理的にデータを保護するために何もせずに物事のソフトウェア側を見るのに何週間も何トンものお金を費やす人々の数にショックを受けるでしょう。
ロブ・モイア

おかげで、あなたは絶対に正しいです。すべての管理者には新しいリスクについて常に情報を入手することが必須です。:-)物理的セキュリティについて:私たちのサーバーがあるデータセンターは、高い物理的セキュリティを持っています。したがって、bios && grubパスワードが設定されています。CAスタッフが保存されているパーティションも暗号化されます。さらに、CAキー自体が暗号化されます。また、nagiosは、物理的な盗難の場合に「サーバーダウン」アラートをトリガーします。「非物理的な」エクスプロイトの方が心配です。:-)
JMW
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.