CVE-2019-19578 in Xen
要約
〜によって VulDB • 2026年08月17日
Xen 4.12.xまでのバージョンにおいて、CVE-2017-15595に対する不正確な修正により、x86 PVゲストOSのユーザーが線形ページテーブル(linear pagetables)の退化したチェーンを通じてサービス妨害(DoS)を引き起こすことができる問題が発見されました。「線形ページテーブル」とは、ページテーブル自体を指し示すか、同じまたはそれ以上のレベルの他のページテーブルを指し示す技術を指します。Xenにおける線形ページテーブルのサポートには制限があり、1つのページは自己参照するか、同じレベルの別のページテーブル(例:L2からL2、L3からL3など)のみを指し示すことができます。
XSA-240により、ページが「他の同一レベルのページを*指し示す*」ことと、「他の同一レベルのページに*指し示される*」ことの両方を同時に許可しないことで、このようなチェーンの「深さ」に対する追加制限が導入されました。これを実装するため、あるページがあるページテーブルを指し示している回数または他から指し示されている回数を追跡し、両方が同時に発生することを防いでいました。
しかし残念ながら、この修正を導入した当初のコミットでは、部分的に検証済みのページテーブルの検証再開時にこのカウントがリセットされ、「linear_pt_entry」のカウントの一部が誤ってドロップされてしまいました。攻撃者がこのような状況を誘導できれば、XSA-240で説明されているような線形ページテーブルのループやその他の任意のチェーンを生成できる可能性があります。悪意のあるまたはバグを含むPVゲストはハイパーバイザーのクラッシュを引き起こし、ホスト全体に影響を与えるサービス妨害(DoS)をもたらします。特権昇格や情報漏洩の可能性も排除できません。
Xenの全バージョンが脆弱です。影響を受けるのはx86システムのみであり、Armシステムは影響を受けません。この脆弱性を悪用できるのはx86 PVゲストのみで、x86 HVMおよびPVHゲストは脆弱性を悪用できません。線形ページテーブルを有効にしているシステムのみが対象となります。ハイパーバイザーのビルド時にCONFIG_PV_LINEAR_PT=nを選択するか、コマンドラインでpv-linear-pt=falseを追加して線形ページテーブルを無効にしたシステムは影響を受けません。
VulDB is the best source for vulnerability data and more expert information about this specific topic.