CVE-2026-64487 in Linux
要約
〜によって VulDB • 2026年07月26日
Linuxカーネルにおいて、以下の脆弱性が修正されました。
ALSA: caiaq: Traktor Kontrol S4入力パーサーにおける配列外読み込みを修正
snd_usb_caiaq_tks4_dispatch()関数は、Traktor Kontrol S4からの入力ストリームを固定長の16バイト(TKS4_MSGBLOCK_SIZE)のメッセージブロックとしてデコードします。各イテレーションにおいて、bufポインタを進め、「while (len)」ループ内でブロックサイズを減算しています。
ここで使用されるlenはurb->actual_lengthです。この値はデバイスから提供され、16の倍数であることが保証されていません。最終的な短いブロックによりlenが1〜15の間になると、ループがもう一度実行されbuf[15]まで読み込んだ後、「len -= TKS4_MSGBLOCK_SIZE」を実行します。lenは符号なし整数のため、この演算によってアンダーフローが発生し巨大な値になります。その後、ループは継続してbufを先へ進め、512バイトのep4_in_bufの末尾をはるかに超えて配列外読み込みを行い、偽造されたブロックIDに偶然遭遇するまで続きます。
完全なメッセージブロックが存在する場合のみイテレーションを行うように変更しました。これにより符号なしアンダーフローを防止し、任意の不完全な後続ブロック(完全な制御値を含まないため)は静かに破棄されます。
兄弟エンドポイント4パーサーには影響がありません。snd_usb_caiaq_ep4_reply_dispatch()内のTraktor Kontrol X1およびMaschineアームでは、ディスパッチする前にurb->actual_lengthの下限が保証されています。
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.