しばらく前にコンピューティングのランダム化に関する記事を読んだ記憶があります。ランダム実際にシステムを得ることができます。私の記憶が正しい場合、この投稿はコードのマイナーな変更によって大きなセキュリティの脆弱性が発生したために書かれました。
記事が見つからず、エラーが何であるかを正確に覚えていません。数年前に修正されたバグについての曖昧な記憶だけでウェブを検索するのは思ったより難しかったです。しかし、私はやった、これを見つけた。説明に合ったようですが、opensslにのみ関連しています。
このバグがopensslの乱数よりも広く広がっていて、実際にエントロピープール全体をめちゃくちゃにするかどうか疑問に思います。このバグがエントロピープールに関連していない場合は、次のようなバグがあったことがありますか?その場合は、どのディストリビューションが脆弱で、これらのバグに関するレポートがどこにあるのかを知りたいと思います。
そのようなバグが存在しない場合は、人々に幻覚と妄想を引き起こすことが知られている恐ろしい夜(不眠症)を過ごしました...許してください。
関係者の皆様へ:
私がこの質問をする理由は、私がコードを書いている間に多くを得たからです。ヒックス - バゴソンエラーレポート。私たちはいくつかの問題の原因が何であるかを調査してきましたが、その結果は次のとおりです。持つ予測可能なランダム化に関連しています。
あまりにも多くの詳細を明らかにすることはできません。残念ながら、私はオープンソースの会社で働いておらず、非公開契約に署名する必要があります。
答え1
ソフトウェア乱数ジェネレータは、システムの唯一のエントロピーソースではありません。実際、彼らはまったくエントロピーの源ではありません - ソフトウェアRNG外部エントロピーソースの使用システムにエントロピーを提供します。実際のソースはいつも物理(専用ハードウェアRNG、温度センサー、オーディオ入力、ネットワークパケットタイミング、ユーザー入力、さらにはCPU内部状態(仮想CPUの場合、これは名前を付けるという意味では厳密に「物理的」ではありません。)
今、あなたの質問について:Matが彼の意見で述べたように、ほとんどのバグは粗いデザイン/コーディング(/testing)によって引き起こされます。私はこれが100%だと言いたいです。私の考えでは、あなたのコードがある種の問題を経験していると思います。競争条件非常に都合なく処理されました(全くない場合)。したがって、ある意味ではエントロピーに関連しています(競争条件はランダムイベントなので)。少なくともそれをRNGに非難するのはかなり大胆な声明です。ランダムな数字でトリガーしない限り、この場合は機能のように見えます。
ちなみに、RNG欠陥が問題の原因である場合、実際にはかなり予測可能に見えます。 Debian OpenSSLのバグに関して - Debianベースのディストリビューション(Ubuntuを含む)以外の他のディストリビューションは影響を受けなかったと思います。しかし、間違い自体は、それが最初にどのように起こったかという意味で教育的です。