私の職場では、一時的なパスワードを提供するこれらのSecurIDトークンを使用しています。コードはすぐに期限切れになります。次の数値を計算するためのすべてのロジックは、物理的にデバイス内に配置する必要があるように見えるので、私は常にそのことに魅了されています。
トークンへの物理的なアクセスが与えられた場合、数値を予測することは可能ですか?どうやって?物理的なアクセスがなければ、シードの知識の有無にかかわらず、以前の数から将来の数を予測することは理論的に可能ですか?
*私はそれを解読しようとしているのではなく、数学的好奇心に興味があるだけです!
SecurIDトークン が行うことは、完全に公開された知識ではありません。 RSA(会社)は、詳細を発表することにはまったく抵抗しています。推測できるのは次のとおりです。
これらの仮定の下で、次に:
2011年3月に、RSAで一部のシステムが侵害され、攻撃者が1つまたはいくつかのマスターシードを盗んだ可能性があります(デバイスが「ファミリ」に組み込まれているため、いくつかのマスターシードが存在する可能性があります)。 RSAは、4,000万のSecurIDトークンを交換する必要があると述べています。トークンのシリアル番号(トークンの外側に印刷されている場合があります)がわかっている場合は、@ dlsが指す Cain&Abel ツールを使用できます。おそらく、そのツールはリークされたアルゴリズムとマスターシードを実装しているため、将来のトークン出力を生成できます(私は試していません)。これは、置き換えられる4,000万バッチのトークンをまだ受け入れるサーバーでのみ機能します。 RSAとその顧客がこのプロセスにどの程度進んだかはわかりません。そのため、この攻撃が機能しなくなる可能性があります。それは本当にあなたが攻撃するサーバーを管理する人々の反応性に依存します。
(これらのシステム管理者が9か月後に侵害されたデバイスを交換しなかった場合、セキュリティの問題がかなり緩んでいる可能性があり、サーバーにはリモートで悪用可能なセキュリティホールが他にもいくつかある可能性があります。)
秘密の情報があれば、それを同じように生成できます。そうでない場合、数値は数学的に関連しているため、見たものに基づいて予測を行うことは理論的に可能です。ただし、それらの関係は非常に複雑であるため、計算で実行することは不可能であると考えられています。つまり、その予測を行うために必要な計算量は、トークンの寿命よりも大幅に時間がかかります。たとえば、平均トークンが10年ごとに置き換えられた場合、その秘密情報または一連の値を計算するアルゴリズムは、すべての既知のコンピューターで並行して実行すると10億年かかるため、実際には役に立ちません。
この計算不可能性は、すべての有用な数学暗号システムの基本的な基礎です。しかし、すべての場合において、私たちが持っているものはすべて、暗号化ツールであり、それらを元に戻したり、秘密情報を解いたりすることは、計算上実行不可能であると考えられています。新たな発見により、一部のスキームは信じられていたよりも破りやすいことが明らかになるかもしれません。
RSAでSecurIDプロジェクトに取り組んでいます。以前の答えは正しいです。
シードがわかっている場合は、パスコード(表示される一時コード)を計算する機会があります。しかし、すべてのデバイスには製造時にランダムなシードが与えられ、シード値はどこにも保存されません。
認証マネージャーを所有している場合でも、トークンリストをアップロードできるのは管理者だけなので、パスコードを推測することはできません。このリストの情報は、特定のSecurIDまたはソフトトークンのパスコードを生成するために必要です。オンデマンド認証が有効な場合、ユーザーはSMSまたは電子メール)を介してパスコードを要求できますが、コードは依然としてユーザーに割り当てられているトークンに基づいています。