定数シードからの確定的な乱数出力です
出力を確定的にする定数シードがシード ルーチンで使用されている
説明
この欠陥は、定数シードが与えられると出力が確定的になる標準乱数発生器関数が使用された場合に発生します。
チェッカーは、以下の乱数発生器関数を使用してこの問題を検出します。
srand
、srandom
、initstate
などの C 標準ライブラリ関数RAND_seed
やRAND_add
などの OpenSSL 関数std::linear_congruential_engine<>::seed()
やstd::mersenne_twister_engine<>::seed()
などの C++ 標準ライブラリ関数 (およびこれらのクラス テンプレートのコンストラクター)
リスク
定数シードを使用した場合、乱数発生器関数は、プログラムが実行するたびに同じ出力を生成します。プログラムの動作がわかると、ハッカーはプログラムを中断できます。
例
結果情報
グループ: セキュリティ |
言語: C | C++ |
既定値: オフ |
コマンド ライン構文: RAND_SEED_CONSTANT |
影響度: Medium |
バージョン履歴
R2015b で導入