web-dev-qa-db-ja.com

暗号化/復号化操作を実行する前に、HSMSは他のサーバーに要求を送信できますか?

セキュリティアーキテクチャの様々な議論において、私は、所与の時間内に実行できる暗号化/復号化の数をレート制限してHSMを構成できることを読み出した。私が正しく理解した場合、料金制限の目的は、HSMを利用することを許可されているサーバーを侵害するために管理するハッカーから来る損害を制限することです。たとえば、APIサーバーが1つの顧客のデータを記憶している1000個の暗号化ファイルを持っていた場合、APIサーバーを侵害したハッカーは、HSMにすべてのデータを盗んでそれらの各1000個のファイルを復号化するように依頼する必要があります。レート制限は、1時間あたりの10のファイルの料金で、ハッカーがすべての顧客のすべてのデータを取得するために非常に時間がかかるでしょう。理想的には、ハッカーは検出され、データが多すぎる前に起動されます。

これは、復号を停止する方法を実行する可能性について、HSMが内部システムクロックにのみ頼るのではなく、他の外部サービスへの要求を要求することから、他の外部サービスへの要求を実行する方法を実行する可能性をもたらしました。前の例に戻ると、HSMがAPIサーバーから要求を受信した場合、HSMは、特定の顧客が最近認証されたかどうかを尋ねるためにAPIの認証サーバーに要求を送信できますか?過去10分以内にユーザーが正常にログインしていない場合、HSMは復号化操作を実行することを拒否することができ、データは安全です。

これは、本質的に、ハッカーがAPIサーバーと認証サーバーの両方を損なう必要があることを意味し、すべてのユーザーのすべてのデータを復号化し、すべてのユーザーのすべてのデータを盗む必要があることを意味します(APIサーバーと認証サーバーが2つの完全に独立したサーバーがあると仮定して)。 Hackerは、APIサーバーが違反している間にログインしている顧客のデータを盗むことができますが、入手することはできます[〜#〜] all [〜#〜]データの全部を待つ必要があるであろう少なくとも1回ログインするための顧客の。

要求を送信したり、応答に基づいてアクションを実行できるHSMSですか。それとも、彼らはすべて速度制限のようなより簡単なものに制限されていますか?

1
bnsmith

私が知っているように、HSMレートの制限はほとんど商業的です(いくつかのHSMさえも料金制限を提供していません)が、あなたが思うように、少量の損害を制限するために率制限を使用することができます。これらの率は毎秒です。レートが秒あたり10の操作(TPS - スループット)に制限されている場合は、1000の操作を完了するために2分以内に必要です。

HSMのほとんどには、暗号操作に対する機能が限られています。 HSMの中には、Builtの付加価値サーバー(ソフトウェア)が追加されました。しかし、大量のHSMが必要とされない限り、HSMのベンダーが自分のソフトウェアを変更する準備ができているとは思わないと思います。

APIを使用して署名している1つのプロジェクトでは、ユーザーからの2番目の要因認証としてSMS OTPを使用しました。アプリケーションサーバーは、次のOTPを必要とする前に許可されている操作数を制限できます。 1に設定されている場合、ユーザーはすべての操作の前にOTP送信APIを呼び出す必要があります。 HSMSはキーを保護するのにのみ得意です。

0
Bharat Vasant