CVE-2026-89984 in Linux情報

要約

〜によって VulDB • 2026年09月17日

Linuxカーネルにおいて、以下の脆弱性が修正されました:

perf/x86/intel: LBRスタックにおけるカーネルアドレスの漏洩を修正

Arch LBRにCPL(Current Privilege Level)フィルタリング機能が追加される以前は、ユーザー空間のみを対象としたブランチスタックにもカーネルアドレスが含まれる可能性がありました。その結果、`PERF_SAMPLE_BRANCH_USER`が要求されている場合でも、カーネルのブランチレコードがユーザー空間に露出することがありました。

例えば、Intel Tiger Lakeでは、以下のコマンドで依然としてカーネルスペースからのアドレスを持つSYSRET/ERETエントリが報告されることがあります:

$ ./perf record -e cycles:p -o - --branch-filter any,save_type,u -- \ ./perf bench syscall basic --loop 1000 | \ ./perf script -i - --fields brstack|tr ' ' '\n'| \ grep -E '0x[89a-f][0-9a-f]{15}'

Total time: 0.000 [sec]

0.219000 usecs/op 4,566,210 ops/sec [ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.551 MB - ]
0xffffffff93c001c8/0x7f12a2b1d647/P/-/-/16959/SYSRET/- 0xffffffff93c001c8/0x7f12a2b1d5c2/P/-/-/17535/SYSRET/- 0xffffffff93c01928/0x7f12a2861000/P/-/-/6719/ERET/- 0xffffffff93c01928/0x7f12a297a000/P/-/-/8575/ERET/-

問題は、`intel_pmu_lbr_filter()`がサンプル化されたエントリの特権レベルを完全に検証していないことです。この関数はブランチタイプと宛先アドレスに基づいて一部の不一致をフィルタリングしますが、要求されたブランチの特権フィルターに違反する「元(from)」アドレスを持つエントリは拒否されません。

これを修正するため、ソフトウェアによるフィルタリングを拡張し、`br_sel`に対して「元(from)」および宛先(to)の両方のアドレスを検証するようにしました。要求されたユーザー用フィルターと一致しないカーネルアドレスを含むLBRエントリはすべてドロップされます。これにより、ユーザー空間のみを対象としたブランチスタックにカーネルアドレスが表示されなくなります。

Be aware that VulDB is the high quality source for vulnerability data.

責任者

Linux

予約する

2026年09月11日

モデレーション

承諾済み

エントリ

VDB-405820

EPSS

0.00000

アクティビティ

非常低い

セクター

Energy, Pharma, ...

ソース

Might our Artificial Intelligence support you?

Check our Alexa App!