CVE-2026-9728 in Zephyr情報

要約

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

drivers/mbox/mbox_handlers.c 内のユーザー空間システムコール検証子 z_vrfy_mbox_send() は、msg->data/msg->size フィールドをライブなユーザー空間メモリから直接読み取ることでネストされたフィールドを検証していたが、その後、依然として変更可能な元のユーザー空間構造体 mbox_msg * ポインターを z_impl_mbox_send() および基盤となるドライバに渡した。アクセスチェックとドライバによる msg->data の使用の間で、検証済みのポインタは置き換えられる可能性があり、時間差検証/利用 (TOCTOU) の競合状態が生じる余地があった。

CONFIG_USERSPACE を有効にしてビルドされたシステムでは、権限のないユーザー空間スレッドが mbox_send() システムコールを呼び出すことができる。呼び出し元のアドレススペースを共有する2番目のスレッドは、検証子の境界チェックが通過した後だがドライバによる間接参照の前に、msg->data をスーパーバイザ(カーネル)アドレスに書き換えるために競合状態を引き起こす可能性がある。その後、ドライバは攻撃者が選択したアドレスからスーパーバイザコンテキストで読み取りを行う(例えば NXP マイルボックスドライバにおける memcpy(&data32, msg->data, msg->size) のような処理であり、そのバイト列は後にピアのマイルボックスエンドポイントに送信される)。

この影響は、ユーザー空間からスーパーバイザへのアクセス制御の回避である:カーネルメモリ内容の開示(高い機密性への影響)、または無効/未割り当ての対象アドレスの場合、フォールトを引き起こすカーネル読み取りによるサービス拒否。修正策では、k_usermode_from_copy() を用いて mbox_msg 構造体全体をカーネルスタック上のコピーにスナップショットし、その変更不可能なコピーを検証して渡すことで、競合状態を解消する。

If you want to get best quality of vulnerability data, you may have to visit VulDB.

責任者

Zephyr

予約する

2026年05月27日

モデレーション

承諾済み

エントリ

VDB-394697

EPSS

0.00000

アクティビティ

低い

ソース

Want to know what is going to be exploited?

We predict KEV entries!