CVE-2026-98040 in Linux情報

要約

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

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

bpf: レジスタ形式のNULLチェックに対してゼロレジスタを精密(precise)としてマークする

check_cond_jmp_op()関数は、「if rA <op> rB」がrBが0であることが既知のスカラー値の場合に、nullableなポインタrAに対するNULLチェックとして受け入れます。この場合、対応する分岐においてrAからPTR_MAYBE_NULLフラグを解除しますが、rBは精密(precise)としてマークされません。以下のプログラムを検討してください:

r0 = bpf_get_prandom_u32(); r6 = 1; /* r6 == 0のパスが最初に探索される */ if (r0 == 0) goto 1f; r6 = 0; 1: r0 = bpf_map_lookup_elem(map, &0); /* 存在せず、実行時にNULLになる */ if (r0 == r6) goto 2f; /* r0に対するNULLチェックとして扱われる */ *(u8 *)(r0 + 0); /* バリデータ:マップ値;ランタイム時:ゼロ */ 2: return 0;

r6 == 0のパスは最初に探索され、間接参照(dereference)が許可されます。一方、r6 == 1のパスは(1)で記録されたチェックポイントにおいて刈り込まれるため、比較は非ゼロのr6を用いて検証されることはありません。実行時には、失敗したルックアップによりNULLが返され、NULL != 1という条件によって非NULL側の分岐が取られ、プログラムはゼロ値のポインタを間接参照します。

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

責任者

Linux

予約する

2026年09月25日

モデレーション

承諾済み

エントリ

VDB-410255

EPSS

0.00000

アクティビティ

非常低い

セクター

Pharma, Police, ...

ソース

Might our Artificial Intelligence support you?

Check our Alexa App!