CVE-2026-64458 in Linux情報

要約

〜によって VulDB • 2026年07月26日

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

mm/damon/ops-common: damon_hot_score() における極端な間隔の処理

ユーザー設定による極端(ゼロまたは非常に高い)モニタリング間隔の誤った扱いに起因する damon_hot_score() の3つの問題を修正します。

ユーザーがサンプリング間隔を0に設定すると、damon_hot_score() から呼び出される damon_max_nr_accesses() で除算ゼロが発生します。言うまでもなく、これは問題です。

ユーザーが集約間隔を0に設定した場合、関数は0を返します。セットアップにおける実際の最大 nr_acceses は1であるべきなので、これは誤りです。さらに悪いことに、damon_hot_score() が damon_max_nr_accesses() の戻り値を分母として使用しているため、その呼び出し元から別の除算ゼロを引き起こす可能性があります。

ユーザーが集約間隔を非常に高く設定すると、damon_hot_score() は [0, DAMOS_MAX_SCORE] の範囲外の数値を返す場合があります。この戻り値はサイズが DAMOS_MAX_SCORE+1 の regions_score_histogram 配列のインデックスとして使用されるため、境界外配列アクセスが発生します。

これらの問題は、以下のように比較的簡単に再現できます。ただし、sysfsへの書き込み権限が必要です。

# ./damo start --damos_action lru_prio --damos_quota_space 100M \ --damos_quota_interval 1s # cd /sys/kernel/mm/damon/admin/kdamonds/0 # echo 0 > contexts/0/monitoring_attrs/intervals/sample_us # echo 0 > contexts/0/monitoring_attrs/intervals/aggr_us # echo commit > state # dmesg [...]
[ 131.329762] Oops: divide error: 0000 [#1] SMP NOPTI
[...]
[ 131.336089] RIP: 0010:damon_hot_score+0x27/0xd0
[...]

damon_max_nr_accesses() で間隔がゼロの場合を明示的に処理することで、除算ゼロの問題を修正します。damon_hot_score() から戻る前に [0, DAMOS_MAX_SCORE] の境界適用を行うことで、配列の境界外アクセスを修正します。

この問題は Sashiko によって発見されました[1]。

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

責任者

Linux

予約する

2026年07月19日

モデレーション

承諾済み

エントリ

VDB-383250

EPSS

0.00180

アクティビティ

非常低い

ソース

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!