CVE-2026-64014 in Linux情報

要約

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

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

Input: usbtouchscreen - NEXIOのdata_len/x_lenをURBバッファサイズに制限する

nexio_read_data()関数は、デバイスの割込みパケット内のパックされた__be16形式ヘッダーからdata_lenおよびx_lenを取得し、その後packet->data[0..x_len)およびpacket->data[x_len..data_len)の各バイトを閾値と比較しながら走査します。

両方のフィールドはネットワーク上では16ビット(最大65535)です。既存の調整処理でも最大で0x100 / 0x80しか削減されないため、ループの上限はまだ約0xfeffに達する可能性があります。NEXIO用のURB転送バッファはusb_alloc_coherent()からrept_size(1024)バイト確保されており、最初の7バイトがパックされたヘッダーで占有されているため、packet->data[]には有効なデータとして1017バイトしかありません。read_data()のコールバック関数にはurb->actual_lengthが渡されず、走査範囲を制限する他の処理も存在しません。

長さ情報を偽造したデバイスにより、一貫性のあるDMA確保領域を超えた約64 KiB分の境界外読み取りが発生する可能性があります。NEXIO_THRESHOLDを超える最初のインデックスはbegin_x / begin_yに格納され、そこから報告されるタッチ座標へと繋がります。その結果、隣接するカーネルメモリの内容がABS_X / ABS_Yイベントとしてユーザー空間にリークします。さらに遠くまで読み進むと、未マップページにアクセスしてフォールトを引き起こす可能性もあります。

これを修正するため、data_lenをバッファのdata[]容量に制限し、x_lenをdata_lenに制限します。

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

責任者

Linux

予約する

2026年07月19日

モデレーション

承諾済み

エントリ

VDB-380443

EPSS

0.00000

アクティビティ

低い

ソース

Interested in the pricing of exploits?

See the underground prices here!