このリンクには RSAキーに強力なパスフレーズセキュリティがある場合、攻撃者が秘密キーを持っていると数時間で壊れる可能性があるという主張
これを可能にするRSAキーのセキュリティに弱い点はありますか?強力なパスワードは数時間以内に解読できないように思われるので、秘密鍵を考えると、RSAキーが数時間で解読できるのはなぜですか?
比較のためだけに、 strong passphrase は、大文字と小文字、数字、および15文字である可能性があるため、ほぼ8 * 10 ^ 26のスペースと無理に高速なコンピューターが10 ^を試す可能性があります。 1秒あたり9回の推測と、それらのクラスターがある場合は1秒あたり10 ^ 12です。それらをすべて試すには、8 * 10 ^ 14秒、つまり2,500万年かかります。
いいえ、強力なパスフレーズを選択した場合、SSHキーは数時間で壊れることはありません。あなたが引用したウェブページを読みましたが、間違った印象を残すのは悪い書きです。そこでの文言は不作法に語られています。ウェブサイトの主張:
SSHキーパスフレーズは、キーが盗まれたときに少し時間を与える2次的なセキュリティ形式です。 RSAキーに強力なパスフレーズがある場合、攻撃者がブルートフォースで推測するのに数時間かかる可能性があります。その余分な時間は、アカウントを持っているコンピューターにログインし、.ssh/authorized_keysファイルから古いキーを削除して、新しいキーを追加するのに十分なはずです。
これはかなり混乱するような言い方をしています。彼らが言っている意味は、良いパスフレーズは少なくとも解読するのに数時間かかるということだと思います。実際、強力なパスフレーズをクラックするには、それよりもかなり時間がかかります。パスフレーズの強度に応じて、おそらく数日または数年、またはそれ以上。
言い回しが悪いため、このWebページでは、強力なパスフレーズを選択した場合でも、攻撃者は最大で数時間でSSHキーを回復できるという印象を残す可能性があります。不正解です。強力なパスフレーズを使用している場合、攻撃者がSSH秘密鍵を回復するのに長い時間がかかります。
Webページを編集する権限を持つ人は、混乱を招く表現を修正するために修正する必要があります。
少なくとも私の結果ではman ssh-keygen
:
~/.ssh/identity
ユーザーのプロトコルバージョン1 RSA認証IDが含まれます。このファイルは、ユーザーだけが読み取ることはできません。鍵を生成するときにパスフレーズを指定することが可能です。そのパスフレーズはencryptこのファイルのプライベート部分128ビットAESを使用に使用されます。
したがって、盗まれた鍵のクラック時間についての質問は、以下の小さい方の要因です。
その2番目の箇条書きには削減コードも含まれていますが、文字列を有効な128ビットキーに変換するために必要なラウンド数も含まれています。 AES自体は依然として優れた対称アルゴリズムと見なされています。したがって、適切なパスフレーズがあれば、「数時間」以上安全です。
あなたが提供するリンクは、RSA keysの強さ、または最初にprivate keyを持っている攻撃者について何も述べていません。それはまったく異なるものを指します:パスフレーズの制御に使用されるパスフレーズの強さRSA秘密鍵:
SSHキーパスフレーズは、キーが盗まれたときに少し時間を与える2次的なセキュリティ形式です。 RSAキーに強力なパスフレーズがある場合、ブルートフォースで推測するのに数時間かかる可能性があります。その余分な時間は、アカウントを持っているコンピューターにログインし、.ssh/authorized_keysファイルから古いキーを削除して、新しいキーを追加するのに十分なはずです。
基本的に-攻撃者がキーを保存しているコンピューターにアクセスできる場合、攻撃者はパスフレーズ(キーではなく)をブルートフォース攻撃する可能性があります。弱いパスフレーズを選択した場合は、推測できます。パスフレーズを推測すると、攻撃者はRSA秘密鍵を所有できるようになります。そして最後に、彼らがあなたの秘密鍵を持っている場合、彼らはあなたのためだけに暗号化されたメッセージを読むことができます。
編集済み:しかし、上記の引用は、強力なパスフレーズが攻撃者にブルートフォースで推測するのに数時間しかかからない可能性があるという重大なエラーにあります。本当に強力なパスフレーズは、他の人が指摘したように、推測するのに何年もかかるはずです。彼らが試みていた点は、パスフレーズが最も弱いリンクであるということです。質の悪いものを選択すると、簡単に危険にさらされる可能性があります。しかし、パスフレーズが65個のランダムな文字である場合、それらが説明するように推測することはできません。
はい、SSHキーファイルのセキュリティが壊れています。
https://latacora.micro.blog/the-default-openssh/
OpenSSHはデフォルトでMD5を使用してAESキーを作成し、SSHキーを保護します。ソルトMD5をキー導出関数(KDF)として使用しますが、それだけでは十分ではありません。
また、上記のリンクの説明: https://news.ycombinator.com/item?id=17682946