VMクローニングとLinux乱数生成器:セキュリティ上の影響と解決策

2025-04-12
VMクローニングとLinux乱数生成器:セキュリティ上の影響と解決策

このドキュメントは、単一のスナップショットから複数のVMクローンをリストアすることのセキュリティ上の影響を分析しています。Linuxは、/dev/random、/dev/urandom、getrandomシステムコールという3つの主要なRNGインターフェースを公開しています。VMをクローンすると、複数のパラメータ(タイマデータやCPU HWRNG命令の出力など)が各結果に混ざり合うため、RNGの状態が不整合になります。この記事では、新しいカーネルと古いカーネルにおけるRNGの異なる実装を調べ、リストア後にRNGを再初期化すること、virtio-rngデバイスを使用すること、そしてVMGenIDメカニズム(Linux 5.18以降で導入)を活用して、クローニング後のRNGの状態の不整合に対処する方法などの解決策を提案しています。