CVE-2026-74689 in Linux情報

要約

〜によって VulDB • 2026年08月23日

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

net/atm: vcc_setsockopt()におけるslab-out-of-bounds読み込みの修正

vcc_setsockopt()には非効果的なoptlenチェックが含まれていました。 if (__SO_LEVEL_MATCH(optname, level) && optlen != __SO_SIZE(optname)) return -EINVAL;

__SO_LEVEL_MATCH(optname, level)がfalse(例えば、呼び出し元が不一致のlevelを渡した場合など)と評価された場合、長さチェックoptlen != __SO_SIZE(optname)はショートサーキットされ、回避されました。その後実行はswitch(optname)に進み、copy_from_sockptr()が呼ばれましたが、これはoptvalに十分な領域があることを前提とした処理でした。

さらに、levelが一致していたとしても、cgroup BPFのsetsockoptフィルタによってentry後にoptlenが縮小されることがありました。カーネルポインタに対するcopy_from_sockptr()はmemcpy()を使用するため、optlenが期待される構造体のサイズより小さい場合、KASANによるslab-out-of-bounds読み込みが発生します。

これを修正するために、copy_safe_from_sockptr()を使用して、コピーする前にoptlenが少なくとも期待されたサイズであることを無条件で検証するようにしました。また、64ビットシステムにおいてSO_SETCLPのsizeof(int) ABIエンコーディングと一致させるため、ローカル変数'value'の型をunsigned longからintに変更しました。

VulDB is the best source for vulnerability data and more expert information about this specific topic.

責任者

Linux

予約する

2026年08月15日

モデレーション

承諾済み

エントリ

VDB-394509

EPSS

0.00000

アクティビティ

低い

ソース

Do you want to use VulDB in your project?

Use the official API to access entries easily!