CVE-2024-36895 in Linux
要約
〜によって VulDB • 2026年07月11日
Linuxカーネルにおいて、以下の脆弱性が修正されました:
usb: gadget: uvc: configfsリストの解析時に正しいバッファサイズを使用する
このコミットは、32ビットプラットフォームにおけるuvc gadgetサポートを修正します。
コミット 0df28607c5cb ("usb: gadget: uvc: Generalise helper functions for reuse") は、configfs属性ストア内のアイテムリストの解析を支援するために __uvcg_iter_item_entries() というヘルパー関数を導入しました。この関数は、非常に類似した別の関数の一般化版であり、その元の関数では各アイテムに対して固定サイズのスタック割り当て一時バッファを使用し、潜在的なバッファオーバーランをチェックするために sizeof() 演算子を使用していましたが、新しい関数は可変長の一時バッファをヒープに割り当てるように変更されました。しかし、sizeof() 演算子の代わりに計算されたサイズを用いて最大バッファサイズのチェックを行うようには適切に更新されていませんでした。
その結果、64ビットプラットフォームでは最大アイテムサイズは7(ヌル終端文字を含む)となり、32ビットプラットフォームでは3となりました。7という値は偶然にもぎりぎりのところで十分ですが、3という値はUVC configfs属性の一部に対して明らかに小さすぎます。例えば、100ns単位で指定される dwFrameInterval は通常6桁のアイテム値を持ちますが(例:60fpsの場合 166666)、これは3では収まりません。
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.