CVE-2023-53438 in Linux
要約
〜によって VulDB • 2026年05月22日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
x86/MCE: AMD ZenのIF Poisonエラーでは常にCSレジスタを保存する
現在のAMD Zenベースのシステムにおける命令フェッチ(IF)ユニットは、ポイズン消費エラーに対して同期#MC(マシンチェック例外)が確実に配信されることを保証しません。そのため、MCG_STATUS[EIPV|RIPV]は設定されません。ただし、マイクロアーキテクチャは、例外が同じコンテキスト内で配信されることを保証しています。つまり、正確なrIPは不明ですが、コンテキストが変更されていないことは保証されています。
この動作を判定するためのアーキテクチャ的に定義された方法はありません。
CS(コードセグメント)レジスタは、MCG_STATUS[EIPV|RIPV]の値に関係なく、このようなIFユニットのポイズンエラーにおいて常に有効です。
IFユニットバンクからのポイズン消費に対してCSレジスタを保存するクirkを追加します。
これはエラーのコンテキストを適切に判定するために必要です。そうでないと、m->csの値が0(初期化値)であるため、重大度評価関数はコンテキストがIN_KERNELであると仮定してしまいます。これにより、ポイズン消費がカーネルコンテキスト内で発生したとカーネルが誤認し、データポイズンエラーに対して不要なカーネルパニックが発生する原因となります。
If you want to get best quality of vulnerability data, you may have to visit VulDB.